Это действительно зависит от того, что вы пытаетесь сделать. СУБД предназначена для реляционных данных , поэтому, если ваши данные являются реляционными, используйте один из различных вариантов SQL. Но, похоже, ваши данные больше ориентированы на хранилище значений ключей с очень быстрыми случайными операциями GET. Если это так, сравните тесты различных хранилищ ключей, сосредоточив внимание на скорости GET. Идеальное хранилище ключей-значений будет хранить или кэшировать запросы в памяти и иметь возможность обрабатывать многие запросы GET одновременно. Возможно, вы захотите создать свой собственный набор тестов, чтобы вы могли эффективно сравнивать случайные параллельные операции GET.
Зачем вам кластер? Размер каждого значения очень большой? Если нет, вам не нужен кластер для хранения миллиона записей. Но если вы храните большие блоки данных, это имеет значение, и вам может понадобиться что-то, что легко поддерживает чтение ведомых и / или прозрачное разбиение. Некоторые хранилища значений ключей ориентированы на документы и / или оптимизированы для хранения больших значений. Redis технически более эффективен для хранения для больших значений из-за затрат на индексацию, необходимых для быстрых GET, но это не обязательно означает, что он медленнее. Фактически, дополнительная индексация ускоряет поиск.
Вы единственный, кто действительно может ответить на этот вопрос, и я настоятельно рекомендую собрать собственный набор тестов, чтобы протестировать доступные варианты с фактическими сценариями использования. Данные, которые вы получите от этого, дадут вам больше понимания, чем что-либо еще.