Вы должны принять решение, основываясь на том, как вы собираетесь получить доступ к данным. Учитывая скорость роста данных о потоках кликов, если вы хотите получить какую-либо значимую информацию о данных с разумным временем отклика и разумными затратами, вам следует использовать разделение данных. Подробнее об этом читайте здесь .
Чтобы иметь возможность надежно сделать это, вам придется использовать несколько потоков Kinesis.
Единственный сценарий, в котором вы бы предпочли не использование нескольких потоков связано с затратами. Но, учитывая, что вы будете использовать его в приложении clickstream, и если вы используете его на веб-сайте с активными пользователями, количество входящих событий можно легко использовать для эффективного использования сегментов.
Отказ от ответственности: личное мнение: я бы посоветовал вам переместить это в Kinesis Firehose, чтобы у вас была возможность начать загрузку данных в Redhift с минимальными изменениями процесса на более позднем этапе, в то же время также создавая резервную копию данных в S3 для холодного хранение / резервное копирование. Учитывая объем, Athena может быть не лучшим выбором для выполнения аналитических запросов к данным. Вы можете использовать внешние таблицы Redhift, в которых данные по-прежнему находятся на S3. Что касается стоимости самого экземпляра красного смещения, теперь вы можете приостановить кластер. Прочтите объявление здесь .
Чтобы обратиться к обновленной схеме архитектуры, которую вы добавили, вы можете полностью пропустить Glue. Kinesis может напрямую загружать данные в S3, и вы можете определять внешние таблицы с помощью спектра RedShift.
Общий подход заключается в загрузке данных в Redshift, а также их резервном копировании на S3. Затем на Redshift вы можете периодически удалять старые данные (скажем, больше года go). Это уравновешивает стоимость и производительность, поскольку запрос будет более производительным для данных, лежащих в Redshift.
Что касается преобразований, вы можете напрямую использовать Lambdas с Kinesis Firehose. Подробнее об этом здесь .
Edit 1: добавлено мнение об использовании Redshift и почему это будет полезно и рентабельно
Edit 2: добавлены подробности об упрощении новая предлагаемая архитектура.