Интеграция каталога Databricks Unity с OneLake
В этом сценарии показано, как интегрировать внешние таблицы Delta каталога Unity в OneLake с помощью сочетаний клавиш. После выполнения этого руководства вы сможете автоматически синхронизировать внешние таблицы Delta каталога Unity с Microsoft Fabric lakehouse.
Необходимые компоненты
Перед подключением необходимо:
- Рабочая область Fabric.
- Lakehouse Fabric в рабочей области.
- Внешние таблицы каталога Unity Delta, созданные в рабочей области Azure Databricks.
Настройка подключения к облачному хранилищу
Сначала проверьте, какие расположения хранилища используются в Azure Data Lake Storage 2-го поколения (ADLS 2-го поколения) в таблицах каталога Unity. Это подключение к облачному хранилищу используется ярлыками OneLake. Чтобы создать облачное подключение к соответствующему расположению хранилища каталога Unity:
Создайте подключение к облачному хранилищу, используемое таблицами каталога Unity. Узнайте, как настроить подключение ADLS 2-го поколения.
После создания подключения получите идентификатор подключения, выбрав
"Параметры> управления подключениями" и "Параметры подключений>
Примечание.
Предоставление пользователям прямого доступа к хранилищу внешнего расположения в ADLS 2-го поколения не учитывает предоставленные разрешения или аудиты, поддерживаемые каталогом Unity. Прямой доступ будет обходить аудит, происхождение и другие функции безопасности и мониторинга каталога Unity, включая управление доступом и разрешения. Вы несете ответственность за управление прямым доступом к хранилищу через ADLS 2-го поколения и гарантирует, что у пользователей есть соответствующие разрешения, предоставленные через Fabric. Избегайте всех сценариев предоставления прямого доступа к записи на уровне хранилища для контейнеров, хранящие управляемые таблицы Databricks. Изменение, удаление или развитие любых объектов непосредственно через хранилище, которое изначально управляется каталогом Unity, может привести к повреждению данных.
Запустите записную книжку
После получения идентификатора облачного подключения интегрируйте таблицы каталога Unity в Fabric lakehouse следующим образом:
Импортируйте записную книжку синхронизации в рабочую область Fabric. Эта записная книжка экспортирует все метаданные таблиц каталога Unity из заданного каталога и схем в хранилище метаданных.
Настройте параметры в первой ячейке записной книжки для интеграции таблиц каталога Unity. API Databricks, прошедший проверку подлинности с помощью маркера PAT, используется для экспорта таблиц каталога Unity. Следующий фрагмент кода используется для настройки параметров источника (каталога Unity) и назначения (OneLake). Обязательно замените их собственными значениями.
# Databricks workspace dbx_workspace = "<databricks_workspace_url>" dbx_token = "<pat_token>" # Unity Catalog dbx_uc_catalog = "catalog1" dbx_uc_schemas = '["schema1", "schema2"]' # Fabric fab_workspace_id = "<workspace_id>" fab_lakehouse_id = "<lakehouse_id>" fab_shortcut_connection_id = "<connection_id>" # If True, UC table renames and deletes will be considered fab_consider_dbx_uc_table_changes = True
Запустите все ячейки записной книжки, чтобы начать синхронизацию таблиц каталога Unity Delta с OneLake с помощью сочетаний клавиш. После завершения записной книжки сочетания клавиш в разностных таблицах каталога Unity доступны в lakehouse, конечной точке аналитики SQL и семантической модели.
Планирование записной книжки
Если вы хотите выполнять записную книжку с регулярными интервалами, чтобы интегрировать таблицы delta каталога Unity в OneLake без ручной повторной синхронизации и повторного запуска, можно запланировать записную книжку или использовать действие записной книжки в конвейере данных в Фабрике данных Fabric.
В последнем сценарии, если вы планируете передать параметры из конвейера данных, назначьте первую ячейку записной книжки в качестве ячейки параметра переключателя и укажите соответствующие параметры в конвейере.
Другие вопросы
- В рабочих сценариях рекомендуется использовать Databricks OAuth для проверки подлинности и Azure Key Vault для управления секретами. Например, можно использовать служебные программы учетных данных MSSparkUtils для доступа к секретам Key Vault.
- Записная книжка работает с внешними таблицами Delta каталога Unity. Если для таблиц каталога Unity используется несколько расположений облачного хранилища, т. е. несколько ADLS 2-го поколения, рекомендуется запускать записную книжку отдельно по каждому облачному подключению.
- Управляемые таблицы Delta каталога Unity, представления, материализованные представления, потоковые таблицы и таблицы, не являющиеся разностными, не поддерживаются.
- Изменения схем таблиц каталога Unity, таких как добавление и удаление столбцов, отражаются автоматически в сочетаниях клавиш. Однако для некоторых обновлений, таких как переименование таблицы каталога Unity и удаление, требуется повторная синхронизация записной книжки или повторная запуск. Это считается параметром
fab_consider_dbx_uc_table_changes
. - Для написания сценариев использование одного уровня хранилища в разных вычислительных модулях может привести к непредвиденным последствиям. Не забудьте разобраться в последствиях при использовании различных вычислительных подсистем Apache Spark и версий среды выполнения.