Abilitare Stretch Database per una tabellaEnable Stretch Database for a table

Si applica a:Applies to: sìSQL Server 2016 (13.x)SQL Server 2016 (13.x)yesSQL Server 2016 (13.x)SQL Server 2016 (13.x) e versioni successive - Solo WindowsSi applica a:Applies to: sìSQL Server 2016 (13.x)SQL Server 2016 (13.x)yesSQL Server 2016 (13.x)SQL Server 2016 (13.x) and later - Windows only

Per configurare una tabella per Stretch Database, selezionare Stretch | Abilita per una tabella in SQL Server Management Studio in modo da aprire la procedura guidata Abilita la tabella per Stretch.To configure a table for Stretch Database, select Stretch | Enable for a table in SQL Server Management Studio to open the Enable Table for Stretch wizard. È anche possibile usare Transact-SQL per abilitare Stretch Database in una tabella esistente o per creare una nuova tabella con Stretch Database abilitato.You can also use Transact-SQL to enable Stretch Database on an existing table, or to create a new table with Stretch Database enabled.

  • Se i dati ad accesso sporadico vengono archiviati in una tabella separata, è possibile eseguire la migrazione dell'intera tabella.If you store cold data in a separate table, you can migrate the entire table.

  • Se la tabella contiene dati usati più di frequente e dati usati meno di frequente, è possibile specificare una funzione di filtro per selezionare le righe di cui eseguire la migrazione.If your table contains both hot and cold data, you can specify a filter function to select the rows to migrate.

Prerequisiti.Prerequisites. Se si seleziona Stretch | Abilita per una tabella e non è stato ancora abilitato Stretch Database per il database, la procedura guidata configura prima il database per Stretch Database.If you select Stretch | Enable for a table, and you have not yet enabled Stretch Database for the database, the wizard first configures the database for Stretch Database. Seguire i passaggi descritti in Avviare la procedura guidata Abilitare il database per Stretch anziché quelli riportati in questo articolo.Follow the steps in Get started by running the Enable Database for Stretch Wizard instead of the steps in this article.

Autorizzazioni.Permissions. Per abilitare Stretch Database in un database o una tabella sono necessarie autorizzazioni db_owner.Enabling Stretch Database on a database or a table requires db_owner permissions. Anche per abilitare Stretch Database in una tabella sono necessarie le autorizzazioni ALTER nella tabella.Enabling Stretch Database on a table also requires ALTER permissions on the table.

Nota

Se in seguito si disabilita Stretch Database, tenere presente che la disabilitazione di Stretch Database per una tabella o un database non elimina l'oggetto remoto.Later, if you disable Stretch Database, remember that disabling Stretch Database for a table or for a database does not delete the remote object. Se si vuole eliminare la tabella remota o il database remoto, è necessario eliminarlo tramite il portale di gestione di Azure.If you want to delete the remote table or the remote database, you have to drop it by using the Azure management portal. Gli oggetti remoti continuano a generare costi di Azure fino a quando non vengono eliminati manualmente.The remote objects continue to incur Azure costs until you delete them manually.

Usare la procedura guidata per abilitare Stretch Database in una tabellaUse the wizard to enable Stretch Database on a table

Avviare la procedura guidataLaunch the wizard

  1. In Esplora oggetti di SQL Server Management Studio selezionare la tabella in cui si vuole abilitare l'estensione.In SQL Server Management Studio, in Object Explorer, select the table on which you want to enable Stretch.

  2. Fare clic con il pulsante destro del mouse e selezionare Estendi, quindi scegliere Abilita per avviare la procedura guidata.Right-click and select Stretch, and then select Enable to launch the wizard.

IntroduzioneIntroduction
Esaminare lo scopo della procedura guidata e i prerequisiti.Review the purpose of the wizard and the prerequisites.

Selezionare le tabelle del databaseSelect database tables
Verificare che la tabella che si vuole abilitare sia visualizzata e selezionata.Confirm that the table you want to enable is displayed and selected.

È possibile eseguire la migrazione di un'intera tabella oppure specificare una funzione di filtro semplice nella procedura guidata.You can migrate an entire table or you can specify a simple filter function in the wizard. Se si vuole usare un tipo diverso di funzione di filtro per selezionare le righe di cui eseguire la migrazione, eseguire una di queste operazioni.If you want to use a different type of filter function to select rows to migrate, do one of the following things.

  • Uscire dalla procedura guidata ed eseguire l'istruzione ALTER TABLE per abilitare l'estensione per la tabella e specificare una funzione di filtro.Exit the wizard and run the ALTER TABLE statement to enable Stretch for the table and to specify a filter function.

  • Eseguire l'istruzione ALTER TABLE per specificare una funzione di filtro dopo l'uscita dalla procedura guidata.Run the ALTER TABLE statement to specify a filter function after you exit the wizard. Per i passaggi necessari, vedere Aggiungere una funzione di filtro dopo l'esecuzione della procedura guidata.For the required steps, see Add a filter function after running the Wizard.

La sintassi di ALTER TABLE è descritta più avanti in questo articolo.The ALTER TABLE syntax is described later in this article.

SummarySummary
Esaminare i valori immessi e le opzioni selezionate nella procedura guidata.Review the values that you entered and the options that you selected in the wizard. Selezionare quindi Fine per abilitare l'estensione.Then select Finish to enable Stretch.

RisultatiResults
Esaminare i risultati.Review the results.

Usare Transact-SQL per abilitare Stretch Database in una tabellaUse Transact-SQL to enable Stretch Database on a table

