Enable Stretch Database for a tableEnable Stretch Database for a table

이 항목은 다음에 적용됩니다. 예SQL Server(2016부터 시작)아니요Azure SQL 데이터베이스아니요Azure SQL 데이터 웨어하우스아니요병렬 데이터 웨어하우스THIS TOPIC APPLIES TO: yesSQL Server (starting with 2016)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Stretch Database에 테이블을 구성하려면 SQL Server Management Studio에서 테이블에 대해 늘이기 | 활성화를 선택하여 스트레치에 테이블 사용 마법사를 엽니다.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. 또한, Transact-SQL을 사용하여 기존 테이블에서 스트레치 데이터베이스를 사용하거나 활성화된 스트레치 데이터베이스로 새 테이블을 만들 수 있습니다.You can also use Transact-SQL to enable Stretch Database on an existing table, or to create a new table with Stretch Database enabled.

  • 콜드 데이터를 별도 테이블에 저장하는 경우 전체 테이블을 마이그레이션할 수 있습니다.If you store cold data in a separate table, you can migrate the entire table.

  • 테이블에 핫 데이터와 콜드 데이터가 모두 포함된 경우 필터 함수를 지정하여 마이그레이션할 행을 선택할 수 있습니다.If your table contains both hot and cold data, you can specify a filter function to select the rows to migrate.

    필수 구성 요소.Prerequisites. 테이블에서 늘이기 | 활성화 를 선택하고 데이터베이스에서 스트레치 데이터베이스를 활성화하지 않은 경우에는, 마법사가 스트레치 데이터베이스에서 데이터베이스를 먼저 구성합니다.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. 이 문서의 단계 대신 Stretch에 데이터베이스 사용 마법사를 실행하여 시작 의 단계를 따르세요.Follow the steps in Get started by running the Enable Database for Stretch Wizard instead of the steps in this topic.

    사용 권한.Permissions. 데이터베이스 또는 테이블에 대해 스트레치 데이터베이스를 사용하도록 설정하려면 db_owner 권한이 필요합니다.Enabling Stretch Database on a database or a table requires db_owner permissions. 또한, 테이블에서 스트레치 데이터베이스를 사용하려면 테이블에 대한 ALTER 권한이 필요합니다.Enabling Stretch Database on a table also requires ALTER permissions on the table.

    참고

    나중에 Stretch Database를 사용하지 않도록 설정하려는 경우 테이블 또는 데이터베이스에서 Stretch Database를 사용하지 않도록 설정하면 원격 개체가 삭제되지 않습니다.Later, if you disable Stretch Database, remember that disabling Stretch Database for a table or for a database does not delete the remote object. 원격 테이블 또는 원격 데이터베이스를 삭제하려면 Azure 관리 포털을 사용하여 삭제해야 합니다.If you want to delete the remote table or the remote database, you have to drop it by using the Azure management portal. 원격 개체는 수동으로 삭제할 때까지 Azure 비용이 계속해서 발생합니다.The remote objects continue to incur Azure costs until you delete them manually.

마법사를 사용하여 테이블에서 스트레치 데이터베이스 활성화Use the wizard to enable Stretch Database on a table

마법사 시작Launch the wizard

  1. SQL Server Management Studio의 개체 탐색기에서 스트레치를 사용하도록 설정하려는 테이블을 선택합니다.In SQL Server Management Studio, in Object Explorer, select the table on which you want to enable Stretch.
  1. 마우스 오른쪽 단추로 클릭하고 스트레치를 선택하고 사용 을 선택하여 마법사를 시작합니다.Right-click and select Stretch, and then select Enable to launch the wizard.

    소개Introduction
    마법사의 용도 및 필수 구성 요소를 검토합니다.Review the purpose of the wizard and the prerequisites.

    데이터베이스 테이블 선택Select database tables
    사용하려는 테이블이 표시되고 선택되었는지 확인합니다.Confirm that the table you want to enable is displayed and selected.

    전체 테이블을 마이그레이션하거나 마법사에서 간단한 필터 함수를 지정할 수 있습니다.You can migrate an entire table or you can specify a simple filter function in the wizard. 다른 유형의 필터 함수를 사용하여 마이그레이션할 행을 선택하려면 다음 중 하나를 수행합니다.If you want to use a different type of filter function to select rows to migrate, do one of the following things.

  • 마법사를 종료하고 ALTER TABLE 문을 실행하여 테이블에 대해 스트레치를 사용하도록 설정하고 필터 함수를 지정합니다.Exit the wizard and run the ALTER TABLE statement to enable Stretch for the table and to specify a filter function.

  • 마법사를 종료한 후 ALTER TABLE 문을 실행하여 필터 함수를 지정합니다.Run the ALTER TABLE statement to specify a filter function after you exit the wizard. 필수 단계는 마법사를 실행한 후 필터 함수 추가를 참조하세요.For the required steps, see Add a filter function after running the Wizard.

    ALTER TABLE 구문은 이 항목의 뒷부분에 설명되어 있습니다.The ALTER TABLE syntax is described later in this topic.

    요약Summary
    마법사에서 선택한 옵션과 입력한 값을 검토합니다.Review the values that you entered and the options that you selected in the wizard. 그런 다음 마침 을 선택하여 스트레치를 사용하도록 설정합니다.Then select Finish to enable Stretch.

    결과Results
    결과를 검토합니다.Review the results.

