Потоковая передача данных из одного потока Kinesis в несколько таблиц в Redshift
У меня есть данные, поступающие в потоки Kinesis от разных производителей. Данные должны быть преобразованы в несколько разных таблиц в зависимости от типа этих данных. Я пытаюсь прочитать лямбду из Kinesis Streams, преобразовать данные в разные таблицы и затем использовать Kinesis Firehose для пакетной обработки и копирования в Redshift.
Однако, поскольку Firehose может доставлять только одну таблицу Redhsift за раз, мне нужно иметь несколько запущенных экземпляров Firehose, равных количеству таблиц в моей схеме Redshift. Я вижу, что по умолчанию существует ограничение в 20 экземпляров Firehose на регион, и мне интересно, является ли это идеальным конвейером данных для того, чего я пытаюсь достичь.
1 ответ
Я разработал почти такой же конвейер данных, как ваш. Я получаю данные из кинезиса, преобразую данные после того, как он достигнет красного смещения. Все данные из 1 потока отправляются в одну главную таблицу в redshift. Затем я запускаю задание cron, которое преобразует данные в разные таблицы.
Если я сделал неверное предположение, пожалуйста, прокомментируйте, и я перефокусирую свой ответ.