Запись в S3 через Kinesis Stream или Firehose

У меня постоянно происходят события, которые мне нужно перенести в S3. Я пытаюсь понять, использую ли я Kinesis Stream или Firehose. Я также хочу подождать несколько минут перед записью в S3, чтобы объект был достаточно заполнен.

Основываясь на чтении потока данных Kinesis, мне нужно создать аналитическое приложение, которое затем будет использоваться для вызова лямбды. Затем мне придется использовать лямбду для записи в S3. Или Kinesis Data Streams может как-то напрямую писать в лямбду? Я не смог найти ничего, что указывало бы на то же самое.

Пожарный шланг не заряжается по часам (пока есть стрим). Так что, пожарный шланг - лучший вариант для меня?


person curiousengineer    schedule 08.02.2021    source источник


Ответы (1)


Или Kinesis Data Streams может как-то напрямую писать в лямбду?

Потоки данных не могут писать напрямую в S3. Вместо этого Firehose может сделать следующее:

доставка потоковых данных в реальном времени в такие места назначения, как Amazon Simple Storage Service (Amazon S3), Amazon Redshift, Amazon Elasticsearch Service (Amazon ES), Splunk и любые пользовательские конечные точки HTTP или конечные точки HTTP, принадлежащие поддерживаемым сторонние поставщики услуг, включая Datadog, MongoDB и New Relic.

Более того, Firehose позволяет буферизовать записи перед записывая их в S3. Запись может происходить в зависимости от размера буфера или времени. В дополнение к этому вы можете обрабатывать записи, используя лямбда-функция перед записью в S3.

Таким образом, в совокупности кажется, что Firehose больше подходит для вашего варианта использования, чем потоки данных.

person Marcin    schedule 08.02.2021
comment
Спасибо. До сих пор пытаюсь понять, в каком случае шланг неисправен? Это просто сохранение данных и то, что в потоках мы можем выполнять прямые sql-запросы. Я прав в том, что, поскольку мне не нужны sql-запросы и мне не нужно хранить данные более 24 часов, Firehose также будет выходом из этого рассуждения? - person curiousengineer; 08.02.2021
comment
@curiousengineer FH не в реальном времени. Из-за буферизации псевдореального времени, что может быть неприемлемо во многих случаях использования. Мы также можем читать прямо из FH. Судя по вашему описанию, FH кажется лучшим выбором, чем DS. - person Marcin; 09.02.2021
comment
Спасибо. Закачиваю данные в S3, а потом по снежинке. А вообще-то лучше немного промедлить. На самом деле я хочу выпечки, которую предлагает пожарный шланг. Спасибо - person curiousengineer; 10.02.2021
comment
@curiousengineer Нет проблем. Рад, что смог помочь:-) - person Marcin; 10.02.2021