Поделиться через


Настройка Lakehouse в действии копирования

В этой статье описывается, как использовать действие копирования в конвейере данных для копирования данных из и в Fabric Lakehouse. По умолчанию данные записываются в таблицу Lakehouse в V-Order, и вы можете перейти к оптимизации таблиц Delta Lake и V-Order для получения дополнительных сведений.

Поддерживаемые форматы

Lakehouse поддерживает следующие форматы файлов. Дополнительные сведения о параметрах с учетом форматирования см. в соответствующих статьях.

Поддерживаемая конфигурация

Для настройки каждой вкладки в действии копирования перейдите к следующим разделам соответственно.

Общие

Для конфигурации вкладки "Общие" перейдите к разделу "Общие".

Источник

Следующие свойства поддерживаются для Lakehouse на вкладке "Источник " действия копирования.

Снимок экрана: вкладка источника и список свойств.

Требуются следующие свойства:

  • Подключение. Выберите подключение Lakehouse из списка подключений. Если подключение не существует, создайте новое подключение Lakehouse, выбрав "Дополнительно " в нижней части списка подключений. Если вы используете команду Use dynamic content для указания вашей Lakehouse, добавьте параметр и укажите идентификатор объекта Lakehouse в качестве значения параметра. Чтобы получить идентификатор объекта Lakehouse, откройте Lakehouse в рабочей области, и после /lakehouses/в URL-адресе вы найдете идентификатор.

    Снимок экрана: идентификатор объекта Lakehouse.

  • Корневая папка: выберите таблицы или файлы, указывающие виртуальное представление управляемой или неуправляемой области в озере. Для получения дополнительной информации см. введение в Lakehouse.

    • Если выбрать таблицы:

      • Имя таблицы: выберите существующую таблицу из списка таблиц или укажите имя таблицы в качестве источника. Вы также можете выбрать "Создать" , чтобы создать новую таблицу.

        Снимок экрана: имя таблицы.

      • Таблица. При применении Lakehouse с схемами в соединении выберите существующую таблицу со схемой из списка таблиц или укажите таблицу с схемой в качестве источника. Вы также можете выбрать "Создать" , чтобы создать новую таблицу со схемой. Если имя схемы не указано, служба будет использовать dbo в качестве схемы по умолчанию.

        Снимок экрана, показывающий имя таблицы со схемой.

      • В разделе "Дополнительно" можно указать следующие поля:

        • Метка времени: укажите для запроса старого моментального снимка по метке времени.
        • Версия. Укажите запрос к более старой моментальному снимку по версии.
        • Дополнительные столбцы данных: добавьте дополнительные столбцы данных к относительному пути исходных файлов хранилища или статическому значению. Выражение поддерживается для последнего.

      Поддерживается Reader версии 1. Соответствующие поддерживаемые функции Delta Lake см. в этой статье.

      сопоставление столбцов Delta поддерживается при применении читателя версии 2 или читателя версии 3 с columnMapping в readerFeatures в таблице Lakehouse.

      Возможность сопоставления столбцов разностной таблицы позволяет более гибко изменять схему, что гарантирует, что изменения в структуре таблицы не нарушают рабочие процессы данных. С помощью сопоставления столбцов можно считывать данные из существующей таблицы Дельта Лэйк с delta.columnMapping.mode, установленным на name или id.

      векторы удаления поддерживаются при применении средства чтения версии 3 с deletionVectors в readerFeatures в таблице Lakehouse. Строки, которые мягко удалены, помечены в векторных файлах удаления и пропускаются при чтении таблицы Delta Lake.

    • Если выбрать "Файлы":

      • Тип пути к файлу: можно выбрать путь к файлу, путь с подстановочными знаками или список файлов в качестве типа пути к файлу. В следующем списке описана конфигурация каждого параметра:

        Снимок экрана: путь к файлу.

        • Путь к файлу: нажмите кнопку "Обзор" , чтобы выбрать файл, который требуется скопировать, или указать путь вручную.

        • Путь к файлу с подстановочными знаками: укажите папку или путь к файлу с подстановочными знаками в заданной неуправляемой области Lakehouse (в разделе "Файлы") для фильтрации исходных папок или файлов. Допустимые знаки подстановки: * (соответствует нулю или нескольким символам) и ? (соответствует нулю или одному символу). Используйте ^, чтобы экранировать, если в имени папки или файла есть подстановочный знак или этот символ экранирования.

          • Путь к папке с подстановочными знаками: путь к папке под заданным контейнером. Если вы хотите использовать подстановочный знак для фильтрации папки, пропустите этот параметр и укажите эти сведения в параметрах источника действия.

          • Имя файла-образца: Имя файла в заданной неуправляемой области Lakehouse (в разделе "Файлы") и в указанном пути к папке.

            Снимок экрана, показывающий путь файла с подстановочными символами.

        • Список файлов: указывает на копирование заданного набора файлов.

          • Путь к папке: указывает на папку, содержащую файлы, которые нужно скопировать.
          • Путь к списку файлов: указывает на текстовый файл, содержащий список файлов, которые требуется скопировать, один файл на строку, который является относительным путем к указанному пути к файлу.

          Снимок экрана: путь к списку файлов.

      • Рекурсивно: указывает, считываются ли данные рекурсивно из вложенных папок или только из указанной папки. При включении все файлы во входной папке и ее вложенных папках обрабатываются рекурсивно. Это свойство не применяется при настройке типа пути к файлу в качестве списка файлов.

      • Формат файла: выберите формат файла из раскрывающегося списка. Нажмите кнопку "Параметры", чтобы настроить формат файла. Сведения о параметрах различных форматов файлов см. в статьях в поддерживаемом формате .

      • В разделе "Дополнительно" можно указать следующие поля:

        • Фильтр по последнему изменению: файлы фильтруются на основе последних измененных дат. Это свойство не применяется при настройке типа пути к файлу в качестве списка файлов.
          • Время начала: файлы выбираются, если время последнего изменения больше или равно заданному времени.
          • Время окончания: файлы выбираются, если время последнего изменения меньше настроенного времени.
        • Включение обнаружения секций: для файлов, секционированных, укажите, следует ли анализировать секции из пути к файлу и добавлять их в качестве дополнительных исходных столбцов.
          • Корневой путь к партициям: Если обнаружение партиций включено, укажите абсолютный корневой путь, чтобы читать партицированные папки как столбцы данных.
        • Максимальное число одновременных подключений: указывает верхний предел одновременных подключений, установленных в хранилище данных во время выполнения действия. Указывайте значение только при необходимости ограничить количество одновременных подключений.

