Представьте, что вы требуете, чтобы у вас было 3 огромные таблицы (структурированные данные), скажем, по 30 миллиардов строк в каждой (общий размер 4 ТБ), и многим вашим одновременным пользователям (которые являются параллельными потоками os на машинах с удаленной локальной сетью) потребуется прочитать часть данные с помощью запросов SELELCT WHERE GROUPBY и высокой одновременности, скажем, 10 000 одновременных чтений одновременно, а также пользователи должны вставлять (не обновлять) данные в эти таблицы с высокой степенью одновременности, например 2000 одновременных писателей (по всей локальной сети центра обработки данных) , Пользователи хотели бы читать и вставлять как можно быстрее из этого хранилища, где каждое чтение и запись будет происходить в диапазоне от мс до 1 секунды.
Какие технологии вы рекомендуете для удовлетворения такого требования? Есть ли какое-либо хранилище данных или хранилище значений ключей, которые могли бы сделать это? Облако не вариант.
Некоторые разъяснения:
Пользователи НЕ должны видеть данные сразу, и возможная последовательность приемлема. Доступ к данным осуществляется через любой драйвер, который может предоставить хранилище, и пользователи снова становятся потоками, работающими на удаленных компьютерах центра обработки данных. Запросы в основном похожи на SELECT WHERE GROUPBY.
Данные представлены в табличном формате, и каждая строка занимает около 60 байтов.
Нет облачного варианта, где я не могу использовать DynamoDB или аналогичные решения. Я должен иметь возможность разместить его внутри в центре обработки данных.
Все данные таблиц могут быть прочитаны все время, а модель использования непредсказуема. Нет соединения или супер длинный запрос. DR не требуется, но необходим разумный HA, но он не должен быть модным. Каждый читатель получает пакеты строк, основанные на выражении where и строках, которые на самом деле не связаны. Возможно, мы можем иметь фиксированную длину для каждой строки, но я надеюсь, что уровень хранилища будет беспокоиться об этом.
Кроме того, моя самая большая проблема - все те одновременные записи, которые происходят с одновременными чтениями.
Ваше понимание этого высоко ценится.
И еще, у меня есть три из этих таблиц с каждыми 30 миллиардами строк, содержащих разные типы объектов