Criei o GitDB, que usa um repositório do GitHub como um RDB serverless
(github.com/3x-haust)Estou criando uma biblioteca TypeScript chamada GitDB.
É um banco de dados no estilo RDB serverless que usa um repositório do GitHub como backend. Os dados são commitados dentro do repo como arquivos como manifest, mutation log e snapshot, e o histórico do Git se torna diretamente o histórico de alterações dos dados.
O que ele oferece:
- API de tabela: insert, upsert, select, deleteWhere
- Query no estilo SQL: SELECT, JOIN, GROUP BY, aggregate etc.
- select baseado em índice
- transaction
- armazenamento em plaintext / criptografado
- export para browser: pode ser usado em extensões e apps estáticos
- suporte a Node/CLI
O objetivo não é substituir um banco de dados comum como o Postgres, mas criar uma opção para “usar um único repo do GitHub como armazenamento de dados sem servidor de banco” em extensões, apps estáticos, agentes e ferramentas pequenas.
Como existem latency e rate limit da API do GitHub, ele não é adequado para hot OLTP ou realtime multi-writer. Em vez disso, foi pensado para casos como dados de apps de baixa frequência, demos e ferramentas internas, em que o histórico de mudanças e a simplicidade de deploy são mais importantes.
Ainda não há comentários.