Есть ли способ настроить Snowpipe для нескольких учетных записей хранилища Azure?

#azure #snowflake-cloud-data-platform

#лазурный #snowflake-облачная платформа для обработки данных

Вопрос:

Моя компания настроила несколько учетных записей хранилища (около 30) для приложения с одинаковым именем контейнера с тем же идентификатором клиента Azure (например, azure:// myaccount1.blob.core.windows.net/samecontainername, azure://myaccount2.blob.core.windows.net/samecontainername,azure://myaccount3.blob.core.windows.net/samecontainername)

В прошлом я создавал Snowpipes, и процесс был:

  1. Создайте очередь для учетной записи и контейнера
  2. Создайте сетку событий, связанную с этой учетной записью и контейнером, с назначением, установленным в качестве созданной очереди
  3. Создайте интеграцию уведомлений в Snowflake (в очередь, связанную с этой учетной записью и контейнером)
  4. Аутентификация приложения-участника службы, созданного Snowflake (если это первый раз для этого идентификатора клиента)
  5. Создайте этап, используя URL-адрес учетной записи и большого двоичного объекта (azure://myaccount2.blob.core.windows.net/samecontainername) и используя созданную интеграцию уведомлений
  6. Создайте канал, используя созданную интеграцию уведомлений, и скопируйте из созданного этапа в таблицу вариантов (для файлов Json)

Вопрос в том, есть ли способ упростить это, чтобы мне не пришлось выполнять шаги выше 30 раз? Каждая учетная запись содержит одно и то же имя контейнера

Ответ №1:

Похоже, что snowpipe не может иметь одну ИНТЕГРАЦИЮ УВЕДОМЛЕНИЙ для каждой очереди. Однако мы настроили инструкцию копирования из всех учетных записей в одну, не используемую для PROD, для которой мы настроили ИНТЕГРАЦИЮ УВЕДОМЛЕНИЙ со Snowflake, а затем КАНАЛ, использующий эту интеграцию