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


Настройка хранилища данных в действии копирования

В этой статье описывается, как использовать действие копирования в конвейере данных для копирования данных из хранилища данных и в него.

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

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

Общие

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

Исходный код

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

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

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

  • Тип хранилища данных: выбор рабочей области.

  • Тип хранилища данных рабочей области: выберите хранилище данных из списка типов хранилища данных.

  • Хранилище данных. Выберите существующее хранилище данных из рабочей области.

  • Используйте запрос: выбор таблицы, запроса или хранимой процедуры.

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

      Снимок экрана: запрос на использование таблицы.

    • При выборе запроса используйте пользовательский редактор SQL-запросов для записи SQL-запроса, который извлекает исходные данные.

      Снимок экрана: запрос на использование запроса.

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

      Снимок экрана: запрос на использование хранимой процедуры.

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

  • Время ожидания запроса (минуты): время ожидания выполнения команды запроса с значением по умолчанию 120 минут. Если это свойство задано, допустимые значения находятся в формате интервала времени, например "02:00:00" (120 минут).

  • Уровень изоляции. Укажите поведение блокировки транзакций для источника SQL.

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

    Если выбрать динамический диапазон, параметр секции?AdfDynamicRangePartitionCondition диапазона требуется при использовании запроса с параллельным включенным. Пример запроса: SELECT * FROM <TableName> WHERE ?AdfDynamicRangePartitionCondition.

    Снимок экрана: динамический диапазон.

    • Имя столбца секционирования: укажите имя исходного столбца в целочисленном или типе даты и даты и времени (int, , smalldatetimesmallintdatedatetimebigintdatetime2илиdatetimeoffset), используемом секционированием диапазона для параллельной копии. Если значение не указано, то индекс или первичный ключ таблицы определяется автоматически и используется в качестве столбца секционирования.
    • Верхняя граница секции: максимальное значение столбца секционирования для разделения диапазона секций. Это значение используется для выбора шага секционирования, а не для фильтрации строк в таблице. Все строки в таблице или результатах запроса секционируются и копируются.
    • Нижняя граница секции: минимальное значение столбца секционирования для разделения диапазона секций. Это значение используется для выбора шага секционирования, а не для фильтрации строк в таблице. Все строки в таблице или результатах запроса секционируются и копируются.
  • Дополнительные столбцы: добавление дополнительных столбцов данных для хранения относительного пути или статического значения исходных файлов. Выражение поддерживается для последнего.

    Снимок экрана: дополнительные столбцы.

Назначение

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

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

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

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

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

  • Копирование параметров команд. Укажите свойства команды копирования.

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

  • Параметры таблицы: укажите, следует ли автоматически создавать целевую таблицу, если она отсутствует на основе исходной схемы. Вы можете выбрать "Нет " или "Автоматически создать таблицу".

  • Скрипт предварительного копирования: укажите SQL-запрос для выполнения перед записью данных в хранилище данных в каждом запуске. Это свойство используется для очистки предварительно загруженных данных.

  • Время ожидания пакетной вставки: время ожидания операции вставки пакетной службы до истечения времени ожидания. Допустимые значения находятся в формате интервала времени. Значение по умолчанию — "00:30:00" (30 минут).

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

прямое копирование

Инструкция COPY — это основной способ приема данных в таблицы хранилища. Команда COPY хранилища данных напрямую поддерживает Хранилище BLOB-объектов Azure и Azure Data Lake Storage 2-го поколения в качестве хранилищ исходных данных. Если исходные данные соответствуют критериям, описанным в этом разделе, используйте команду COPY для копирования непосредственно из исходного хранилища данных в хранилище данных.

  1. Исходные данные и формат содержат следующие типы и методы проверки подлинности:

    Поддерживаемый тип хранилища исходных данных Поддерживаемый формат Поддерживаемый тип проверки подлинности источника
    Хранилище BLOB-объектов Azure Текст с разделителями
    Parquet
    анонимная аутентификация;
    Проверка подлинности на основе ключа учетной записи
    Аутентификация SAS
    Azure Data Lake Storage 2-го поколения Текст с разделителями
    Parquet
    Проверка подлинности на основе ключа учетной записи
    Аутентификация SAS
  2. Можно задать следующие параметры формата:

    1. Для Parquet: тип сжатия может быть None, snappy или gzip.
    2. Для разделителя:
      1. Разделитель строк: при копировании текста с разделителями в хранилище данных с помощью прямой команды COPY укажите разделитель строк явным образом (\r; \n; или \r\n). Только если разделитель строк исходного файла равен \r\n, значение по умолчанию (\r, \n или \r\n). В противном случае включите промежуточное хранение для вашего сценария.
      2. Значение NULL остается в качестве значения по умолчанию или имеет значение пустой строки ("").
      3. Кодировка остается по умолчанию или имеет значение UTF-8 или UTF-16.
      4. Число строк пропускается по умолчанию или имеет значение 0.
      5. Тип сжатия может быть None или gzip.
  3. Если источник является папкой, установите флажок "Рекурсивно ".

  4. Время начала (UTC) и время окончания (UTC) в фильтре по последнему изменению, префиксу, включению обнаружения секций и дополнительным столбцам не указаны.

