Eseguire pacchetti nel servizio Integration Services (SSIS) Scale OutRun packages in Integration Services (SSIS) Scale Out

Dopo aver distribuito i pacchetti nel server Integration Services, è possibile eseguirli in Scale Out usando uno dei metodi seguenti:After you deploy packages to the Integration Services server, you can run them in Scale Out by using one of the following methods:

Eseguire i pacchetti con la finestra di dialogo Esegui pacchetto in Scale OutRun packages with the Execute Package in Scale Out dialog box

  1. Aprire la finestra di dialogo Esegui pacchetto in Scale Out.Open the Execute Package In Scale Out dialog box.

    In SQL Server Management StudioSQL Server Management Studio connettersi al server di Integration Services.In SQL Server Management StudioSQL Server Management Studio, connect to the Integration Services server. In Esplora oggetti espandere l'albero per visualizzare il nodo in Cataloghi di Integration Services.In Object Explorer, expand the tree to display the nodes under Integration Services Catalogs. Fare clic con il pulsante destro del mouse sul nodo SSISDB , sul progetto o sul pacchetto che si vuole eseguire e quindi fare clic su Execute in Scale Out(Esegui nel servizio di scalabilità orizzontale).Right-click the SSISDB node or the project or the package you want to run, and then click Execute in Scale Out.

  2. Selezionare i pacchetti e impostare le opzioni.Select packages and set the options.

    Nella pagina Selezione pacchetto selezionare uno o più pacchetti da eseguire.On the Package Selection page, select one or more packages to run. Impostare ambiente, parametri, gestioni connessioni e opzioni avanzate per ogni pacchetto.Set the environment, parameters, connection managers, and advanced options for each package. Fare clic su un pacchetto per impostare queste opzioni.Click a package to set these options.

    Nella scheda Avanzate impostare un'opzione di Scale Out denominata Numero di tentativi per specificare il numero massimo di volte in cui, in caso di errore, viene ritentata l'esecuzione di un pacchetto.On the Advanced tab, set a Scale Out option called Retry count to specify the number of times a package execution will retry if it fails.

    Nota

    L'opzione Dump su errori ha effetto solo quando l'account che esegue il servizio Scale Out Worker è l'account di un amministratore del computer locale.The Dump on errors option only works when the account running Scale Out Worker service is an administrator on the local computer.

  3. Selezionare i computer del ruolo di lavoro.Select worker computers.

    Nella pagina Selezione computer selezionare i computer Scale Out Worker per l'esecuzione dei pacchetti.On the Machine Selection page, select the Scale Out Worker computers to run the packages. Per impostazione predefinita, tutti i computer possono eseguire i pacchetti.By default, any computer is allowed to run the packages.

    Nota

    I pacchetti vengono eseguiti con le credenziali degli account utente dei servizi Scale Out Worker.The packages are executed with the credentials of the user accounts of the Scale Out Worker services. Verificare le credenziali nella pagina Selezione computer.Review these credentials on the Machine Selection page. Per impostazione predefinita, l'account è NT Service\SSISScaleOutWorker140.By default, the account is NT Service\SSISScaleOutWorker140.

    Avviso

    Le esecuzioni dei pacchetti attivate da utenti diversi sullo stesso ruolo di lavoro vengono eseguite con le stesse credenziali.Package executions triggered by different users on the same worker run with the same credentials. Non c'è alcun limite di sicurezza.There is no security boundary between or among them.

  4. Eseguire i pacchetti e visualizzare i report.Run the packages and view reports.

    Fare clic su OK per avviare le esecuzioni dei pacchetti.Click OK to start the package executions. Per visualizzare il report di esecuzione relativo a un pacchetto, fare clic con il pulsante destro del pacchetto in Esplora oggetti, fare clic su Report, Tutte le esecuzionie trovare l'esecuzione.To view the execution report for a package, right-click the package in Object Explorer, click Reports, click All Executions, and find the execution.

Eseguire i pacchetti con le stored procedureRun packages with stored procedures

  1. Creare le esecuzioni.Create executions.

    Chiamare [catalog].[create_execution] per ogni pacchetto.Call [catalog].[create_execution] for each package. Impostare il parametro @runinscaleout su True.Set the parameter @runinscaleout to True. Se non tutti i computer Scale Out Worker sono autorizzati a eseguire il pacchetto, impostare il parametro @useanyworker su False.If not all Scale Out Worker computers are allowed to run the package, set the parameter @useanyworker to False.

  2. Impostare i parametri di esecuzione.Set execution parameters.

    Chiamare [catalog].[set_execution_parameter_value] per ogni esecuzione.Call [catalog].[set_execution_parameter_value] for each execution.

  3. Impostare le istanze di Scale Out Worker.Set the Scale Out Workers.

    Chiamare [catalog].[add_execution_worker].Call [catalog].[add_execution_worker]. Se tutti i computer possono eseguire il pacchetto, non è necessario chiamare questa stored procedure.If all computers are allowed to run the package, you don't have to call this stored procedure.

  4. Avviare le esecuzioni.Start the executions.

    Chiamare [catalog].[start_execution].Call [catalog].[start_execution]. Impostare il parametro @retry_count per configurare il numero di tentativi di riesecuzione di un pacchetto in caso di errore.Set the parameter @retry_count to set the number of times a package execution will retry if it fails.

