2011-11-29 3 views
0

Je développe la petite base de données, et j'ai déifié pour utiliser l'implémentation stx-btree pour stocker les données dans btree.stx-btree stocker sur le disque

Est-il possible de stocker stx-btree sur le disque?

Merci d'avance!

MISE À JOUR: J'ai besoin de maintenir le morceau de mémoire de btree et charger/enregistrer le noeud d'arbre requis quand c'est nécessaire.

Répondre

2

Je sais très peu de choses sur c ou C++ ou même sur btree mais j'ai vu cette question en l'examinant et googlé car il semblait intéressant! ...

Jetez un oeil à cette page GitHub:

https://github.com/fakechris/stx-btree-ondisk

--- Extensions --- 

Beyond the usual STL interface the B+ tree classes support some extra goodies. 

// Output the tree in a pseudo-hierarchical text dump to std::cout. This 
// function requires that BTREE_DEBUG is defined prior to including the btree 
// headers. Furthermore the key and data types must be std::ostream printable. 
void print() const; 

// Run extensive checks of the tree invariants. If a corruption in found the 
// program will abort via assert(). See below on enabling auto-verification. 
void verify() const; 

// Serialize and restore the B+ tree nodes and data into/from a binary image. 
// This requires that the key and data types are integral and contain no 
// outside pointers or references. 
void dump(std::ostream &os) const; 
bool restore(std::istream &is); 
+0

Qu'advient-il si le btree est trop grand? Je pense que ce ne sera pas assez de mémoire. J'ai besoin de tenir en mémoire le morceau de btree et de charger le noeud d'arbre requis quand c'est nécessaire. – Zheka

+0

@Zheka comme je l'ai dit - je n'ai aucune idée de C++ donc j'ai peur je ne peux pas vous aider avec celui-là ... désolé !!! – ManseUK

Questions connexes