Назначение

Следующие свойства поддерживаются для Lakehouse на вкладке "Назначение " действия копирования.

Снимок экрана: вкладка назначения.

Требуются следующие свойства:

  • Подключение. Выберите подключение Lakehouse из списка подключений. Если подключение не существует, создайте новое подключение Lakehouse, выбрав "Дополнительно " в нижней части списка подключений. При использовании динамического контента, чтобы указать Lakehouse, добавьте параметр и укажите идентификатор объекта Lakehouse в качестве значения параметра. Чтобы получить идентификатор объекта Lakehouse, откройте Lakehouse в вашей рабочей области, и идентификатор будет следовать за /lakehouses/ в вашем URL-адресе.

    Снимок экрана: идентификатор объекта Lakehouse.

  • Корневая папка: выберите таблицы или файлы, указывающие виртуальное представление управляемой или неуправляемой области в озере. Дополнительные сведения см. в разделе Lakehouse introduction.

    • Если выбрать таблицы:

      • Имя таблицы: выберите существующую таблицу из списка таблиц или укажите имя таблицы в качестве назначения. Вы также можете выбрать "Создать" , чтобы создать новую таблицу.

        Снимок экрана: имя таблицы.

      • Таблица. При применении Lakehouse с схемами в соединении выберите существующую таблицу со схемой из списка таблиц или укажите таблицу с схемой в качестве назначения. Вы также можете выбрать "Создать" , чтобы создать новую таблицу со схемой. Если имя схемы не указано, служба будет использовать dbo в качестве схемы по умолчанию.

        Снимок экрана, показывающий имя таблицы со схемой.

      Примечание.

      Имя таблицы должно быть по крайней мере одним символом, без символов "/" или "\", без конечных точек, а также без начальных или конечных пробелов.

      • В разделе Advancedможно указать следующие поля:
        • Действия таблицы: укажите операцию для выбранной таблицы.

          • Добавление: добавление новых значений в существующую таблицу.

            • Включение секции. Этот выбор позволяет создавать секции в структуре папок на основе одного или нескольких столбцов. Каждое отдельное значение столбца (пара) — это новая секция. Например, "year=2000/month=01/file".
              • Имя столбца раздела: выберите из столбцов назначения в сопоставлении схемы при добавлении данных в новую таблицу. При добавлении данных в существующую таблицу с уже имеющимися секциями столбцы секций автоматически извлекаются из существующей таблицы. Поддерживаемые типы данных — строка, целое число, логическое значение и datetime. Формат учитывает параметры преобразования типов на вкладке "Сопоставление ".
          • Перезапись: перезаписать существующие данные и схему в таблице с помощью новых значений. Если эта операция выбрана, можно включить разбиение в целевой таблице.

            • Включение секции. Этот выбор позволяет создавать секции в структуре папок на основе одного или нескольких столбцов. Каждое отдельное значение столбца (пара) — это новая секция. Например, "год=2000/месяц=01/файл".
              • Название столбца раздела: выберите из целевых столбцов в карте схем. Поддерживаемые типы данных — строка, целое число, логическое значение и datetime. Формат учитывает параметры преобразования типов на вкладке "Сопоставление ".

            Он поддерживает функцию перемещения Delta Lake во времени. Перезаписавшаяся таблица содержит разностные журналы для предыдущих версий, доступ к которым можно получить в Lakehouse. Вы также можете скопировать предыдущую таблицу версий из Lakehouse, указав версию в источнике действия копирования.

        • Максимальное число одновременных подключений: верхний предел одновременных подключений, установленных в хранилище данных во время выполнения действия. Указывайте значение только при необходимости ограничить количество одновременных подключений.

      Поддерживается Writer версия 2. Соответствующие поддерживаемые функции Delta Lake см. в этой статье.

      сопоставление столбцов Delta поддерживается. Эта возможность позволяет более гибкой эволюции схемы, обеспечивая, чтобы изменения в структуре таблиц не нарушали рабочие процессы данных. Сопоставление столбцов позволяет:

      • Запись данных в существующую таблицу Delta Lake с установкой delta.columnMapping.mode на name или id.
      • Автоматически создайте таблицу с delta.columnMapping.mode для name, если целевая таблица не существует, а исходные столбцы включают специальные символы и пробелы.
      • Автоматически создать таблицу с delta.columnMapping.mode, назначив name, когда действие таблицы является перезаписать, и столбцы исходного набора данных включают специальные символы и пробелы.
    • Если выбрать "Файлы":

      • Путь к файлу: нажмите кнопку "Обзор" , чтобы выбрать файл, который требуется скопировать, или указать путь вручную.

        Снимок экрана: путь к файлам в папке назначения.

      • Формат файла: выберите формат файла из раскрывающегося списка. Выберите "Параметры", чтобы настроить формат файла. Сведения о параметрах различных форматов файлов см. в статьях в поддерживаемом формате .

      • В разделе "Дополнительно" можно указать следующие поля:

        • Поведение копирования: определяет поведение копирования, если источник является файлами из файлового хранилища данных. Вы можете выбрать Сгладить иерархию, Объединить файлы, Сохранить иерархию или Добавить динамическое содержимое в качестве поведения копирования. Конфигурация каждого параметра:

          • Уплощение иерархии: все файлы из исходной папки находятся на первом уровне в целевой папке. У целевых файлов есть автоматически созданные имена.

          • Объединить файлы: объединяет все файлы из исходной папки в один файл. Если указано имя файла, присвоенное объединенному файлу имя будет точно таким же. В противном случае это автоматически созданное имя файла.

          • Сохранение иерархии: сохраняет иерархию файлов в целевой папке. Относительный путь исходного файла к исходной папке идентичен относительному пути целевого файла к целевой папке.

          • Добавление динамического содержимого. Чтобы указать выражение для значения свойства, выберите " Добавить динамическое содержимое". Это поле открывает построитель выражений, где можно создавать выражения из поддерживаемых системных переменных, выходных данных действий, функций и пользовательских переменных или параметров. Дополнительные сведения о языке выражений см. в описании выражений и функций.

            Снимок экрана: поведение копирования.

        • Максимальное число одновременных подключений: верхний предел одновременных подключений, установленных в хранилище данных во время выполнения действия. Указывайте значение только при необходимости ограничить количество одновременных подключений.

        • Размер блока (МБ): укажите размер блока в МБ при записи данных в Lakehouse. Допустимое значение — от 4 до 100 МБ.

        • Метаданные. Задайте пользовательские метаданные при копировании в целевое хранилище данных. Каждый объект в массиве metadata представляет дополнительный столбец. name определяет имя ключа метаданных, а value указывает значение данных этого ключа. Если используется функция сохранения атрибутов, указанные метаданные будут объединены с метаданными исходного файла или перезаписаны ими. Допустимые значения данных:

          • $$LASTMODIFIED: зарезервированная переменная указывает на сохранение времени последнего изменения исходных файлов. Применяется только к источнику на основе файлов с двоичным форматом.

          • выражение

          • Статическое значение

            Снимок экрана: метаданные.

