Если у вас уже есть эти данные в структурах данных Python, предполагая, что вы не выполняете много индексирования в памяти (больше, чем очевидный индекс ключей словаря), вы действительно не хотите использовать реляционную базу данных - выВы будете платить значительную потерю производительности без какой-либо особой выгоды.
Вам просто нужно вытащить данные из пары «ключ-значение» из памяти, а не изменить ее формат.Вы должны посмотреть на хранилища ключевых значений, такие как BDB , Волдеморт , MongoDB или Scalaris (просто назвать несколько - некоторые другиевовлеченный и функциональный, чем другие, но все должны легко обрабатывать ваш набор данных), или для набора данных, который, по вашему мнению, может стать еще больше или сложнее, вы можете посмотреть на такие системы, как Cassandra , Riak или CouchDB (среди прочих).ВСЕ эти системы предложат вам значительно более высокую производительность по сравнению с реляционной базой данных и будут более точно сопоставлены с моделью данных в памяти.
Все это, разумеется, конечно, если ваш набор данных действительно может быть более производительным за счет использованияпреимущества реляционной базы данных (сложные отношения, множественные представления и т. д.), а затем используйте ее, но вам не следует использовать реляционную базу данных, если все, что вы пытаетесь сделать, это вывести свои структуры данных из памяти.
(Возможно также, что просто маршалинг / выборка ваших данных в сегментах и управление ими самостоятельно обеспечит более высокую производительность, чем реляционная база данных, если предположить, что ваш шаблон доступа сделал подкачку / вывод довольно редким событием. Это длинный путь, ноесли вы просто храните старые данные, и никто на самом деле не смотрит на них, вы можете просто выбросить их на диск.)