2016-10-19 4 views
0

Недавно я хочу хранить миллионы пар ключ/значение на жестком диске. Данные, как это,Каков наиболее эффективный способ хранения данных в моем случае?

  1. «Ключи» все строки, с различными длинами (можно использовать их хеши при необходимости)
  2. «Значения» все массивы целых чисел. И массивы имеют одинаковую длину (скажем, 500) и больше не изменятся.

И я хотел бы часто искать некоторые значения по ключам через python или R. Какие базы данных следует использовать с точки зрения поиска скорости и хранения? (например, mongodb, hdf5 или sql?) Спасибо!

+0

Ваш вопрос [** off topic **] (http://stackoverflow.com/help/on-topic) и слишком широкий –

ответ

0

Хорошо, если вы имеете дело только с key-value парами, то Mongo должен работать лучше всего для вас. Однако, если вам все еще понадобятся некоторые функции RDBMS, посмотрите на PostgreSQL 9.5/9.6, так как последняя версия Postgre поддерживает JSON безупречно, но не так хорошо, как Mongo.

Кроме того, если big-data является одной из ваших проблем, рассмотрите возможность использования некоторого кеширования с использованием Redis с любой из баз данных, перечисленных выше.

+0

Спасибо! Здесь представлены все массивы целых чисел с фиксированной длиной. Насколько Монго наиболее эффективно хранить это? Что делать, если я хочу изменить некоторые значения в массиве? – user112758

+0

Его в основном 'CRUD', не так ли? Таким образом, все базы данных это делают. Базы данных действительно очень важны для долгосрочного приложения. Дайте себе много времени на ИССЛЕДОВАНИИ, потому что вы хотите, чтобы все было стабильным позже. Рассмотрим сравнительный анализ каждой базы данных, которую вы считаете. Возможно, вам также придется внести изменения в структуру базы данных и разработать несколько раз, чтобы соответствовать оптимальности. – Pragun

Смежные вопросы