2012-03-01 1 views
1

Existe-t-il un moyen de charger un magasin leveldb à partir d'un flux de données? Si je devais prendre le flux d'une instance leveldb et l'insérer dans une DLL sous la forme d'un flux de ressources manifeste, aurais-je un moyen de charger cette base de données plus tard lorsque je récupèrerais la ressource manifeste de ma DLL ? Essentiellement, je cherche un moyen de construire, enregistrer, et charger plus tard un leveldb sans jamais écrire dans un fichier physique sur le disque.Chargement leveldb du flux

Merci d'avance pour toute information utile. Raja.

+0

Je ne pense pas que vous puissiez le faire car lorsqu'un objet 'leveldb' est construit, il nécessite un chemin vers les données. Si les données sont dans un flux, il n'y a aucun moyen pour 'leveldb' de lire/écrire. Cependant, 'leveldb' est open source, donc si vous êtes bon en C/C++, vous pouvez modifier le code pour l'adapter à vos besoins. – Kiril

Répondre

0

Vous avez peut-être déjà compris cela depuis longtemps que vous avez demandé. Leveldb vous permet de remplacer l '"Environnement" de telle sorte que les lectures et les écritures n'ont pas besoin d'accéder à un fichier physique.

Vous pouvez consulter ce fichier:

http://code.google.com/p/leveldb/source/browse/helpers/memenv/memenv_test.cc

en particulier le DBTest, pour un exemple.