Преобразование данных с помощью действия Stored Procedure SQL Server в Фабрике данных Azure или Synapse Analytics
ОБЛАСТЬ ПРИМЕНЕНИЯ: Фабрика данных Azure Azure Synapse Analytics
Совет
Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !
Действия преобразования данных в конвейере Фабрики данных или Synapse позволяют преобразовать необработанные данные в прогнозы и аналитические сведения. Действие Stored Procedure — это одно из действий преобразования данных, которые поддерживает конвейер. Данная статья основана на материалах статьи о преобразовании данных, в которой приведен общий обзор преобразования данных и список поддерживаемых действий преобразования.
Примечание.
Если вы не знакомы с фабрикой данных Azure, сначала ознакомьтесь со статьей Введение в фабрику данных Azure и руководством Преобразование данных в облаке с помощью действия Spark в фабрике данных Azure. Дополнительные сведения о Synapse Analytics см. в статье Что такое Azure Synapse Analytics?
C его помощью можно вызвать хранимую процедуру в одном из следующих хранилищ данных вашего предприятия или на виртуальной машине Azure.
- База данных SQL Azure
- Azure Synapse Analytics
- База данных SQL Server. Если вы используете SQL Server, установите локальную среду выполнения интеграции на том же компьютере, на котором размещена база данных, или на отдельном компьютере, имеющем доступ к базе данных. Локальная среда выполнения интеграции — это компонент, который обеспечивает безопасное и управляемое подключение локальных источников данных или данных виртуальной машины Azure к облачным службам. Дополнительные сведения см. в статье Создание и настройка локальной среды выполнения интеграции.
Внимание
При копировании данных в базу данных SQL Azure или SQL Server можно настроить класс SqlSink в действии копирования для вызова хранимой процедуры с помощью свойства sqlWriterStoredProcedureName. Дополнительные сведения о свойствах см. в следующих статьях о соединителях: Перемещение данных в базу данных SQL Azure и из нее с помощью фабрики данных Azure и Перемещение данных в базу данных SQL Server и обратно на локальных компьютерах и виртуальных машинах Azure IaaS с помощью фабрики данных Azure. Вызов хранимой процедуры во время копирования данных в Azure Synapse Analytics с помощью операции копирования не поддерживается. Однако действие хранимой процедуры можно использовать для вызова хранимой процедуры в Azure Synapse Analytics.
При копировании данных из базы данных SQL Azure, SQL Server или Azure Synapse Analytics можно настроить в действии копирования SqlSource таким образом, чтобы хранимая процедура вызывалась для считывания данных из исходной базы данных с помощью свойства sqlReaderStoredProcedureName. Дополнительные сведения см. в статьях о соединителях Базы данных Azure SQL, SQL Server и Azure Synapse Analytics.
Если хранимая процедура имеет параметры выходных данных вместо использования действия хранимой процедуры, используйте действие поиска acitivty и script. Действие хранимой процедуры пока не поддерживает вызов SPs с параметром Output.
При вызове хранимой процедуры с выходными параметрами с помощью действия хранимой процедуры возникает следующая ошибка.
Сбой выполнения с sql server. Если вам нужна дополнительная поддержка, обратитесь в группу SQL Server. Номер ошибки SQL: 201. Сообщение об ошибке: процедура или функция "sp_name" ожидает параметр "@output_param_name", который не был указан.
Создание действия Stored Procedure с помощью пользовательского интерфейса
Чтобы использовать действие Stored Procedure в конвейере, выполните следующие действия:
Выполните поиск Stored Procedure в области "Действия" конвейера и перетащите действие Stored Procedure на холст конвейера.
Выберите новое действие Stored Procedure на панели холста, если оно еще не выбрано, и перейдите на вкладку Параметры, чтобы изменить сведения о нем.
Выберите существующую или создайте новую связанную службу для Базы данных SQL Azure, Azure Synapse Analytics или SQL Server.
Выберите хранимую процедуру и укажите параметры ее выполнения.
Сведения о синтаксисе
Ниже приведен формат JSON для определения действия хранимой процедуры:
{
"name": "Stored Procedure Activity",
"description":"Description",
"type": "SqlServerStoredProcedure",
"linkedServiceName": {
"referenceName": "AzureSqlLinkedService",
"type": "LinkedServiceReference"
},
"typeProperties": {
"storedProcedureName": "usp_sample",
"storedProcedureParameters": {
"identifier": { "value": "1", "type": "Int" },
"stringData": { "value": "str1" }
}
}
}
В следующей таблице описаны эти свойства JSON:
Свойство | Описание: | Обязательное поле |
---|---|---|
name | Имя действия. | Да |
описание | Текст, описывающий, для чего используется действие | No |
type | Для действия хранимой процедуры используется тип действия SqlServerStoredProcedure. | Да |
linkedServiceName | Ссылка на Базу данных SQL Azure, Azure Synapse Analytics или SQL Server, зарегистрированные в качестве связанной службы. Дополнительные сведения об этой связанной службе см. в статье Вычислительные среды, поддерживаемые фабрикой данных Azure. | Да |
storedProcedureName | Укажите имя хранимой процедуры, которую нужно вызвать. | Да |
storedProcedureParameters | Укажите значения для параметров хранимой процедуры. Используйте "param1": { "value": "param1Value","type":"param1Type" } , чтобы передать значения параметра и их тип, поддерживаемый источником данных. Если для параметра необходимо передать значение null, используйте синтаксис "param1": { "value": null } (все знаки в нижнем регистре). |
No |
Сопоставление типов данных параметров
Тип данных, указываемый для параметра, представляет собой тип внутренней службы, который сопоставляется с типом в вашем источнике данных. Сопоставления типов данных для источника данных описаны в документации по соединителям. Например:
- Azure Synapse Analytics
- Сопоставление типов данных Базы данных SQL Azure
- Сопоставление типов данных Oracle
- Сопоставление типов данных SQL Server
Связанный контент
Ознакомьтесь со следующими ссылками, в которых описаны способы преобразования данных другими способами: