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


Задача Azure Synapse Analytics

Область применения: среда выполнения интеграции SSIS SQL Server в Фабрика данных Azure

Задача Azure Synapse Analytics позволяет пакету служб SSIS копировать табличные данные в выделенный пул SQL Azure Synapse Analytics из файловой системы или Хранилища BLOB-объектов Azure. Для повышения производительности в задаче используется подход PolyBase, описанный в статье Стратегии и шаблоны загрузки хранилища данных SQL Azure. В настоящее время в качестве формата исходного файла данных поддерживается текст с разделителями в кодировке UTF-8. В процессе копирования из файловой системы данные сначала будут переданы на промежуточное хранение в Хранилище BLOB-объектов Azure, а затем в выделенный пул SQL. Поэтому требуется учетная запись хранилища BLOB-объектов Azure.

Примечание.

Диспетчер подключений службы хранилища Azure с типом службы Data Lake 2-го поколения не поддерживается.

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

Задача Azure Synapse Analytics входит в пакет дополнительных компонентов SQL Server Integration Services (SSIS) для Azure.

Чтобы добавить задачу Azure Synapse Analytics, перетащите ее с панели элементов служб SSIS на холст конструктора и дважды щелкните ее (или щелкните ее правой кнопкой мыши), а затем выберите команду Изменить, чтобы открыть диалоговое окно редактора задач.

На странице Общие настройте следующие свойства.

В свойстве SourceType указывается тип источника данных. Выберите один из следующих вариантов:

  • FileSystem: исходные данные находятся в локальной файловой системе.
  • BlobStorage: исходные данные находятся в хранилище BLOB-объектов Azure.

Ниже указаны свойства для каждого типа источника.

FileSystem

Поле Description
LocalDirectory Указывает локальный каталог с файлами данных для отправки.
Рекурсивно Указывает, выполнять ли рекурсивный поиск в подкаталогах.
FileName Указывает фильтр имен для выбора файлов с определенным именем. Например, MySheet*.xls* выберет такие файлы, как MySheet001.xls и MySheetABC.xlsx.
RowDelimiter Указывает символы, обозначающие конец строки.
ColumnDelimiter Указывает символы, обозначающие конец столбца. Например, | (вертикальная черта), \t (табуляция), ' (одинарная кавычка), " (двойная кавычка) и 0x5c (обратная косая черта).
IsFirstRowHeader Указывает, содержит ли первая строка каждого файла данных названия столбцов, а не фактические данные.
AzureStorageConnection Указывает диспетчер подключений службы хранилища Azure.
BlobContainer Задает название контейнера больших двоичных объектов, в который будут переданы локальные данные (и который будет использоваться для их ретрансляции в выделенный пул SQL Azure Synapse Analytics через PolyBase). Если контейнер не существует, он будет создан.
BlobDirectory Задает название каталога больших двоичных объектов (виртуальной иерархической структуры), в который будут переданы локальные данные (и который будет использоваться для их ретрансляции в выделенный пул SQL Azure Synapse Analytics через PolyBase).
RetainFiles Указывает, следует ли сохранить файлы, переданные в службу хранилища Azure.
CompressionType Указывает формат сжатия, используемый при передаче файлов в службу хранилища Azure. Сжатие не влияет на локальный источник.
CompressionLevel Указывает уровень сжатия, используемый в рамках формата сжатия.
SqlPoolConnection Указывает диспетчер подключений ADO.NET для выделенного пула SQL Azure Synapse Analytics.
TableName Указывает название целевой таблицы. Выберите существующую таблицу или создайте новую, выбрав пункт <Создать таблицу ...>.
TableDistribution Указывает метод распределения данных для новой таблицы. Применяется, если для TableNameуказано название новой таблицы.
HashColumnName Указывает столбец, используемый для распределения данных посредством хэш-таблицы. Применяется, если для TableDistribution указано значение HASH.

BlobStorage

Поле Description
AzureStorageConnection Указывает диспетчер подключений службы хранилища Azure.
BlobContainer Указывает имя контейнера больших двоичных объектов, в котором находится источник данных.
BlobDirectory Указывает каталог больших двоичных объектов (виртуальную иерархическую структуру), в котором находится источник данных.
RowDelimiter Указывает символы, обозначающие конец строки.
ColumnDelimiter Указывает символы, обозначающие конец столбца. Например, | (вертикальная черта), \t (табуляция), ' (одинарная кавычка), " (двойная кавычка) и 0x5c (обратная косая черта).
CompressionType Указывает формат сжатия, используемый для источника данных.
SqlPoolConnection Указывает диспетчер подключений ADO.NET для выделенного пула SQL Azure Synapse Analytics.
TableName Указывает название целевой таблицы. Выберите существующую таблицу или создайте новую, выбрав пункт <Создать таблицу ...>.
TableDistribution Указывает метод распределения данных для новой таблицы. Применяется, если для TableNameуказано название новой таблицы.
HashColumnName Указывает столбец, используемый для распределения данных посредством хэш-таблицы. Применяется, если для TableDistribution указано значение HASH.

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

На странице Столбцы необходимо настроить свойства типов данных для каждого исходного столбца.

На странице T-SQL отображается код T-SQL, используемый для загрузки данных из Хранилища BLOB-объектов Azure в выделенный пул SQL. Этот код создается автоматически на основе параметров конфигурации, выбранных на других страницах, и будет исполняться в ходе выполнения задачи. Вы можете вручную изменить созданный код T-SQL, если нужно, нажав кнопку Изменить . Чтобы позже вернуться к исходному коду (первоначально созданному автоматически), нажмите кнопку Сброс .