AWS Lambda объявляет о встроенной поддержке событий Kafka в формате Avro и Protobuf
Сервис AWS Lambda теперь обеспечивает встроенную поддержку сопоставления источников событий (ESM) Apache Kafka в формате Avro и Protobuf, а также интеграцию для управления схемами с реестрами схем AWS Glue (GSR), Confluent Cloud (CCSR) и самоуправляемым реестром Confluent (SCSR). Это позволяет проверять схемы, а также фильтровать и обрабатывать события с помощью клиентских интерфейсов Kafka с открытым исходным кодом. Кроме того, клиенты могут использовать AWS Lambda Powertools для обработки событий Kafka без написания специального кода десериализации, что упрощает использование AWS Lambda для создания Kafka-приложений.
Клиенты Kafka применяют форматы Avro и Protobuf для эффективного хранения данных, быстрой сериализации и десериализации, поддержки эволюции схем и обеспечения совместимости между различными языками программирования. Они используют реестр схем для управления схемами, их эволюции и проверки, прежде чем данные поступают в конвейеры обработки. В прошлом при использовании этих форматов данных клиентам приходилось писать в функции Lambda собственный код для проверки, десериализации и фильтрации событий. С сегодняшнего дня Lambda обеспечивает встроенную поддержку Avro и Protobuf, а также интеграцию с GSR, CCSR и SCSR, что позволяет клиентам обрабатывать события Kafka с применением этих форматов данных без написания специального кода. Кроме того, клиенты могут оптимизировать затраты за счет фильтрации событий для предотвращения ненужных вызовов функций.
Данная функция является общедоступной во всех коммерческих регионах AWS, где AWS Lambda поддерживает ESM для Kafka, за исключением следующих регионов: Израиль (Тель-Авив), Азиатско-Тихоокеанский регион (Малайзия) и Канада запад (Калгари).
Чтобы начать работу, укажите конфигурацию реестра схем для имеющегося или нового сопоставления ESM для Kafka в API ESM, консоли AWS, AWS CLI, AWS SDK, AWS CloudFormation или AWS SAM. При желании можно настроить правила фильтрации, чтобы отбрасывать нерелевантные события в формате Avro или Protobuf перед вызовом функций. Чтобы создать собственную функцию на основе интерфейса Kafka ConsumerRecords с открытым исходным кодом, добавьте Powertools для AWS Lambda в качестве зависимости в свою Lambda-функцию. Подробнее см. документацию по ESM для Lambda и цены на AWS Lambda.