Planowanie wykonywania pakietów usług SQL Server Integration Services (SSIS) wdrożonych na platformie Azure
Dotyczy:SQL Server
SSIS Integration Runtime w Azure Data Factory
Możesz zaplanować wykonywanie pakietów usług SSIS wdrożonych w katalogu SSISDB na serwerze usługi Azure SQL Database, wybierając jedną z metod opisanych w tym artykule. Można zaplanować przesyłkę bezpośrednio lub pośrednio jako część potoku usługi Azure Data Factory. Aby zapoznać się z omówieniem usług SSIS na platformie Azure, zobacz Przenieś i uruchom obciążenia usług SQL Server Integration Services do chmury.
Zarezerwuj paczkę bezpośrednio
Planowanie pakietu pośrednio w ramach potoku usługi Azure Data Factory
Planowanie pakietu za pomocą programu SSMS
W programie SQL Server Management Studio (SSMS) możesz kliknąć prawym przyciskiem myszy pakiet wdrożony w bazie danych Katalogu SSIS, SSISDB
, i wybrać Harmonogram, aby otworzyć okno dialogowe Nowy harmonogram. Aby uzyskać więcej informacji, zobacz Planowanie pakietów usług SSIS na platformie Azure przy użyciu programu SSMS.
Ta funkcja wymaga programu SQL Server Management Studio w wersji 17.7 lub nowszej. Aby uzyskać najnowszą wersję programu SSMS, zobacz Pobierz program SQL Server Management Studio (SSMS).
Planowanie pakietu za pomocą zadań elastycznych usługi SQL Database
Aby uzyskać więcej informacji na temat zadań elastycznych w usłudze SQL Database, zobacz Zarządzanie skalowalnymi w poziomie bazami danych w chmurze.
Warunki wstępne
Aby można było używać zadań elastycznych do planowania pakietów usług SSIS przechowywanych w bazie danych katalogu SSISDB na serwerze usługi Azure SQL Database, należy wykonać następujące czynności:
Zainstaluj i skonfiguruj składniki zadań Elastic Database. Aby uzyskać więcej informacji, zobacz Instalowanie zadań elastycznej bazy danych — omówienie.
Utwórz poświadczenia o zakresie bazy danych, których zadania mogą używać do wysyłania poleceń do bazy danych katalogu SSIS. Aby uzyskać dodatkowe informacje, zobacz CREATE DATABASE SCOPED CREDENTIAL (Transact-SQL).
Utwórz zadanie elastyczne
Utwórz zadanie przy użyciu skryptu Transact-SQL podobnego do skryptu pokazanego w poniższym przykładzie:
-- Create Elastic Jobs target group
EXEC jobs.sp_add_target_group 'TargetGroup'
-- Add Elastic Jobs target group member
EXEC jobs.sp_add_target_group_member @target_group_name='TargetGroup',
@target_type='SqlDatabase', @server_name='YourSQLDBServer.database.windows.net',
@database_name='SSISDB'
-- Add a job to schedule SSIS package execution
EXEC jobs.sp_add_job @job_name='ExecutePackageJob', @description='Description',
@schedule_interval_type='Minutes', @schedule_interval_count=60
-- Add a job step to create/start SSIS package execution using SSISDB catalog stored procedures
EXEC jobs.sp_add_jobstep @job_name='ExecutePackageJob',
@command=N'DECLARE @exe_id bigint
EXEC [SSISDB].[catalog].[create_execution]
@folder_name=N''folderName'', @project_name=N''projectName'',
@package_name=N''packageName'', @use32bitruntime=0,
@runinscaleout=1, @useanyworker=1,
@execution_id=@exe_id OUTPUT
EXEC [SSISDB].[catalog].[start_execution] @exe_id, @retry_count=0',
@credential_name='YourDBScopedCredentials',
@target_group_name='TargetGroup'
-- Enable the job schedule
EXEC jobs.sp_update_job @job_name='ExecutePackageJob', @enabled=1,
@schedule_interval_type='Minutes', @schedule_interval_count=60
Planowanie pakietu przy użyciu agenta programu SQL Server w środowisku lokalnym
Aby uzyskać więcej informacji na temat agenta programu SQL Server, zobacz zadania agenta programu SQL Server dla pakietów.
Wymaganie wstępne — tworzenie połączonego serwera
Aby można było użyć agenta programu SQL Server w środowisku lokalnym, aby zaplanować wykonywanie pakietów przechowywanych na serwerze usługi Azure SQL Database, należy dodać serwer usługi SQL Database do lokalnego programu SQL Server jako serwer połączony. W poniższym przykładzie użyto sterownika Microsoft OLE DB dla programu SQL Server.
Konfigurowanie serwera połączonego
-- Add the SSISDB database on your Azure SQL Database as a linked server to your SQL Server on premises EXEC sp_addlinkedserver @server='myLinkedServer', -- Name your linked server @srvproduct='', @provider='MSOLEDBSQL', -- Microsoft OLE DB Driver for SQL Server @datasrc='<server_name>.database.windows.net', -- Add your Azure SQL Database server endpoint @location='', @provstr='', @catalog='SSISDB' -- Add SSISDB as the initial catalog
Konfigurowanie poświadczeń serwera połączonego
Zastąp
<password>
prawidłowym hasłem.-- Add your Azure SQL Database server admin credentials EXEC sp_addlinkedsrvlogin @rmtsrvname = 'myLinkedServer', @useself = 'false', @rmtuser = 'myUsername', -- Add your server admin username @rmtpassword = '<password>' -- Add your server admin password
Konfigurowanie opcji serwera połączonego
EXEC sp_serveroption 'myLinkedServer', 'rpc out', true;
Aby uzyskać więcej informacji, zapoznaj się z Create Linked Servers i Linked Servers.
Tworzenie zadania agenta programu SQL Server
Aby zaplanować pakiet za pomocą SQL Server Agent na miejscu, utwórz zadanie z krokiem zadania, który wywołuje procedury przechowywane Katalogu SSIS [catalog].[create_execution]
, a następnie [catalog].[start_execution]
. Aby uzyskać więcej informacji, zobacz zadania agenta programu SQL Server dla pakietów.
W programie SQL Server Management Studio połącz się z lokalną bazą danych programu SQL Server, w której chcesz utworzyć zadanie.
Kliknij prawym przyciskiem myszy na węzeł SQL Server Agent, wybierz opcję Nowy, a następnie wybierz opcję Zadanie, aby otworzyć okno dialogowe Nowe zadanie.
W oknie dialogowym Nowe zadanie wybierz zakładkę Kroki, a następnie wybierz opcję Nowy, aby otworzyć okno dialogowe Nowy krok zadania.
W oknie dialogowym Nowy krok zadania wybierz
SSISDB
jako bazę danych .W polu polecenia wprowadź skrypt Transact-SQL podobny do skryptu pokazanego w poniższym przykładzie:
-- T-SQL script to create and start SSIS package execution using SSISDB stored procedures DECLARE @return_value int, @exe_id bigint EXEC @return_value = [YourLinkedServer].[SSISDB].[catalog].[create_execution] @folder_name=N'folderName', @project_name=N'projectName', @package_name=N'packageName', @use32bitruntime=0, @runincluster=1, @useanyworker=1, @execution_id=@exe_id OUTPUT EXEC [YourLinkedServer].[SSISDB].[catalog].[set_execution_parameter_value] @exe_id, @object_type=50, @parameter_name=N'SYNCHRONIZED', @parameter_value=1 EXEC [YourLinkedServer].[SSISDB].[catalog].[start_execution] @execution_id=@exe_id
Zakończ konfigurowanie i planowanie zadania.
Planowanie pakietu w ramach potoku usługi Azure Data Factory
Pakiet można zaplanować pośrednio przy użyciu wyzwalacza w celu uruchomienia potoku usługi Azure Data Factory, który uruchamia pakiet usług SSIS.
Aby zaplanować potok usługi Data Factory, użyj jednego z następujących wyzwalaczy:
Aby uruchomić pakiet usług SSIS w ramach potoku usługi Data Factory, użyj jednego z następujących działań:
Następne kroki
Zapoznaj się z opcjami uruchamiania pakietów usług SSIS wdrożonych na platformie Azure. Aby uzyskać więcej informacji, zobacz Uruchamianie pakietów SSIS w usłudze Azure.