È possibile usare Transact-SQL per abilitare Stretch Database per una tabella esistente o per creare una nuova tabella con Stretch Database abilitato.You can enable Stretch Database for an existing table or create a new table with Stretch Database enabled by using Transact-SQL.

OpzioniOptions

Usare le opzioni seguenti quando si esegue CREATE TABLE o ALTER TABLE per abilitare Stretch Database in una tabella.Use the following options when you run CREATE TABLE or ALTER TABLE to enable Stretch Database on a table.

  • Facoltativamente, usare la clausola FILTER_PREDICATE = <function> per specificare una funzione che selezioni le righe di cui eseguire la migrazione se la tabella contiene sia dati usati più di frequente sia dati usati meno di frequente.Optionally, use the FILTER_PREDICATE = <function> clause to specify a function to select rows to migrate if the table contains both hot and cold data. Il predicato deve eseguire la chiamata a una funzione inline con valori di tabella.The predicate must call an inline table-valued function. Per altre informazioni, vedere Selezionare le righe di cui eseguire la migrazione tramite una funzione di filtro.For more info, see Select rows to migrate by using a filter function. Se non si specifica una funzione di filtro, viene eseguita la migrazione dell'intera tabella.If you don't specify a filter function, the entire table is migrated.

    Importante

    Se si specifica una funzione di filtro dalle prestazioni scarse, anche la migrazione dei dati avrà prestazioni scarse.If you provide a filter function that performs poorly, data migration also performs poorly. Stretch Database applica la funzione del filtro alla tabella tramite l'operatore CROSS APPLY.Stretch Database applies the filter function to the table by using the CROSS APPLY operator.

  • Specificare MIGRATION_STATE = OUTBOUND per avviare subito la migrazione dei dati o MIGRATION_STATE = PAUSED per rimandare l'inizio della migrazione dei dati.Specify MIGRATION_STATE = OUTBOUND to start data migration immediately or MIGRATION_STATE = PAUSED to postpone the start of data migration.

Abilitare Stretch Database per una tabella esistenteEnable Stretch Database for an existing table

Per configurare una tabella esistente per Stretch Database, eseguire il comando ALTER TABLE.To configure an existing table for Stretch Database, run the ALTER TABLE command.

Ecco un esempio in cui viene eseguita la migrazione dell'intera tabella e la migrazione dei dati viene avviata subito.Here's an example that migrates the entire table and begins data migration immediately.

USE <Stretch-enabled database name>;
GO
ALTER TABLE <table name>  
    SET ( REMOTE_DATA_ARCHIVE = ON ( MIGRATION_STATE = OUTBOUND ) ) ;  
GO

Ecco un esempio in cui viene eseguita la migrazione solo delle righe identificate dalla funzione inline dbo.fn_stretchpredicate con valori di tabella e si rimanda l'esecuzione della migrazione dei dati.Here's an example that migrates only the rows identified by the dbo.fn_stretchpredicate inline table-valued function and postpones data migration. Per altre informazioni sulla funzione di filtro, vedere Select rows to migrate by using a filter function (Selezionare le righe di cui eseguire la migrazione usando una funzione di filtro).For more info about the filter function, see Select rows to migrate by using a filter function.

USE <Stretch-enabled database name>;
GO
ALTER TABLE <table name>  
    SET ( REMOTE_DATA_ARCHIVE = ON (  
        FILTER_PREDICATE = dbo.fn_stretchpredicate(),  
        MIGRATION_STATE = PAUSED ) ) ;  
 GO

Per altre informazioni, vedere ALTER TABLE (Transact-SQL).For more info, see ALTER TABLE (Transact-SQL).

Creare una nuova tabella con Stretch Database abilitatoCreate a new table with Stretch Database enabled

Per creare una nuova tabella con Stretch Database abilitato, eseguire il comando CREATE TABLE.To create a new table with Stretch Database enabled, run the CREATE TABLE command.

Ecco un esempio in cui viene eseguita la migrazione dell'intera tabella e la migrazione dei dati viene avviata subito.Here's an example that migrates the entire table and begins data migration immediately.

USE <Stretch-enabled database name>;
GO
CREATE TABLE <table name>
    ( ... )  
    WITH ( REMOTE_DATA_ARCHIVE = ON ( MIGRATION_STATE = OUTBOUND ) ) ;  
GO

Ecco un esempio in cui viene eseguita la migrazione solo delle righe identificate dalla funzione inline dbo.fn_stretchpredicate con valori di tabella e si rimanda l'esecuzione della migrazione dei dati.Here's an example that migrates only the rows identified by the dbo.fn_stretchpredicate inline table-valued function and postpones data migration. Per altre informazioni sulla funzione di filtro, vedere Select rows to migrate by using a filter function (Selezionare le righe di cui eseguire la migrazione usando una funzione di filtro).For more info about the filter function, see Select rows to migrate by using a filter function.

USE <Stretch-enabled database name>;
GO
CREATE TABLE <table name> 
    ( ... )  
    WITH ( REMOTE_DATA_ARCHIVE = ON (  
        FILTER_PREDICATE = dbo.fn_stretchpredicate(),  
        MIGRATION_STATE = PAUSED ) ) ;  
GO  

Per altre informazioni, vedere CREATE TABLE (Transact-SQL).For more info, see CREATE TABLE (Transact-SQL).

Vedere ancheSee Also

ALTER TABLE (Transact-SQL) ALTER TABLE (Transact-SQL)
CREATE TABLE (Transact-SQL)CREATE TABLE (Transact-SQL)