Cross-Plattform-Embedded-Datenbank / Schlüssel-Wert-Speicher für C #
-
24-09-2019 - |
Frage
Ich bin auf der Suche nach einem schnellen, integrierbare Schlüssel / Wert-Speicher mit Cursor Semantik über Schlüssel Sammlungen (oder eine einfache integrierbare DB), dass ich in .NET verwenden können und Mono. Benötigen Sie es Open-Source zu sein, würde eine MIT oder Apache Stil Lizenz über eine GPL-Lizenz vorziehen. Nicht zu einer Bibliothek gegenüber, dass Bedürfnisse Bindungen geschrieben werden, solange Binärdateien beide sind für Windows und Linux.
Optionen in Betracht gezogen:
- SQLite - hat Bindungen und native Implementierung, aber Single-Thread und nicht so schnell
- Embedded InnoDB - keine .NET-Bindungen ich finden kann und es der GPLv2
- Berkley DB - keine .NET-Bindungen i finden
- Tokyo Cabinet - keine .NET-Bindungen i finden und problematisch zu bauen Fenster
- MadCow Memory-Mapped-Datenstrukturen - GPLv2
Gibt es eine Möglichkeit, besser als die oben, dass ich fehle, oder Bindungen für die oben i nicht kennen?
UPDATE : Gebrauchte Oracle offizielle BDB Bindungen mit 4.8 und 5.0 konnte aber nicht erhalten sie unter Mono arbeiten. Wir hatten auch einige andere Fragen (C # Treiber für BDB sind noch unreif). Schrieb ein BitCask inspiriert K / V Laden namens Firkin ( http://github.com/sdether/Firkin ) speichern und verwenden, dass nun statt.
Lösung
Eine schnelle Suche nach Berkeley DB Bindings für C # aufgedreht - Berkeley DB für .NET
Andere Tipps
i Abstimmung für Berkley DB. es ist sehr schnell und Wrapper ist gut. Früher habe ich es viel