EsempioExample

Nell'esempio seguente vengono eseguiti due pacchetti, package1.dtsx e package2.dtsx, nel servizio Scale Out con un ruolo di lavoro.The following example runs two packages, package1.dtsx and package2.dtsx, in Scale Out with one Scale Out Worker.

Declare @execution_id bigint
EXEC [SSISDB].[catalog].[create_execution] @package_name=N'package1.dtsx', @execution_id=@execution_id OUTPUT, @folder_name=N'folder1', @project_name=N'project1', @use32bitruntime=False, @reference_id=Null, @useanyworker=False, @runinscaleout=True
Select @execution_id
DECLARE @var0 smallint = 1
EXEC [SSISDB].[catalog].[set_execution_parameter_value] @execution_id,  @object_type=50, @parameter_name=N'LOGGING_LEVEL', @parameter_value=@var0
EXEC [SSISDB].[catalog].[add_execution_worker] @execution_id,  @workeragent_id=N'64c020e2-f819-4c2d-a22f-efb31a91e70a'
EXEC [SSISDB].[catalog].[start_execution] @execution_id,  @retry_count=0
GO

Declare @execution_id bigint
EXEC [SSISDB].[catalog].[create_execution] @package_name=N'package2.dtsx', @execution_id=@execution_id OUTPUT, @folder_name=N'folder2', @project_name=N'project2', @use32bitruntime=False, @reference_id=Null, @useanyworker=False, @runinscaleout=True
Select @execution_id
DECLARE @var0 smallint = 1
EXEC [SSISDB].[catalog].[set_execution_parameter_value] @execution_id,  @object_type=50, @parameter_name=N'LOGGING_LEVEL', @parameter_value=@var0
EXEC [SSISDB].[catalog].[add_execution_worker] @execution_id,  @workeragent_id=N'64c020e2-f819-4c2d-a22f-efb31a91e70a'
EXEC [SSISDB].[catalog].[start_execution] @execution_id,  @retry_count=0
GO

AutorizzazioniPermissions

Per eseguire i pacchetti in Scale Out, è necessario avere una delle autorizzazioni seguenti:To run packages in Scale Out, you have to have one the following permissions:

  • Appartenenza al ruolo del database ssis_adminMembership in the ssis_admin database role

  • Appartenenza al ruolo del database ssis_cluster_executorMembership in the ssis_cluster_executor database role

  • Appartenenza al ruolo del server sysadminMembership in the sysadmin server role

Impostare la modalità di esecuzione predefinitaSet default execution mode

Per impostare la modalità di esecuzione predefinita per i pacchetti su Scale Out, eseguire le operazioni seguenti:To set the default execution mode for packages to Scale Out, do the following things:

  1. In SSMS in Esplora oggetti fare clic con il pulsante destro del mouse sul nodo SSISDB e selezionare Proprietà.In SSMS, in Object Explorer, right-click the SSISDB node and select Properties.

  2. Nella finestra di dialogo Proprietà catalogo impostare Modalità di esecuzione predefinita a livello di server su Scale Out.In the Catalog Properties dialog box, set Server-wide Default execution mode to Scale Out.

Dopo aver impostato la modalità di esecuzione predefinita, non è più necessario specificare il parametro @runinscaleout quando si chiama la stored procedure [catalog].[create_execution].After you set this default execution mode, you no longer have to specify the @runinscaleout parameter when you call the [catalog].[create_execution] stored procedure. I pacchetti vengono eseguiti automaticamente in Scale Out.Packages are run in Scale Out automatically.

Modalità file exe

Per impostare nuovamente la modalità di esecuzione predefinita sulla modalità non Scale Out, impostare Modalità di esecuzione predefinita a livello di server su Server.To switch the default execution mode back so that packages no longer run by default in Scale Out mode, set Server-wide Default execution mode to Server.

Eseguire un pacchetto in un processo di SQL Server AgentRun package in SQL Server Agent job

In un processo di SQL Server Agent è possibile eseguire un pacchetto SSIS come un passaggio del processo.In a SQL Server Agent job, you can run an SSIS package as one step of the job. Per eseguire il pacchetto in Scale Out, impostare la modalità di esecuzione predefinita su Scale Out. Dopo aver impostato la modalità di esecuzione predefinita su Scale Out, i pacchetti nei processi di SQL Server Agent verranno eseguiti in modalità Scale Out.To run the package in Scale Out, set the default execution mode to Scale Out. After you set the default execution mode to Scale Out, packages in SQL Server Agent jobs run in Scale Out mode.

Passaggi successiviNext steps