Eseguire i pacchetti di Integration Services (SSIS) Scale OutRun packages in Integration Services (SSIS) Scale Out

Dopo aver distribuito i pacchetti nel server di Integration Services, è possibile eseguirli nel servizio di scalabilità orizzontale.After the packages are deployed to the Integration Services server, you can execute them in Scale Out.

Eseguire i pacchetti con una finestra di dialogo Esegui pacchetto In Scale OutRun packages with Execute Package In Scale Out dialog

  1. Aprire la finestra di dialogo Execute Package In Scale Out (Esegui pacchetto nel servizio di scalabilità orizzontale)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 opzioniSelect packages and set the options

    Nella pagina Selezione pacchetti selezionare più pacchetti per eseguire e impostare ambiente, parametri, gestori di connessioni e opzioni avanzate per ogni pacchetto.On the Package Selection page, you select multiple packages to run and 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 per Scale Out denominata Numero di tentativi.In the Advanced tab, you set a Scale Out option called Retry count. Questa opzione consente di impostare il numero di tentativi di esecuzione di un pacchetto in caso di errore.It sets the number of times a package execution will retry if it fails.

    Nota

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

  3. Selezionare i computerSelect machines

    Nella pagina Machine Selection (Selezione computer) selezionare i computer del ruolo di lavoro di scalabilità orizzontale per l'esecuzione dei pacchetti.On the Machine Selection page, you select the Scale Out Worker machines to run the packages. Per impostazione predefinita, tutti i computer possono eseguire i pacchetti.By default, any machine is allowed to run the packages.

    Nota

    I pacchetti vengono eseguiti con le credenziali degli account utente del servizio Ruolo di lavoro di scalabilità orizzontale, visualizzati nella pagina Machine Selection (Selezione computer).The packages are executed with the credential of the user accounts of the Scale Out Worker services, which are shown on the Machine Selection page. Per impostazione predefinita, l'account è NT Service\SSISScaleOutWorker140.By default, the account is NT Service\SSISScaleOutWorker140. È possibile modificarlo in base ai propri account di laboratorio.You may want to change to your own lab accounts.

    Avviso

    Attivato da utenti diversi nel processo di lavoro stesso esecuzioni del pacchetto vengono eseguite con lo stesso account.Package executions triggered by different users on the same worker are run with the same account. Non sussiste alcun limite di sicurezza tra di essi.There is no security boundary among them.

  4. Eseguire i pacchetti e visualizzare i reportRun 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 esecuzioniCreate executions

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

  2. Impostare i parametri di esecuzioneSet execution parameters

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

  3. Impostare i ruoli di lavoro di scalabilità orizzontaleSet Scale Out Workers

    Chiamare [catalog].[add_execution_worker].Call [catalog].[add_execution_worker]. Se qualsiasi computer può eseguire il pacchetto, non è necessario chiamare questa stored procedure.If any machine is allowed to run the package, you do not need to call this stored procedure.

  4. Avviare le esecuzioniStart executions

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

EsempioExample

L'esempio seguente esegue due pacchetti, package1.dtsx e package2.dtsx, nel servizio di scalabilità orizzontale con un ruolo di lavoro di scalabilità orizzontale.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

PermissionsPermissions

L'esecuzione dei pacchetti nel servizio di scalabilità orizzontale richiede una delle autorizzazioni seguenti:Running packages in Scale Out requires 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 predefinitoSet default execution mode

Per impostare la modalità di esecuzione predefinito per "Scale Out", fare doppio clic su di SSISDB nodo in Esplora oggetti di SQL Server Management Studio e selezionare proprietà.To set default execution mode to "Scale Out", right-click the SSISDB node in Object Explorer of SSMS and select Properties. Nel proprietà catalogo finestra di dialogo, impostare modalità di esecuzione predefinito a livello di Server a orizzontale.In the Catalog Properities dialog, set Server-wide Default execution mode to Scale Out.

Dopo questa impostazione, non è necessario specificare il @runinscaleout parametro per [catalog]. [ create_execution].After this setting, there's no need to specify the @runinscaleout parameter for [catalog].[create_execution]. Esecuzioni vengono eseguite automaticamente in orizzontale.Executions are executed in Scale Out automatically.

Modalità file exe

Per cambiare la modalità di esecuzione predefinito tornare alla modalità non - scalabile, è sufficiente impostare modalità di esecuzione a livello di Server predefinito a Server.To switch default execution mode back to non-Scale Out mode, just set Server-wide Default execution mode to Server.

Eseguire un pacchetto nel processo dell'agente SQLRun package in SQL agent job

Nel processo di Sql agent, è possibile scegliere di eseguire un pacchetto SSIS come un passaggio del processo.In Sql agent job, you can choose to run a SSIS package as one step of the job. Per eseguire il pacchetto in orizzontale, è possibile utilizzare la modalità di esecuzione predefinito precedente.To run the package in Scale Out, you can leverage the above default execution mode. Dopo l'impostazione della modalità di esecuzione predefinito per "Scale Out", verranno eseguiti i pacchetti di processi di Sql agent in orizzontale.After setting default execution mode to "Scale Out", packages in Sql agent jobs will be run in Scale Out.