Gibt es eine Open Source bekannte Implementierung der B+ Tree
Datenstruktur in Erlang?B + Baum Datenstruktur in Erlang
Antwort
Ich würde auf jeden Fall empfehlen, in die eleveldb
Anwendung zu suchen, wenn Sie wirklich einen B + Baum brauchen. Der Punkt ist, dass Sie Daten in Blättern eines Baumes, offline auf der Festplatte speichern möchten, da dies B + -Bäume normalerweise eine Option sind. Es gibt auch eine Variante in reinem Erlang von LevelDB namens hanoidb
, die ebenfalls sehr nett ist, geschrieben von Kresten Krab Thorup. Gleicher Einsatzbereich.
Wenn Sie In-Memory-Speicher benötigen, sollten Sie sich entweder ETS oder Mnesia ansehen (letzteres für die Verteilung). In Erlang sind dies die schnellsten Lösungen, da Sie den Vorteil haben, niemals auf die Festplatte zu stoßen. Dies trifft insbesondere dann zu, wenn Sie Standard-Schlüssel/Wert-Lookups für Ihre Daten durchführen können, ohne innerhalb des Transaktionskontextes in Mnesien zu laufen (dreckiges Lesen). Die typische Suchgeschwindigkeit beträgt dann 5-10 Nanosekunden.
Es gibt keine eigenständige Bibliothek, die ich kenne. Die CouchDB source code ist jedoch sehr gut lesbar und gut implementiert.
nur eine Alternative, wenn Sie nicht in Open-Source-Datenbanksysteme hacken wollen:
Chris Okasaki der rein funktionale Datenstrukturen können Sie einen kleinen Einblick geben, es selbst zu implementieren. B + Baum selbst ist nicht so kompliziert aus meiner Erfahrung.
Ich würde empfehlen, gb_trees zu verwenden, wenn Sie sowohl In-Memory-Speicher und etwas mehr Low-Level (in gewissem Sinne) als Ets und Mnesia wollen.
- 1. In der b-Baum-Datenstruktur, wann nimmt die Höhe ab?
- 2. Baum Datenstruktur Addnode
- 3. Postgresql Baum Datenstruktur
- 4. Trie vs B + Baum
- 5. B + Baum Einfügen Verständnis
- 6. Basic Array [] Baum Datenstruktur in Java
- 7. Java liest TXT-Datei in Baum Datenstruktur
- 8. Wann wählen Sie RB-Baum, B-Baum oder AVL-Baum?
- 9. B + Baum Druckelemente ist Reihenfolge
- 10. Erlang-B-Formel Sumation in php
- 11. Bestehende Implementierung von Btree oder B + Baum in Java
- 12. Was sind Splay-Baum, Rot-Schwarz-Baum, AVL-Baum, B-Baum und T-Baum?
- 13. Erlang bestellt und Schlüssel-Wert-Datenstruktur
- 14. Was ist eine B-Baum-Seite
- 15. Ist ein rot-schwarzer Baum meine ideale Datenstruktur?
- 16. Wie funktioniert die B-Baum-Indizierung in mysql?
- 17. Wie die Anzahl der Ebenen in einem B-Baum
- 18. Wie man einen B-Baum in Java visuell anzeigt?
- 19. Dateisystem auf der Basis B + Baum-Implementierung in C#
- 20. C# LINQ für Baum orientierte Datenstruktur der Klassen
- 21. Welche Java-Datenstruktur/Bibliothek verwenden Sie für einen Baum?
- 22. Was ist eine optimale Datenstruktur für einen Baum von Karten?
- 23. Eins-zu-Eins-Mapping-Datenstruktur (A, B) mit getKey (B) in O (1)?
- 24. Bereichsabfragen mit B-Bäumen und B + -Bäumen
- 25. Zustand in Erlang Digraphen
- 26. Wörterbuch Datenstruktur in R
- 27. Pickel und Python Datenstruktur
- 28. Anonyme Variablen in Erlang
- 29. Erlang: Wie implementiert man Erlang Listenverständnis?
- 30. Räumliche Datenstruktur für Spiele