Автор: Андрей Егоров
Snowflake Sink Connector для Apache Pulsar — это простой способ объединить возможности обмена сообщениями Apache Pulsar с мощной аналитикой Snowflake путем автоматической и непрерывной загрузки сообщений из темы Pulsar в таблицу Snowflake.
Соединитель объединяет Snowflake Kafka Connector, созданный Snowflake, с приемником Kafka Connect Adapter (KCA) Apache Pulsar. Коннектор Snowflake Kafka обеспечивает доступ к коду, созданному и оптимизированному людьми, знакомыми с нюансами Snowflake. Это первый готовый к производству коннектор, созданный с помощью KCA Sink и требующий Datastax Luna Streaming 2.8 или Apache Pulsar 2.9.
Для начала скачайте Snowflake Sink Connector с GitHub.
Попробуем разъем
Теперь давайте посмотрим, как настроить коннектор и запустить его в локальной тестовой среде. Предположу, что используется MacOS, но все команды легко адаптировать под другие операционные системы.
1. Настройте Снежинку
Если у вас уже есть экземпляр Snowflake или вы только что подписались на пробную версию, вы можете получить к нему доступ, используя URL-адрес вида «tenant_id.snowflakecomputing.com». Запомните этот URL, он понадобится вам позже для настройки.
Во-первых, давайте создадим открытый и закрытый ключи для использования с коннектором:
Получите открытый ключ:
Получите закрытый ключ:
Далее мы создадим новую базу данных, выполнив шаги из Документации по Snowflake:
- Войдите в экземпляр Snowflake, который вы хотите использовать для теста, под учетной записью администратора.
- Перейдите к рабочим листам.
- Выполните следующие команды от имени пользователя с правами sysadmin и
securityadmin
. Не забудьте поставить галочку «[x] All Queries» в верхней части рабочего листа:
Примечание. Вам потребуется изменить
‘PASTE_PUBLIC_KEY_FROM_STEPS_ABOVE’
в строке 42 фрагмента кода для вашей среды.
2. Подготовить конфиг для коннектора
Обратите внимание, что размеры пакетов, буферы, время ожидания и т. д. уменьшены, чтобы быстрее увидеть результат теста. Вы можете настроить их для использования в производстве.
Примечание. Вам потребуется изменить
tenant_id
в строке 17 и‘PASTE_PUBLIC_KEY_FROM_STEPS_ABOVE’
в строке 19 для вашей среды.
Коннектор Snowflake Sink поддерживает все свойства конфигурации коннектора Snowflake Kafka.
3. Подготовьте тему Apache Pulsar
Запустите Apache Pulsar локально:
Установите сохранение для пространства имен:
Установить схему темы:
4. Скачайте и запустите коннектор
5. Отправляйте сообщения в Pulsar
Теперь тема содержит 200 сообщений с заданной схемой JSON. Вы можете просмотреть сообщения в теме с помощью следующей команды:
6. Проверьте сообщения в Snowflake
Войдите в свой экземпляр Snowflake как pulsar_connector_user_1
с паролем, заданным ранее на этапе настройки Snowflake.
Под настроенной БД и схемой должна появиться новая таблица:
Предварительно просмотрите данные, чтобы увидеть, что сообщения были приняты Snowflake:
Доставка всех сообщений может занять несколько минут.
Как видите, настроить и запустить коннектор несложно. Если у вас есть какие-либо вопросы о Pulsar или соединителе Snowflake, свяжитесь с DataStax для бесплатной консультации, и наша команда поможет вам в нужном направлении.
Подпишитесь на DataStax на Medium, чтобы получать эксклюзивные публикации обо всем, что связано с Pulsar, Cassandra, потоковой передачей, Kubernetes и многим другим. Чтобы присоединиться к оживленному сообществу разработчиков со всего мира и оставаться в курсе данных, подпишитесь на DataStaxDevs в Твиттере.
Ресурсы
- GitHub: Коннектор-снежинка
- GitHub: коннектор Snowflake Kafka Connect
- Упростите переход с Kafka на Pulsar с поддержкой Kafka Connect
- DataStax Luna Streaming — дистрибутив Apache Pulsar
- Коннектор Snowflake для Kafka — Документация Snowflake
- Установка и настройка коннектора Kafka — документация Snowflake
- Четыре причины, почему Apache Pulsar необходим для современного стека данных