Встроенная поддержка качества данных для формата Iceberg (предварительная версия)
Встроенная поддержка Microsoft Purview для открытого табличного формата Apache Iceberg доступна в общедоступной предварительной версии. Клиенты Microsoft Purview, использующие Microsoft Azure Data Lake Storage (ADLS) 2-го поколения, Microsoft Fabric Lakehouse, Amazon Web Services (AWS) S3 и Google Cloud Platform (GCP) Google Cloud Storage (GCS), теперь могут использовать Microsoft Purview для проверки, управления и выполнения контроля работоспособности данных и оценки качества данных в ресурсах данных Iceberg.
Структура файлов Iceberg
Таблица Айсберга — это больше, чем просто коллекция файлов данных. Он включает различные файлы метаданных, которые отслеживают состояние таблицы и упрощают такие операции, как чтение, запись и эволюция схемы. Ниже приведено исследование критически важных компонентов, участвующих в таблице Айсберга. Файлы данных в таблице Iceberg обычно хранятся в столбцовых форматах, таких как Apache Parquet, Apache Avro или Apache Optimized Row Columnar (ORC). Эти файлы содержат фактические данные, с которыми пользователи взаимодействуют во время запросов.
Каталог айсберга
В верхней части находится каталог Iceberg, в котором хранится текущий указатель метаданных для каждой таблицы. Этот каталог позволяет отслеживать последнее состояние таблицы, ссылаясь на текущий файл метаданных.
Уровень метаданных
Уровень метаданных занимает центральное место в функциональных возможностях Айсберга и состоит из нескольких ключевых элементов:
- Файл метаданных: Этот файл содержит сведения о схеме, секционирования и моментальных снимках таблицы. На схеме s0 ссылается на snapshot, которая, по сути, является записью состояния таблицы в данный момент времени. Если существует несколько моментальных снимков, таких как s0 и s1, файл метаданных отслеживает и то, и другое.
- Список манифестов: Этот список указывает на один или несколько файлов манифеста. Список манифестов выступает в качестве контейнера ссылок на эти манифесты и помогает Айсбергу эффективно управлять тем, какие файлы данных следует читать или записывать во время различных операций. Каждый snapshot может иметь собственный список манифестов.
Уровень данных
На уровне данных файлы манифеста выступают в качестве посредника между метаданными и фактическими файлами данных. Каждый файл манифеста указывает на коллекцию файлов данных, предоставляя карту физических файлов, хранящихся в озере данных.
- Файлы манифеста. В этих файлах хранятся метаданные для группы файлов данных, включая количество строк, сведения о секции и пути к файлам. Они позволяют Айсбергу быстро обрезать определенные файлы и получать доступ к определенным файлам, что позволяет эффективно выполнять запросы.
- Файлы данных. Фактические данные находятся в этих файлах, которые могут быть в таких форматах, как Parquet, ORC или Avro. Iceberg упорядочивает файлы данных на основе секций, что позволяет оптимизировать производительность во время выполнения запроса, сводя к минимуму ненужные проверки данных.
Как это работает вместе
При выполнении такой операции, как запрос или обновление, Iceberg сначала ищет файл метаданных таблицы через каталог. Файл метаданных ссылается на текущий snapshot (или несколько моментальных снимков), который затем указывает на список манифестов. Список манифестов содержит ссылки на файлы манифеста, которые, в свою очередь, содержат список отдельных файлов данных. Эта иерархическая структура позволяет Айсбергу эффективно управлять большими наборами данных, обеспечивая согласованность транзакций, обеспечивая такие функции, как перемещение по времени и эволюция схемы.
Эта многоуровневая конструкция повышает производительность и масштабируемость пакетных и потоковых операций, так как осуществляется доступ только к необходимым файлам данных, а управление обновлениями осуществляется с помощью моментальных снимков, не затрагивая весь набор данных.
Данные айсберга в OneLake
Вы можете легко использовать данные в формате Айсберга в Microsoft Fabric без перемещения или дублирования данных. Вы можете использовать сочетания клавиш OneLake, чтобы напрямую указывать на уровень данных.
Данные айсберга хранятся в OneLake, написанном с помощью Snowflake или другого модуля записи Iceberg. OneLake виртуализирует таблицу как таблицу Delta Lake, обеспечивая широкую совместимость между подсистемами Fabric. Например, можно создать том в Snowflake и напрямую указать на него структуру Lakehouse. После создания таблицы в Fabric OneLake автосинхронизация гарантирует, что все обновления данных отражаются в режиме реального времени. Этот упрощенный процесс упрощает работу с данными Iceberg в Microsoft Fabric. Дополнительные сведения см. в документации по Snowflake.
Важно!
Данные Iceberg в AWS S3 и GCS также должны быть автоматически синхронизированы как разностные, чтобы курировать, управлять, а также измерять и отслеживать качество данных.
Качество данных для данных айсберга
Для всех пользователей, изначально увлажняющих данные в Айсберге (Parquet, ORC, Avro) в ADLS 2-го поколения или Fabric Lakehouse, необходимо просто конфицировать сканирование, указывающее на расположение каталога, в котором размещены каталоги данных и метаданных Айсберга. Выполните указанные ниже действия.
Настройте и запустите проверку в Схема данных Microsoft Purview.
Настройте dir (размещение данных и метаданных) в качестве ресурса данных и свяжите его с продуктом данных. Это создает набор данных Iceberg. Связывание ресурсов данных Iceberg с продуктом данных в Единый каталог Microsoft Purview. Узнайте , как связать ресурсы данных с продуктом данных.
В Единый каталог в разделе Управление работоспособностью выберите Представление качества данных, чтобы найти файлы Iceberg (ресурс данных) и настроить подключение к источнику данных.
3.1. Чтобы настроить подключение AdlsG2, выполните действия, описанные в документе о подключении DQ.
3.2. Чтобы настроить подключение Fabric OneLake, выполните действия, описанные в документе DQ для хранилища данных структуры.
Применяйте правила качества данных и выполняйте проверку качества данных для оценки качества данных на уровне столбцов и таблиц.
На странице Схема выбранного файла Iceberg (ресурса данных) выберите Импорт схемы , чтобы импортировать схему из источника данных файла Iceberg.
Перед выполнением задания профилирования или задания проверки качества данных перейдите на страницу Обзор файла Iceberg и в раскрывающемся меню Ресурс данных выберите Айсберг.
Профилирование и проверка качества данных
После завершения настройки подключения и выбора формата файла ресурса данных можно профилировать, создавать и применять правила, а также выполнять проверку качества данных в файлах открытого формата Iceberg. Следуйте пошаговому руководству, описанному в следующих документах:
Важно!
- Поддержка открытого формата Iceberg в функциях обнаружения, курирования, профилирования данных и сканирования качества данных теперь доступна в предварительной версии.
- Для профилирования данных и оценки качества данных необходимо получить и задать схему на странице Схема качества данных.
- Взаимодействие с обнаружением потребителей. Потребители не увидят схему в представлении ресурса данных, так как схема данных еще не поддерживает открытый табличный формат айсберга. Администратор по качеству данных сможет импортировать схему со страницы Схема качества данных.
Ограничения
Текущий выпуск поддерживает только данные, созданные в формате Iceberg с каталогом Apache Hadoop .
Путь Lakehouse и путь ADLS 2-го поколения
- В метаданных Iceberg хранится полный путь к данным и метаданным. Обязательно используйте полный путь для ADLS 2-го поколения и Microsoft Fabric Lakehouse. Кроме того, для пути Microsoft Fabric Lakehouse во время записи обеспечьте работу (WRITES, UPSERTS) с путями идентификатора.
abfss://c4dd39bb-77e2-43d3-af10-712845dc2179@onelake.dfs.fabric.microsoft.com/5e8ea953-56fc-49c1-bc8c-0b3498cf1a9c/Files/CustomerData
. - Файловая система— id и Lakehouse — идентификатор. Для выполнения DQ в Айсберге Microsoft Purview требуется абсолютный и не относительный путь. Для проверки убедитесь, что проверка путь к моментальным снимкам в качестве полных путей с полным полным именем (FQN).
Обнаружение схемы
- Карта данных имеет ограничение на невозможность обнаружения схемы айсберга. При проверке каталогов Iceberg в Fabric Lakehouse или ADLS 2-го поколения вы не сможете просмотреть схему. Однако схема получения DQ может вытянуть схему для курированного ресурса.
Рекомендации
- Если вы используете каталог SNOWFLAKE для формата Iceberg с хранилищем VOLUME в виде ADLS 2-го поколения, AWS S3 или GCP GCS, используйте сочетание клавиш Microsoft Fabric OneLake Table и выполните DQ как разностную таблицу. FYI: поддерживает только Айсберг с форматом файлов Parquet.
- Если вы используете ADLS для формата Iceberg с каталогом Hadoop, проверьте каталог напрямую, используйте обработчик DQ по умолчанию для формата Iceberg для DQ. FYI: поддерживает айсберг с форматом файлов Parquet, ORC, Avro.
- Если вы используете формат Snowflake для айсберга, вы можете указать хранилище VOLUME непосредственно на путь Microsoft Fabric Lakehouse и использовать таблицу OneLake, чтобы затем создать версию, совместимую с Delta, для DQ. FYI: поддерживает только Айсберг с форматом файлов Parquet.
- Если вы используете Microsoft Fabric Lakehouse для формата Iceberg с каталогом Hadoop, проверьте каталог Lakehouse напрямую, используйте подсистему DQ по умолчанию для формата Iceberg для DQ. FYI: поддерживает айсберг с форматом файлов Parquet, ORC, Avro.