Transact-SQL을 사용하여 테이블에서 스트레치 데이터베이스 활성화Use Transact-SQL to enable Stretch Database on a table

또한, Transact-SQL을 사용하여 기존 테이블에서 스트레치 데이터베이스를 사용하거나 활성화된 스트레치 데이터베이스로 새 테이블을 만들 수 있습니다.You can enable Stretch Database for an existing table or create a new table with Stretch Database enabled by using Transact-SQL.

옵션Options

CREATE TABLE 또는 ALTER TABLE을 실행하여 테이블에서 스트레치 데이터베이스를 사용하는 경우 다음 옵션을 사용합니다.Use the following options when you run CREATE TABLE or ALTER TABLE to enable Stretch Database on a table.

  • 선택 사항으로, 테이블에 핫 및 콜드 데이터가 모두 포함된 경우 FILTER_PREDICATE = <function> 절을 사용하여 함수를 지정해 마이그레이션할 행을 선택할 수 있습니다.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. 조건자는 인라인 테이블 반환 함수를 호출해야 합니다.The predicate must call an inline table-valued function. 자세한 내용은 필터 함수를 사용하여 마이그레이션할 행 선택을 참조하세요.For more info, see Select rows to migrate by using a filter function. 필터 함수를 지정하지 않으면 전체 테이블이 마이그레이션됩니다.If you don't specify a filter function, the entire table is migrated.

    중요

    제대로 수행되지 않는 필터 함수를 제공하면 데이터 마이그레이션 성능도 저하됩니다.If you provide a filter function that performs poorly, data migration also performs poorly. 스트레치 데이터베이스는 CROSS APPLY 연산자를 사용하여 테이블에 필터 함수를 적용합니다.Stretch Database applies the filter function to the table by using the CROSS APPLY operator.

  • MIGRATION_STATE = OUTBOUND 을(를) 지정하여 즉시 마이그레이션을 시작하거나 MIGRATION_STATE = PAUSED 을(를) 지정하여 데이터 마이그레이션의 시작을 연기합니다.Specify MIGRATION_STATE = OUTBOUND to start data migration immediately or MIGRATION_STATE = PAUSED to postpone the start of data migration.

기존 테이블에서 스트레치 데이터베이스 활성화Enable Stretch Database for an existing table

스트레치 데이터베이스용으로 기존 데이터베이스를 구성하려면 ALTER TABLE 명령을 실행합니다.To configure an existing table for Stretch Database, run the ALTER TABLE command.

전체 테이블을 마이그레이션하고 즉시 마이그레이션을 시작하는 예제는 다음과 같습니다.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

dbo.fn_stretchpredicate 인라인 테이블 반환 함수에 의해 식별된 행만 마이그레이션하고 데이터 마이그레이션을 연기하는 예제는 다음과 같습니다.Here's an example that migrates only the rows identified by the dbo.fn_stretchpredicate inline table-valued function and postpones data migration. 필터 함수에 대한 자세한 내용은 필터 함수를 사용하여 마이그레이션할 행 선택을 참조하세요.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

자세한 내용은 ALTER TABLE(Transact-SQL).For more info, see ALTER TABLE (Transact-SQL).

활성화된 스트레치 데이터베이스에서 새 테이블 만들기Create a new table with Stretch Database enabled

활성화된 스트레치 데이터베이스에서 새 테이블을 만들려면 CREATE TABLE 명령을 실행합니다.To create a new table with Stretch Database enabled, run the CREATE TABLE command.

전체 테이블을 마이그레이션하고 즉시 마이그레이션을 시작하는 예제는 다음과 같습니다.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

dbo.fn_stretchpredicate 인라인 테이블 반환 함수에 의해 식별된 행만 마이그레이션하고 데이터 마이그레이션을 연기하는 예제는 다음과 같습니다.Here's an example that migrates only the rows identified by the dbo.fn_stretchpredicate inline table-valued function and postpones data migration. 필터 함수에 대한 자세한 내용은 필터 함수를 사용하여 마이그레이션할 행 선택을 참조하세요.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  

자세한 내용은 CREATE TABLE(Transact-SQL).For more info, see CREATE TABLE (Transact-SQL).

관련 항목:See Also

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