Лучший способ хранения, запроса и обновления 300M рядов данных
Вопрос
Я изо всех сил пытаюсь найти решение (предпочтительно DBAAS), на который я могу полагаться на хранение и запросить некоторые 300 м строк данных (примерно 100 ГБ).
рассматриваемые данные в значительной степени числовой.Существует также один «описание» столбца, которую я хотел бы выполнить полнотекстовый поиск.Есть пара колонн «категории», используемые для фильтрации.Я также хочу отфильтровать / заказывать поиск во многих отношениях (10+ разных индексов).
Нет необходимости делать сложные присоединения, поскольку данные в значительной степени денормализованы.Данные обновляются в значительной степени: около 50 м записей заменяются каждый день.
Я впервые попробовал с dynamodb, но он может поддерживать только до 5 индексов и не способен выполнять полнотекстовый поиск по разумной скорости.Я также считал бижур Google, но он предназначен для данных «только Append».Сейчас я рассматриваю Redshift, но я не уверен, как он сможет обрабатывать такое большое количество ежедневных обновлений.
Любой совет будет оценен!
Решение
Я закончил хранить данные в Dynamodb и делать ежедневные синхронизации с помощью Redshift.Я пробовал Redshift с 600 м пример данных на 4 узла кластера, и он работает чрезвычайно быстро.Это именно то, что мне нужно.