다음을 통해 공유


Microsoft Fabric의 테이블 복제

적용 대상:✅ Microsoft Fabric의 웨어하우스

Microsoft Fabric은 스토리지 비용을 최소화하면서 거의 즉각적인 제로 카피 복제본을 만드는 기능을 제공합니다.

  • 테이블 복제는 하위 환경에서 테이블 복사본을 만들어 개발 및 테스트 프로세스를 용이하게 합니다.
  • 테이블 복제는 분석 워크로드와 기계 학습 모델링 및 테스트를 위해 일관된 보고 및 데이터 제로 카피 복제를 제공합니다.
  • 테이블 복제는 이전 데이터 상태를 유지하여 릴리스 실패 또는 데이터 손상 시 데이터 복구 기능을 제공합니다.
  • 테이블 복제를 사용하면 과거의 특정 시점을 기준으로 존재했던 데이터의 상태를 반영하는 기록 보고서를 만들 수 있습니다.
  • 특정 시점의 테이블 복제본은 특정 비즈니스 지점에서 데이터의 상태를 시간 단위로 유지할 수 있습니다.

CREATE TABLE AS CLONE OF T-SQL 명령을 사용하여 테이블 복제본을 만들 수 있습니다. 자습서를 보려면 자습서: T-SQL를 사용하여 테이블 복제 또는 자습서: Fabric 포털에서 테이블 복제를 참조하세요.

T-SQL OPTION 구문을 사용하여 과거에 나타난 대로 Warehouse의 데이터를 쿼리할 수도 있습니다. 자세한 내용 및 과거에 존재했던 데이터 쿼리를 참조하세요.

제로 카피 복제란?

제로 카피 복제는 OneLake에서 동일한 데이터 파일을 계속 참조하면서 메타데이터를 복사하여 테이블의 복제본을 만듭니다. 메타데이터는 parquet 파일로 저장된 테이블의 기본 데이터가 복사되지 않는 동안 복사됩니다. 복제본 만들기는 Microsoft Fabric의 웨어하우스 내에서 테이블을 만드는 것과 비슷합니다.

Synapse Data Warehouse의 테이블 복제본

테이블 복제본 만들기

웨어하우스 내에서 간단한 T-SQL을 사용하여 거의 즉시 테이블의 복제본을 만들 수 있습니다. 테이블의 복제본은 웨어하우스의 스키마 내에서 또는 여러 스키마에서 만들 수 있습니다.

다음 중 하나를 기반으로 테이블의 복제본을 만들 수 있습니다.

  • 현재 지정 시점: 복제는 테이블의 현재 상태를 기반으로 합니다.

  • 이전 지정 시점: 복제는 과거 최대 30일의 특정 시점을 기반으로 합니다. 테이블 복제본에는 원하는 과거 시점에 나타난 데이터가 포함됩니다. 업계에서 이 기능은 ‘시간 이동’으로 알려져 있습니다. 새 테이블은 UTC를 기반으로 타임스탬프를 사용하여 만들어집니다. 예를 들어 과거 지정 시점으로 테이블 복제 또는 CREATE TABLE AS CLONE OF을 참조하세요.

테이블 그룹을 한 번에 복제할 수도 있습니다. 이는 이전 시점과 동일한 시점에 관련 테이블 그룹을 복제하는 데 유용할 수 있습니다. 예를 들어 한 번에 여러 테이블 복제를 참조하세요.

웨어하우스의 시간 이동 기능을 사용하여 과거에 존재했던 테이블의 데이터를 쿼리할 수도 있습니다.

데이터 보존

웨어하우스는 30일 동안 데이터 기록을 자동으로 보존하고 유지 관리하므로 특정 시점에 복제본을 만들 수 있습니다. Data Warehouse에 대한 모든 삽입, 업데이트 및 삭제 내용은 30일 동안 보관됩니다.

스키마 내 및 스키마 간에 생성된 복제본 수에는 제한이 없습니다.

구분 및 독립

생성 시 테이블 복제는 원본과 데이터의 독립적이고 별도의 복사본입니다. 테이블 복제본은 생성 시 원본의 데이터와 독립적이고 별도인 복사본이 됩니다.

  • 복제 테이블의 원본에서 DML이나 DDL을 통해 변경한 내용은 복제 테이블에 반영되지 않습니다.
  • 복제 테이블의 원본에서 DML이나 DDL을 통해 변경한 내용은 복제 테이블의 원본에 반영되지 않습니다.

테이블 복제를 만들 수 있는 권한

테이블 복제본을 만들려면 다음 권한이 필요합니다.

  • 관리자, 구성원 또는 기여자 작업 영역 역할이 있는 사용자는 작업 영역 내에서 테이블을 복제할 수 있습니다. 뷰어 작업 영역 역할은 복제본을 만들 수 없습니다.
  • 테이블 복제본 원본의 모든 행과 열에 대한 SELECT 권한이 필요합니다.
  • 사용자에게 테이블 복제본을 만들 스키마에 CREATE TABLE 권한이 있어야 합니다.

테이블 복제본 삭제

자율적인 존재이기 때문에 원래 원본과 복제본을 아무런 제약 없이 삭제할 수 있습니다. 복제본이 생성되면 사용자가 삭제할 때까지 존재하게 됩니다.

  • 관리자, 구성원 또는 기여자 작업 영역 역할이 있는 사용자는 작업 영역 내에서 테이블 복제본을 삭제할 수 있습니다.
  • 테이블 복제본이 있는 스키마에 대한 ALTER SCHEMA 권한이 있는 사용자는 테이블 복제를 삭제할 수 있습니다.

테이블 복제 상속

여기에 설명된 개체는 테이블 복제본에 포함됩니다.

  • 복제 테이블은 복제본의 원본 테이블에서 개체 수준 SQL 보안을 상속합니다. 작업 영역 역할은 기본적으로 읽기 액세스를 제공하므로 원하는 경우 테이블 복제본에 DENY 권한을 설정할 수 있습니다.

  • 복제 테이블은 복제 테이블의 원본에서 RLS(행 수준 보안)동적 데이터 마스킹을 상속받습니다.

  • 복제 테이블은 복제본이 동일한 스키마 내에서 생성되었는지 아니면 웨어하우스의 여러 스키마에 걸쳐 생성되었는지에 관계없이 원본 테이블의 모든 특성을 상속합니다.

  • 복제 테이블은 소스 테이블에 정의된 기본 키 및 고유 키 제약 조건을 상속받습니다.

  • 웨어하우스 내에서 만들어진 모든 테이블 복제본에 대해 읽기 전용 델타 로그가 만들어집니다. 델타 parquet 파일로 저장된 데이터 파일은 읽기 전용입니다. 이렇게 하면 데이터가 손상으로부터 항상 보호됩니다.

테이블 복제 시나리오

다음과 같은 유익한 시나리오에서 즉시 최소한의 스토리지 비용으로 테이블을 복제하는 기능을 고려합니다.

개발 및 테스트

테이블 복제를 사용하면 개발자와 테스터가 프로덕션 환경의 테이블에 영향을 주지 않고도 테이블을 실험, 유효성 검사 및 구체화할 수 있습니다. 복제본은 새로운 기능의 개발 및 테스트 활동을 수행할 수 있는 안전하고 격리된 공간을 제공하여 프로덕션 환경의 무결성과 안정성을 보장합니다. 테이블 복제를 사용하면 문제 해결, 실험, 개발 및 테스트 목적으로 프로덕션과 유사한 환경의 복사본을 빠르게 생성할 수 있습니다.

일관된 보고, 데이터 탐색 및 기계 학습 모델링

끊임없이 변화하는 데이터 환경에 적응하려면 ETL 작업을 자주 실행하는 것이 필수적입니다. 테이블 복제는 백그라운드 처리가 진행되는 동안 복제된 테이블을 기반으로 보고서를 생성할 수 있는 유연성을 제공하면서 데이터 무결성을 보장함으로써 이러한 목표를 지원합니다. 또한, 테이블 복제를 통해 기계 학습 모델에 대한 이전 결과를 재현할 수 있습니다. 또한 기록 데이터 탐색 및 분석을 가능하게 하여 중요한 인사이트를 제공합니다.

저비용, 거의 즉각적인 복구

실수로 데이터가 손실되거나 손상되는 경우 존재하는 테이블 복제본을 사용하여 테이블을 이전 상태로 복구할 수 있습니다.

데이터 보관

감사 또는 규정 준수 목적으로, 제로 카피 복제를 사용하면 과거 특정 시점에 존재했던 데이터의 사본을 쉽게 만들 수 있습니다. 장기 보존 또는 법적 규정 준수를 위해 일부 데이터를 보관해야 할 수도 있습니다. 다양한 기록 지점에서 테이블을 복제하면 데이터가 원래 형식으로 보존됩니다.

제한 사항

  • 작업 영역 내 웨어하우스 간 테이블 복제는 현재 지원되지 않습니다.
  • 작업 영역 내 테이블 복제는 현재 지원되지 않습니다.
  • 레이크하우스의 SQL 분석 엔드포인트에서는 테이블 복제가 지원되지 않습니다.
  • 웨어하우스 또는 스키마의 복제는 현재 지원되지 않습니다.
  • 30일의 보존 기간 전에 제출된 테이블 복제본은 생성할 수 없습니다.
  • 테이블 스키마가 변경되면 테이블 스키마가 변경되기 전에는 복제본이 생성되지 않습니다.

다음 단계