Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
ПРИМЕНИМО К:
Azure Data Factory
Azure Synapse Analytics
Совет
Data Factory в Microsoft Fabric — это следующее поколение Azure Data Factory с более простой архитектурой, встроенным ИИ и новыми функциями. Если вы не знакомы с интеграцией данных, начните с Fabric Data Factory. Существующие рабочие нагрузки ADF могут обновляться до Fabric для доступа к новым возможностям в области обработки и анализа данных, аналитики в режиме реального времени и отчетов.
Конвейер в рабочей области Azure Data Factory или Synapse Analytics обрабатывает данные в связанных службах хранилища с помощью связанных вычислительных служб. В нем содержится последовательность действий, каждое из которых выполняет определенную операцию обработки. В этой статье описывается активность Data Lake Analytics U-SQL, в рамках которой выполняется скрипт U-SQL на связанном вычислительном сервисе Azure Data Lake Analytics.
Создайте учетную запись Azure Data Lake Analytics перед созданием пайплайна с U-SQL действием Data Lake Analytics. Дополнительные сведения об Azure Data Lake Analytics см. в разделе Начало работы с Azure Data Lake Analytics.
Добавление действия U-SQL для Azure Data Lake Analytics в конвейер с пользовательским интерфейсом
Чтобы использовать действие U-SQL для Azure Data Lake Analytics в конвейере, выполните следующие действия:
Найдите Data Lake в области Действия конвейера и перетащите элемент U-SQL на холст конвейера.
Выберите новое действие U-SQL на холсте, если оно еще не выбрано.
Перейдите на вкладку учетной записиADLA, чтобы выбрать или создать связанную службу Azure Data Lake Analytics, которая будет использоваться для выполнения действия U-SQL.
Перейдите на вкладку Скрипт, чтобы выбрать или создать связанную службу хранилища, и путь в месте хранения, в котором будет размещен скрипт.
связанная служба Azure Data Lake Analytics
Вы создаете связанную службу Azure Data Lake Analytics для связывания Azure Data Lake Analytics вычислительной службы с рабочей областью Azure Data Factory или Synapse Analytics. Действие U-SQL в конвейере Data Lake Analytics относится к этой связанной службе.
В следующей таблице приведены описания универсальных свойств из определения JSON.
| Свойство | Описание: | Обязательное поле |
|---|---|---|
| тип | Свойству type необходимо присвоить значение AzureDataLakeAnalytics. | Да |
| accountName | Имя учетной записи Azure Data Lake Analytics. | Да |
| dataLakeAnalyticsUri | Azure Data Lake Analytics URI. | Нет |
| subscriptionId | идентификатор подписки Azure | Нет |
| resourceGroupName | имя группы ресурсов Azure | Нет |
Аутентификация субъекта-службы
Для связанного сервиса Azure Data Lake Analytics требуется аутентификация посредством служебного принципала для подключения к службе Azure Data Lake Analytics. Чтобы использовать аутентификацию с учетными данными основного пользователя, зарегистрируйте сущность приложения в Microsoft Entra ID и предоставьте ей доступ к сервисам Data Lake Analytics и Data Lake Store, которые он использует. Подробные инструкции см. в разделе Аутентификация между службами. Запишите следующие значения, которые используются для определения связанной службы:
- Идентификатор приложения
- ключ приложения.
- Идентификатор клиента
Предоставьте главной служебной учетной записи разрешение для Azure Data Lake Analytics с помощью мастера Add User Wizard.
Используйте аутентификацию с использованием главного объекта службы, указав следующие свойства:
| Свойство | Описание: | Обязательное поле |
|---|---|---|
| servicePrincipalId | Укажите идентификатора клиента приложения. | Да |
| servicePrincipalKey | Укажите ключ приложения. | Да |
| арендатор | Укажите сведения о клиенте (доменное имя или идентификатор клиента), в котором находится приложение. Его можно получить, наведите указатель мыши в правом верхнем углу портала Azure. | Да |
Пример: Аутентификация с помощью служебного принципала
{
"name": "AzureDataLakeAnalyticsLinkedService",
"properties": {
"type": "AzureDataLakeAnalytics",
"typeProperties": {
"accountName": "<account name>",
"dataLakeAnalyticsUri": "<azure data lake analytics URI>",
"servicePrincipalId": "<service principal id>",
"servicePrincipalKey": {
"value": "<service principal key>",
"type": "SecureString"
},
"tenant": "<tenant info, e.g. microsoft.onmicrosoft.com>",
"subscriptionId": "<optional, subscription id of ADLA>",
"resourceGroupName": "<optional, resource group name of ADLA>"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Дополнительные сведения о связанной службе см. в статье Службы, связанные с вычислениями.
U-SQL задача в Data Lake Analytics
Следующий фрагмент JSON определяет конвейер, включающий действие U-SQL Data Lake Analytics. Определение действия содержит ссылку на связанную службу Azure Data Lake Analytics, созданную ранее. Чтобы выполнить скрипт U-SQL в Data Lake Analytics, служба отправляет указанный вами скрипт в Data Lake Analytics, а необходимые входные и выходные данные определяются в скрипте для получения и вывода данных.
{
"name": "ADLA U-SQL Activity",
"description": "description",
"type": "DataLakeAnalyticsU-SQL",
"linkedServiceName": {
"referenceName": "<linked service name of Azure Data Lake Analytics>",
"type": "LinkedServiceReference"
},
"typeProperties": {
"scriptLinkedService": {
"referenceName": "<linked service name of Azure Data Lake Store or Azure Storage which contains the U-SQL script>",
"type": "LinkedServiceReference"
},
"scriptPath": "scripts\\kona\\SearchLogProcessing.txt",
"degreeOfParallelism": 3,
"priority": 100,
"parameters": {
"in": "/datalake/input/SearchLog.tsv",
"out": "/datalake/output/Result.tsv"
}
}
}
В следующей таблице описаны имена и описания свойств, относящихся к этому действию.
| Свойство | Описание: | Обязательное поле |
|---|---|---|
| имя | Имя действия в конвейере. | Да |
| описание | Описание того, что делает активность. | Нет |
| тип | Для действия Data Lake Analytics с помощью U-SQL, тип действия — DataLakeAnalyticsU-SQL. | Да |
| linkedServiceName | Связанная служба с Azure Data Lake Analytics. Чтобы узнать больше об этой связанной службе, см. статью Связанные службы вычислений. | Да |
| scriptPath | Путь к папке, содержащей скрипт U-SQL В имени файла учитывается регистр. | Да |
| scriptLinkedService | Связанная служба, которая связывает Azure Data Lake Store или Azure Storage, содержащую скрипт. | Да |
| степень параллелизма | Максимальное количество узлов, используемых одновременно для выполнения задания. | Нет |
| приоритет | Определяет, какие из всех заданий в очереди должны запускаться первыми. Чем меньше число, тем выше приоритет. | Нет |
| параметры | Параметры для передачи в скрипт U-SQL. | Нет |
| версия среды выполнения | Версия среды выполнения обработчика U-SQL, которую нужно использовать. | Нет |
| режим компиляции | Режим компиляции U-SQL. Может иметь одно из следующих значений: Semantic: выполнение только семантических проверок и необходимых проверок работоспособности. Full: выполнение полной компиляции, включая проверку синтаксиса, оптимизацию, создание кода и т. д. SingleBox: выполнение полной компиляции с параметром TargetType для SingleBox. Если не указать значение для этого свойства, сервер определит оптимальный режим компиляции. |
Нет |
См. SearchLogProcessing.txt для определения сценария.
Пример скрипта U-SQL
@searchlog =
EXTRACT UserId int,
Start DateTime,
Region string,
Query string,
Duration int,
Urls string,
ClickedUrls string
FROM @in
USING Extractors.Tsv(nullEscape:"#NULL#");
@rs1 =
SELECT Start, Region, Duration
FROM @searchlog
WHERE Region == "en-gb";
@rs1 =
SELECT Start, Region, Duration
FROM @rs1
WHERE Start <= DateTime.Parse("2012/02/19");
OUTPUT @rs1
TO @out
USING Outputters.Tsv(quoting:false, dateTimeFormat:null);
В приведенном выше примере входные и выходные данные скрипта определяются в параметрах @in и @out. Значения параметров @in и @out в сценарии U-SQL передаются службой динамически, с использованием раздела parameters.
Можно указать другие свойства, такие как degreeOfParallelism и приоритет, а также в определении конвейера для заданий, выполняемых в службе Azure Data Lake Analytics.
Динамические параметры
В примере определения конвейера параметрам in и out присвоено жестко заданные значения.
"parameters": {
"in": "/datalake/input/SearchLog.tsv",
"out": "/datalake/output/Result.tsv"
}
Вместо этого можно использовать динамические параметры. Например:
"parameters": {
"in": "/datalake/input/@{formatDateTime(pipeline().parameters.WindowStart,'yyyy/MM/dd')}/data.tsv",
"out": "/datalake/output/@{formatDateTime(pipeline().parameters.WindowStart,'yyyy/MM/dd')}/result.tsv"
}
В этом случае входные файлы по-прежнему берутся из папки /datalake/input, а выходные файлы создаются в папке /datalake/output. Имена файлов являются динамическими и зависят от времени начала окна, которое передается, когда активируется конвейер.
Связанный контент
Ознакомьтесь со следующими ссылками, в которых описаны способы преобразования данных другими способами: