Habilitar o Stretch Database para uma tabelaEnable Stretch Database for a table

APLICA-SE A: simSQL Server (Windows apenas de 2016 em diante) nãoBanco de Dados SQL do Azure nãoAzure Synapse Analytics (SQL DW) nãoParallel Data WarehouseAPPLIES TO: yesSQL Server (Windows only starting with 2016) noAzure SQL Database noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

Para configurar uma tabela para o Stretch Database, selecione Stretch | Habilitar para uma tabela no SQL Server Management Studio a fim de abrir o assistente Habilitar Tabela para 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. Você também pode usar o Transact-SQL para habilitar o Stretch Database em uma tabela existente ou para criar uma nova tabela com o Stretch Database habilitado.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 você armazenar dados frios em uma tabela separada, poderá migrar a tabela inteira.If you store cold data in a separate table, you can migrate the entire table.

  • Se a tabela contiver dados quentes e frios, será possível especificar uma função de filtro para selecionar as linhas a serem migradas.If your table contains both hot and cold data, you can specify a filter function to select the rows to migrate.

Pré-requisitos.Prerequisites. Se você selecionar Stretch | Habilitar para uma tabela e ainda não tiver habilitado o Stretch Database para o banco de dados, o assistente configurará primeiro o banco de dados para o 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. Siga as etapas em Comece executando o Assistente para Habilitar o Banco de Dados para Stretch em vez das etapas deste artigo.Follow the steps in Get started by running the Enable Database for Stretch Wizard instead of the steps in this article.

Permissões.Permissions. A habilitação do Stretch Database em um banco de dados ou em uma tabela requer permissões db_owner.Enabling Stretch Database on a database or a table requires db_owner permissions. A habilitação do Stretch Database em uma tabela também requer permissões ALTER na tabela.Enabling Stretch Database on a table also requires ALTER permissions on the table.

Observação

Mais tarde, se você desabilitar o Stretch Database, lembre-se de que desabilitar uma tabela ou um banco de dados do Stretch Database não excluirá o objeto 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 você quiser excluir a tabela remota ou o banco de dados remoto, descarte-o(a) usando o Portal de Gerenciamento do Azure.If you want to delete the remote table or the remote database, you have to drop it by using the Azure management portal. Os objetos remotos continuam incorrendo em custos do Azure até que você os exclua manualmente.The remote objects continue to incur Azure costs until you delete them manually.

Usar o assistente para habilitar o Stretch Database em uma tabelaUse the wizard to enable Stretch Database on a table

Iniciar o assistenteLaunch the wizard

  1. No SQL Server Management Studio, no Pesquisador de objetos, selecione a tabela na qual você deseja habilitar o Stretch.In SQL Server Management Studio, in Object Explorer, select the table on which you want to enable Stretch.

  2. Clique com o botão direito do mouse e selecione Stretch, e depois selecione Habilitar para iniciar o assistente.Right-click and select Stretch, and then select Enable to launch the wizard.

IntroduçãoIntroduction
Verifique o objetivo do assistente e os pré-requisitos.Review the purpose of the wizard and the prerequisites.

Selecionar tabelas do banco de dadosSelect database tables
Confirme se a tabela que você quer habilitar é exibida e selecionada.Confirm that the table you want to enable is displayed and selected.

Você pode migrar uma tabela inteira ou especificar uma função de filtro simples no assistente.You can migrate an entire table or you can specify a simple filter function in the wizard. Se você desejar usar um tipo diferente de função de filtro para selecionar as linhas a serem migradas, siga um destes procedimentos.If you want to use a different type of filter function to select rows to migrate, do one of the following things.

  • Saia do assistente e execute a instrução ALTER TABLE para habilitar o Stretch para a tabela e especificar uma função de filtro.Exit the wizard and run the ALTER TABLE statement to enable Stretch for the table and to specify a filter function.

  • Execute a instrução ALTER TABLE para especificar uma função de filtro depois que você sair do assistente.Run the ALTER TABLE statement to specify a filter function after you exit the wizard. Para as etapas obrigatórias, consulte Adicionar uma função de filtro após executar o assistente.For the required steps, see Add a filter function after running the Wizard.

A sintaxe ALTER TABLE é descrita posteriormente neste artigo.The ALTER TABLE syntax is described later in this article.

ResumoSummary
Examine os valores que você inseriu e as opções selecionadas no assistente.Review the values that you entered and the options that you selected in the wizard. Em seguida, escolha Concluir para habilitar o Stretch.Then select Finish to enable Stretch.

ResultadosResults
Analise os resultados.Review the results.

Usar o Transact-SQL para habilitar o Stretch Database em uma tabelaUse Transact-SQL to enable Stretch Database on a table

Você pode habilitar o Stretch Database para uma tabela existente ou criar uma nova tabela com o Stretch Database habilitado usando Transact-SQL.You can enable Stretch Database for an existing table or create a new table with Stretch Database enabled by using Transact-SQL.

OpçõesOptions

Use as seguintes opções ao executar CREATE TABLE ou ALTER TABLE para habilitar o Stretch Database em uma tabela.Use the following options when you run CREATE TABLE or ALTER TABLE to enable Stretch Database on a table.

  • Opcionalmente, use a cláusula FILTER_PREDICATE = <function> para especificar uma função a fim de selecionar linhas a serem migradas se a tabela contiver dados quentes e frios.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. O predicado deve chamar uma função embutida com valor de tabela.The predicate must call an inline table-valued function. Para obter mais informações, consulte Selecione linhas para migrar usando uma função de filtro.For more info, see Select rows to migrate by using a filter function. Se você não especificar uma função de filtro, a tabela inteira será migrada.If you don't specify a filter function, the entire table is migrated.

    Importante

    Se você fornecer uma função de filtro precária, a migração de dados também será precária.If you provide a filter function that performs poorly, data migration also performs poorly. O Stretch Database aplica a função de filtro à tabela usando o operador CROSS APPLY.Stretch Database applies the filter function to the table by using the CROSS APPLY operator.

  • Especifique MIGRATION_STATE = OUTBOUND para iniciar a migração de dados imediatamente ou MIGRATION_STATE = PAUSED para adiar o início da migração de dados.Specify MIGRATION_STATE = OUTBOUND to start data migration immediately or MIGRATION_STATE = PAUSED to postpone the start of data migration.

Habilitar o Stretch Database para uma tabela existenteEnable Stretch Database for an existing table

Para configurar uma tabela existente para o Stretch Database, execute o comando ALTER TABLE.To configure an existing table for Stretch Database, run the ALTER TABLE command.

Aqui está um exemplo que migra a tabela inteira e começa a migração de dados imediatamente.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

Aqui está um exemplo que migra apenas as linhas identificadas pela função com valor de tabela embutida dbo.fn_stretchpredicate e adia a migração de dados.Here's an example that migrates only the rows identified by the dbo.fn_stretchpredicate inline table-valued function and postpones data migration. Para obter mais informações sobre a função de filtro, veja Select rows to migrate by using a filter function (Selecionar linhas a serem migradas usando uma função de 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

Para obter mais informações, consulte ALTER TABLE (Transact-SQL).For more info, see ALTER TABLE (Transact-SQL).

Criar uma nova tabela com o Stretch Database habilitadoCreate a new table with Stretch Database enabled

Para criar uma nova tabela com o Stretch Database habilitado, execute o comando CREATE TABLE.To create a new table with Stretch Database enabled, run the CREATE TABLE command.

Aqui está um exemplo que migra a tabela inteira e começa a migração de dados imediatamente.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

Aqui está um exemplo que migra apenas as linhas identificadas pela função com valor de tabela embutida dbo.fn_stretchpredicate e adia a migração de dados.Here's an example that migrates only the rows identified by the dbo.fn_stretchpredicate inline table-valued function and postpones data migration. Para obter mais informações sobre a função de filtro, veja Select rows to migrate by using a filter function (Selecionar linhas a serem migradas usando uma função de 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  

Para obter mais informações, consulte CREATE TABLE (Transact-SQL).For more info, see CREATE TABLE (Transact-SQL).

Consulte TambémSee Also

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