Banco de dados incorporado de plataforma cruzada/armazenamento de valor-chave para C#
-
24-09-2019 - |
Pergunta
Estou procurando um armazenamento de chave/valor rápido e incorporável com semântica do cursor sobre as coleções de chaves (ou um banco de dados incorporável simples) que posso usar no .NET e MONO. Precisa que seja de código aberto, preferiria uma licença de estilo MIT ou Apache sobre uma licença GPL. Não oposto a uma biblioteca que precisa ser escrita de ligações, desde que os binários estejam disponíveis para o Windows e o Linux.
Opções consideradas:
- SQLITE - tem ligações e implementação nativa, mas threadned e não tão rápido
- Incorporado Innodb - Não.
- Berkley DB - Não.
- Gabinete de Tóquio - Não.
- Estruturas de dados mapeadas de memória Madcow - GPLV2
Existe uma opção melhor do que o exposto que estou perdendo, ou encaderções para o acima que eu não conheço?
ATUALIZAR: Utilizou as ligações oficiais do BDB da Oracle com 4.8 e 5.0, mas não podiam fazê -las trabalhar com o Mono. Também tive outros problemas (os drivers C# para BDB ainda são imaturos). Escreveu uma loja K/V inspirada em bitcask chamada Firkin ( http://github.com/sdether/firkin ) armazenar e usar isso agora.
Solução
Uma pesquisa rápida por Berkeley DB Bindings por C# apareceu - Berkeley DB para .NET
Outras dicas
Eu voto em Berkley DB. é muito rápido e embrulho é bom. Eu usei muito