Сохранение / извлечение структуры данных

Я реализовал суффиксное дерево в Python, чтобы сделать полнотекстовый - поиск, и он работает очень хорошо. Но есть проблема: индексированный текст может быть очень большим, поэтому мы не сможем сохранить всю структуру в ОЗУ.

enter image description here

ИЗОБРАЖЕНИЕ: Суффиксное дерево для слова БАНАНЫ (в моем сценарии представьте себе дерево в 100000 раз больше).

Итак, немного исследуя это, я нашел модуль pickle , отличный модуль Python для «загрузки» и «выгрузки» объектов из / в файлы, и угадайте, что? Он прекрасно работает с моей структурой данных.

Итак, сокращая длинную историю: какова была бы наилучшая стратегия для хранения и извлечения этой структуры на / с диска? Я имею в виду, что решением может быть хранение каждого узла в файле и загрузка его с диска всякий раз, когда это необходимо, но это не лучший вариант (слишком много обращений к диску).


Сноска: Хотя я обозначил этот вопрос как , язык программирования не является важной частью вопроса, а стратегия хранения / извлечения на диске действительно является основным вопросом.

11
задан juliomalegria 28 November 2011 в 18:16
поделиться