Was ist der Unterschied zwischen Tokyo Cabinet und Kyoto Cabinet?
FAL Labs hat mehrere Tokyo-Produkte und-Kyoto-Produkte:
- Tokyo Cabinet und Kyoto Cabinet sind beide leichte Datenbank-Bibliotheken.
- Tokyo Tyrant und Kyoto-Tycoon sind beide leichte Datenbank-Server...
Kann mir jemand erklären den Unterschied zwischen Tokyo und Kyoto-Produkte?
InformationsquelleAutor der Frage Chun Ku Bot Tanaka | 2010-11-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Tokyo Cabinet ist mehr vollständig und stabil, Kyoto ist zu frisch noch (heute ist Dez 8 2010) und hat einige Probleme. Kyoto, geschrieben in C++, ist (viel) einfacher als in Tokyo (in C geschrieben), aber diese Einfachheit lassen eine Lücke. Die Leistung von Kyoto ist ein bisschen schlimmer als Tokio, arbeitet aber besser mit threads (zumindest die Dokumentation verspricht, dass).
Aus der offiziellen Dokumentation:
<< 2007, Tokyo Cabinet wurde entwickelt als Nachfolger von QDBM auf den folgenden Zwecken. Sie wurden erreicht und Tokyo Cabinet könnte ersetzen die konventionelle DBM-Produkten.
(...)
2009, Kyoto-Gehäuse wurde entwickelt, als ein weiterer Nachfolger von QDBM. Im Vergleich mit dem Geschwister-Produkt (Tokyo Cabinet), die folgende Vorteile wurden fortgesetzt. Doch die Leistung von Tokyo Cabinet ist höher als Kyoto-Schrank, zumindest im single-thread-Operationen. >>
Ich beides benutzt, aber ich immer noch lieber Tokio, weil ich ein problem hatte mit Kyoto: In Kyoto Cabinet-Datenbank mit Datei-Hash-Datenbank, wie Sie können, vermeiden Sie die Dateigröße erhöhen? und niemand konnte mir helfen. Ich weiß noch nicht, wie zu lösen.
In meiner persönlichen Erfahrung, ich fand Kyoto einfacher zu kompilieren und zu installieren und auch einfacher zu bedienen. Ich hatte große Probleme mit Tokyo-Bibliothek-Abhängigkeiten und Problemen zu verknüpfen, die native Bibliothek mit Java-Schnittstelle. Kyoto war alles gut und funktioniert beim ersten Versuch. Aber, wie ich schon sagte, habe ich das Gefühl, mehr Kontrolle über die Datenbank mithilfe von Tokio.
InformationsquelleAutor der Antwort Felipe
Tokyo Cabinet und Tyrannen sind LGPL und in C geschrieben Kyoto-Schrank-und Tycoon sind der GPLv3 und ist in C++ geschrieben.
Kyoto Tyrannen unterstützt abgelaufene Datensätze im Speicher, so kann es ersetzen memcached.
Sagt der Entwickler: Kyoto* ist nicht Nachfolger von Tokio*, aber es ist nur eine marketing-Strategie;
wenn Sie sind nicht gonna entwickeln Sie ein kommerzielles Produkt verwenden Kyoto. Es ist neuer und besser.
Und ich schlage vor, Sie Lesen Sie die developer ' s blog (Japanisch und Englisch]) und Lesen den header-Dateien gezielt (wenn Sie sind gonna verwenden der Bibliothek).
Glück.
InformationsquelleAutor der Antwort Jeff
Der wichtigste Unterschied zwischen den beiden in Bezug auf meine Anwendungsfälle ist, dass TC hat eine "Tabelle-Datenbank" beim KC hat Sie nicht.
Ja, Sie serialisieren können beliebige Daten in den string auf und speichern es als Eintrag Wert, aber dann sind Sie entweder nicht suchen, die von Wert überhaupt, oder müssen die Iteration über das gesamte dataset und Deserialisieren jedes Element, oder das Rad neu erfinden und manuell indizieren der Daten.
Tokyo Cabinet ist TDB bietet eine hervorragende Abfrage-Funktionen für geschachtelte Daten (Indizes, numerische und string-Vergleich, sogar reguläre Ausdrücke in "Felder"). Das Kyoto-Sache ist nur eine KV zu speichern; TC ist auch ein leistungsfähiges Dokumenten-orientierte Datenbank.
InformationsquelleAutor der Antwort Andy Mikhaylenko
Auch laut test, was ich Tat, das Protokoll von Kyoto ist nur HTTP-basiert - mehr öffnen,
aber langsamer als Binär-Protokoll von Tokyo Sache.
InformationsquelleAutor der Antwort Nick