Сведения о приеме данных в хранилище данных с помощью команды COPY см. в этой статье.

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

промежуточное копирование

Если исходные данные не совместимы с командой COPY, включите копирование данных через промежуточное хранилище. В этом случае служба автоматически преобразует данные в соответствии с требованиями к формату данных команды COPY. Затем она вызывает команду COPY для загрузки данных в хранилище данных. Наконец, производится очистка временных данных из хранилища.

Чтобы использовать поэтапное копирование, перейдите на вкладку "Параметры " и выберите "Включить промежуточное копирование". Вы можете выбрать рабочую область для использования автоматического промежуточного хранилища в Fabric. Для внешних Хранилище BLOB-объектов Azure и Azure Data Lake Storage 2-го поколения поддерживаются как внешнее промежуточное хранилище. Сначала необходимо создать подключение Хранилище BLOB-объектов Azure или Azure Data Lake Storage 2-го поколения, а затем выбрать подключение из раскрывающегося списка, чтобы использовать промежуточное хранилище.

Обратите внимание, что необходимо убедиться, что диапазон IP-адресов хранилища данных разрешен правильно из промежуточного хранилища.

Сопоставление

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

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

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

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

Настройки

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

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

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

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

Имя Описание Значение Обязательное поле Свойство скрипта JSON
Тип хранилища данных Тип хранилища данных. Рабочая область Да /
Тип хранилища данных рабочей области Раздел для выбора типа хранилища данных рабочей области. Хранилище данных Да type
Хранилище данных Хранилище данных, которое вы хотите использовать. <хранилище данных> Да конечная точка
artifactId
Использование запроса Способ чтения данных из хранилища данных. •Таблицы
•Запрос
• Хранимая процедура
No (под typeProperties ->source)
• typeProperties:
 schema
 table
• sqlReaderQuery
• sqlReaderStoredProcedureName
Время ожидания запроса (минуты) Время ожидания выполнения команды запроса с значением по умолчанию — 120 минут. Если это свойство задано, допустимые значения находятся в формате интервала времени, например "02:00:00" (120 минут). timespan No queryTimeout
Уровень изоляции Поведение блокировки транзакций для источника. •Никакой
•Снимок
No isolationLevel
Параметр секции Параметры секционирования данных, используемые для загрузки данных из хранилища данных. •Никакой
•Динамический диапазон
No partitionOption
Имя столбца секции Имя исходного столбца в целочисленном или типе даты и даты и времени (int,, smalldatetimedatebigintdatetimesmallintdatetime2илиdatetimeoffset) используется секционированием диапазона для параллельной копии. Если значение не указано, то индекс или первичный ключ таблицы определяется автоматически и используется в качестве столбца секционирования. <Имя столбца секции> No partitionColumnName
Верхняя граница секции Максимальное значение столбца секционирования для разделения диапазона секций. Это значение используется для выбора шага секционирования, а не для фильтрации строк в таблице. Все строки в таблице или результатах запроса секционируются и копируются. <верхняя граница секции> No partitionUpperBound
Нижняя граница секции Минимальное значение столбца секционирования для разделения диапазона секций. Это значение используется для выбора шага секционирования, а не для фильтрации строк в таблице. Все строки в таблице или результатах запроса секционируются и копируются. <нижняя граница секции> No partitionLowerBound
Дополнительные столбцы Добавьте дополнительные столбцы данных для хранения относительного пути или статического значения исходных файлов. • Имя
•Ценность
No additionalColumns:
•имя
•ценность

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

Имя Описание Значение Обязательное поле Свойство скрипта JSON
Тип хранилища данных Тип хранилища данных. Рабочая область Да /
Тип хранилища данных рабочей области Раздел для выбора типа хранилища данных рабочей области. Хранилище данных Да type
Хранилище данных Хранилище данных, которое вы хотите использовать. <хранилище данных> Да конечная точка
artifactId
Таблицу Целевая таблица для записи данных. <имя целевой таблицы> Да схема
table
Копирование параметров команды Параметры свойства команды копирования. Содержит параметры значения по умолчанию. Значение по умолчанию:.
•Столбец
•Ценность
No copyCommandSettings:
defaultValues:
• columnName
• defaultValue
Параметр таблицы Следует ли автоматически создавать целевую таблицу, если ни одна из них не существует на основе исходной схемы. •Никакой
• Автоматическая создание таблицы
No tableOption:

• autoCreate
Скрипт предварительного копирования SQL-запрос для запуска перед записью данных в хранилище данных в каждом запуске. Это свойство используется для очистки предварительно загруженных данных. <скрипт предварительного копирования> No preCopyScript
Время ожидания пакетной службы Время ожидания завершения операции пакетной вставки до истечения времени ожидания. Допустимые значения находятся в формате интервала времени. Значение по умолчанию — "00:30:00" (30 минут). timespan No writeBatchTimeout
Отключение аналитики метрик производительности Служба собирает метрики для оптимизации производительности копирования и рекомендаций, которые вводят дополнительный доступ к главной базе данных. Выбор или отмена выбора No disableMetricsCollection:
true или false