Картирование

Для конфигурации вкладки Сопоставление, если вы не применяете таблицу Lakehouse в качестве целевого хранилища данных, перейдите к Сопоставлению.

Если вы используете таблицу Lakehouse в качестве целевого хранилища данных, помимо настройки в сопоставлении, вы можете изменить тип данных для целевых столбцов. После выбора схемы импорта можно указать тип столбца в назначении.

Например, тип столбца PersonID в источнике является int, и его можно изменить на тип строки при сопоставлении с целевым столбцом.

Снимок экрана с отображением типа целевого столбца.

Примечание.

Изменение типа назначения в настоящее время не поддерживается, если исходный тип имеет десятичный тип.

Если в качестве формата файла выбран двоичный файл, сопоставление не поддерживается.

Настройки

Для настройки вкладки "Параметры" перейдите в раздел "Параметры".

Сводка таблицы

В следующих таблицах содержатся дополнительные сведения об операции копирования в системе Lakehouse.

Сведения об источнике

Имя Описание Значение Обязательное поле Свойство скрипта JSON
Соединение Раздел для выбора подключения. < ваше подключение к Lakehouse> Да идентификатор рабочей области
artifactId
Корневая папка Тип корневой папки. Таблицы
Файлы
Нет rootFolder (корневая папка):
Таблица или файлы
Имя таблицы Имя таблицы, которую требуется считывать. <имя таблицы> Да при выборе таблиц в корневой папке таблица
Таблица Имя таблицы со схемой, которую необходимо считывать при применении Lakehouse с схемами в качестве соединения. <ваша таблица с схемой базы данных> Да при выборе таблиц в корневой папке /
Для таблицы
Имя схемы Имя схемы. <имя вашей схемы>
(значение по умолчанию — dbo)
Нет (под source ->datasetSettings ->typeProperties)
схема
имя таблицы Название таблицы. <имя таблицы> Да стол
Timestamp Метка времени, используемая для запроса старого моментального снимка. <метка времени> Нет timestampAsOf
Версия Версия для запроса старого моментального снимка. <версия> Нет versionAsOf
Дополнительные столбцы Дополнительные столбцы данных для хранения относительного пути или статического значения исходных файлов. Выражение поддерживается для последнего. • Имя
•Ценность
Нет дополнительныеСтолбцы
•имя
•ценность
Тип пути к файлу Тип используемого пути к файлу. Путь к файлу
Путь к файлу с подстановочными знаками
Список файлов
Да при выборе файлов в корневой папке /
Путь к файлу Скопируйте путь к папке или файлу в исходном хранилище данных. <Путь к файлу> Да при выборе пути к файлу • путь к папке
•имя файла
Пути с подстановочными знаками Путь к папке с подстановочными знаками в исходном хранилище данных, настроенный для фильтрации исходных папок. <Пути с подстановочными знаками> Да, при выборе пути к файлу с маской • путь к папке с подстановочными знаками
• подстановочный знакFileName
Путь к папке Указывает на папку, содержащую файлы, которые нужно скопировать. <Путь к папке> Нет folderPath
Путь к списку файлов Указывает, что нужно скопировать заданный набор файлов. Наведите указатель на текстовый файл, содержащий список файлов, которые требуется скопировать, один файл на строку, который является относительным путем к настроенного пути. <путь к списку файлов> Нет Путь к списку файлов
Рекурсивно Обработайте все файлы во входной папке и ее вложенных папках рекурсивно или просто те, которые в выбранной папке. Этот параметр отключен при выборе одного файла. Выбор или отмена выбора Нет рекурсивный:
истина или ложь
Формат файлов Формат файла для исходных данных. Сведения о различных форматах файлов см. в статьях в поддерживаемом формате для получения подробных сведений. / Да при выборе файлов в корневой папке /
Фильтрация по последней дате изменения Файлы с последним измененным временем в диапазоне [время начала, время окончания) будут отфильтрованы для дальнейшей обработки.

Время применяется к часовой поясу UTC в формате yyyy-mm-ddThh:mm:ss.fffZ.

Это свойство можно пропустить, что означает, что фильтр атрибутов файла не применяется. Это свойство не применяется при настройке типа пути к файлу в качестве списка файлов.
Время начала
Время окончания
Нет modifiedDatetimeStart
изменённоеДатаВремяКонец
Включение обнаружения разделов Следует ли анализировать секции из пути к файлу и добавлять их в качестве дополнительных исходных столбцов. Выбрано или не выбрано Нет enablePartitionDiscovery:
true или false (по умолчанию)
Корневой путь раздела Абсолютный корневой путь секционирования для чтения секционированных папок в виде столбцов данных. <корневой путь вашего раздела> Нет partitionRootPath
Максимальное число одновременных подключений Верхний предел одновременных подключений, установленных для хранилища данных при выполнении действия. Значение необходимо только в том случае, если требуется ограничить одновременные подключения. <максимальное число одновременных подключений> Нет maxConcurrentConnections

Сведения о назначении

Имя Описание Значение Обязательное поле Свойство скрипта JSON
Соединение Раздел для выбора подключения. < ваше подключение к Lakehouse> Да идентификатор рабочего пространства
идентификатор артефакта
Корневая папка Тип корневой папки. Таблицы
Файлы
Да rootFolder:
Таблица или файлы
Имя таблицы Имя таблицы, в которую требуется записать данные. <имя таблицы> Да при выборе таблиц в корневой папке стол
Таблица Имя таблицы со схемой, в которую необходимо записать данные при применении Lakehouse с схемами в качестве соединения. <ваша таблица со схемой> Да при выборе таблиц в корневой папке /
Для таблицы
Имя схемы Имя схемы. <имя схемы>
(значение по умолчанию — dbo)
Нет (под sink ->datasetSettings ->typeProperties)
схема
имя таблицы Название таблицы. <имя таблицы> Да стол / таблица
Действие таблицы Добавьте новые значения в существующую таблицу или перезаписать существующие данные и схему в таблице с помощью новых значений. Добавление
Перезапись
Нет опция действия в таблице
Добавить или перезаписать схему
Включение секций Этот выбор позволяет создавать секции в структуре папок на основе одного или нескольких столбцов. Каждое отдельное значение столбца (пара) — это новая секция. Например, "год=2000/месяц=01/файл". Выбрано или не выбрано Нет Опция разбиения:
PartitionByKey или None
Столбцы секционирования Целевые столбцы в сопоставлении схем. <столбцы разделов> Нет список имен разделов
Путь к файлу Запись данных в путь к папке или файлу в целевом хранилище данных. <Путь к файлу> Нет • путь к папке
•имя файла
Формат файлов Формат файла для целевых данных. Сведения о различных форматах файлов см. в статьях в поддерживаемом формате для получения подробных сведений. / Да при выборе файлов в корневой папке /
Поведение копирования Поведение копирования, определенное для случаев, когда источником являются файлы из файлового хранилища. Плоская иерархия
Слияние файлов
Сохранение иерархии
Добавление динамического содержимого
Нет copyBehavior:
• FlattenHierarchy
• MergeFiles
• СохранитьИерархию
Максимальное число одновременных подключений Верхний предел одновременных подключений, установленных для хранилища данных при выполнении операции. Указывайте значение только при необходимости ограничить количество одновременных подключений. <максимальное число одновременных подключений> Нет максимальное количество одновременных подключений
Размер блока (МБ) Размер блока в МБ, используемый для записи данных в Lakehouse. Допустимое значение — от 4 до 100 МБ. <Размер блока> Нет blockSizeInMB
Метаданные Настраиваемый набор метаданных при копировании в место назначения. $$LASTMODIFIED
•Выражение
• Статическое значение
Нет метаданные