다음을 통해 공유


자습서: Azure SQL Managed Instance에서 Microsoft Fabric 미러된 데이터베이스 구성(미리 보기)

Fabric의 미러링은 엔터프라이즈, 클라우드 기반, 제로 ETL, SaaS 기술입니다. 이 섹션에서는 OneLake의 Azure SQL Managed Instance에서 선택한 데이터베이스의 읽기 전용 연속 복제 복사본을 나타내는 미러된 Azure SQL Managed Instance 데이터베이스를 만드는 방법을 알아봅니다.

필수 조건

Azure SQL Managed Instance의 SAMI(시스템 할당 관리 ID) 사용

Azure SQL Managed Instance의 SAMI(시스템 할당 관리 ID)를 사용하도록 설정해야 하며, 패브릭 OneLake에 데이터를 게시하려면 기본 ID여야 합니다.

  1. SAMI가 사용하도록 설정되어 있는지 구성하거나 확인하려면 Azure Portal에서 SQL Managed Instance로 이동합니다. 리소스 메뉴의 보안에서 ID를 선택합니다.
  2. 시스템이 할당한 관리 ID에서 상태켜기로 설정합니다.
  3. SAMI가 기본 ID여야 합니다. SELECT * FROM sys.dm_server_managed_identities; T-SQL 쿼리를 사용하여 SAMI가 기본 ID인지 확인합니다.

Fabric의 데이터베이스 보안 주체

다음으로, Fabric 서비스가 Azure SQL Managed Instance에 연결할 수 있는 방법을 만들어야 합니다.

로그인 및 매핑된 데이터베이스 사용자를 통해 이 작업을 수행할 수 있습니다. 보안에 대한 최소 권한 원칙에 따라 미러링하려는 데이터베이스에서 CONTROL DATABASE 권한만 부여해야 합니다.

로그인 및 매핑된 데이터베이스 사용자 사용

  1. SSMS(SQL Server Management Studio) 또는 Azure Data Studio를 사용하여 Azure SQL Managed Instance에 연결합니다. master 데이터베이스에 연결합니다.

  2. 서버 로그인을 만들고 적절한 권한을 할당합니다.

    • SQL 인증 로그인을 만듭니다. 이 로그인의 이름을 선택하고 다음 스크립트 <fabric_login>에서 대체합니다. 고유하고 강력한 암호를 제공합니다. master 데이터베이스에서 다음 T-SQL 스크립트를 실행합니다.
    CREATE LOGIN <fabric_login> WITH PASSWORD = '<strong password>';
    ALTER SERVER ROLE [##MS_ServerStateReader##] ADD MEMBER <fabric_login>;
    
    • 또는 기존 계정에서 Microsoft Entra ID 인증 로그인을 만듭니다. master 데이터베이스에서 다음 T-SQL 스크립트를 실행합니다.
    CREATE LOGIN [bob@contoso.com] FROM EXTERNAL PROVIDER;
    ALTER SERVER ROLE [##MS_ServerStateReader##] ADD MEMBER [bob@contoso.com];
    
  3. 쿼리 범위를 미러링하려는 데이터베이스로 전환합니다. 데이터베이스 <mirroring_source_database> 이름을 대체하고 다음 T-SQL을 실행합니다.

    USE [<mirroring_source_database>];
    
  4. 로그인에 연결된 데이터베이스 사용자를 만듭니다. 새 데이터베이스 사용자의 이름을 다음 용도 <fabric_user>로 대체합니다.

    CREATE USER <fabric_user> FOR LOGIN <fabric_login>;
    GRANT CONTROL TO <fabric_user>;
    

    또는 Microsoft Entra 로그인의 경우

    CREATE USER [bob@contoso.com] FOR LOGIN [bob@contoso.com];
    GRANT CONTROL TO [bob@contoso.com];
    

미러된 Azure SQL Managed Instance 데이터베이스 만들기

  1. Fabric 포털을 엽니다.
  2. 기존 작업 영역을 사용하거나 새 작업 영역을 만듭니다.
  3. 만들기 창으로 이동합니다. 만들기 아이콘을 선택합니다.
  4. 데이터 웨어하우스 섹션으로 스크롤한 다음 미러된 Azure SQL Managed Instance(미리 보기)를 선택합니다.

Azure SQL Managed Instance에 연결

미러링을 사용하도록 설정하려면 패브릭에서 Azure SQL Managed Instance에 연결하여 SQL Managed Instance와 Fabric 간의 연결을 시작해야 합니다. 다음 단계에서는 Azure SQL Managed Instance에 대한 연결을 만드는 프로세스를 안내합니다.

  1. 새 원본에서 Azure SQL Managed Instance를 선택합니다. 또는 OneLake 카탈로그에서 기존 Azure SQL Managed Instance 연결을 선택합니다.
    1. "SQL Server"(일반 연결 형식) 형식의 기존 Azure SQL Managed Instance 연결을 사용할 수 없습니다. 연결 유형이 "SQL Managed Instance"인 연결만 Azure SQL Managed Instance 데이터의 미러링에 지원됩니다.
  2. 새 연결을 선택한 경우 Azure SQL Managed Instance에 대한 연결 세부 정보를 입력합니다. 특정 데이터베이스에 연결해야 하며 전체 SQL 관리형 인스턴스 및 모든 데이터베이스에 대한 미러링을 설정할 수 없습니다.
    • 서버: Azure Portal의 Azure SQL Managed Instance 네트워킹 페이지(보안 메뉴 아래)로 이동하고 공용 엔드포인트 필드를 확인하여 서버 이름을 찾을 수 있습니다. 예들 들어 <managed_instance_name>.public.<dns_zone>.database.windows.net,3342입니다.
    • 데이터베이스: 미러링할 데이터베이스의 이름을 입력합니다.
    • 연결: 새 연결을 만듭니다.
    • 연결 이름: 자동 이름이 제공됩니다. 필요한 경우 나중에 이 SQL 관리형 인스턴스 데이터베이스 연결을 쉽게 찾을 수 있도록 변경할 수 있습니다.
    • 인증 종류:
      • 기본(SQL 인증)
      • 조직 계정(Microsoft Entra ID)
      • 테넌트 ID(Azure 서비스 주체)
  3. 연결을 선택합니다.

미러링 프로세스 시작

  1. 미러링 구성 화면에서 기본값으로 데이터베이스의 모든 데이터를 미러링할 수 있습니다.

    • 모든 데이터 미러링은 미러링이 시작된 후 생성된 모든 새 테이블이 미러링한다는 것을 의미합니다.

    • 필요에 따라 미러링할 특정 개체만 선택합니다. 모든 데이터 미러링 옵션을 사용 안 함으로 설정한 다음 데이터베이스에서 개별 테이블을 선택합니다.

    • 테이블을 미러링할 수 없는 경우 오류 아이콘과 관련 설명 텍스트가 표시됩니다. 마찬가지로 테이블이 제한 사항으로만 미러링할 수 있는 경우 관련 설명 텍스트와 함께 경고 아이콘이 표시됩니다.

    이 자습서에서는 모든 데이터 미러링 옵션을 선택합니다.

  2. 다음 화면에서 대상 항목에 이름을 지정하고 미러된 데이터베이스 만들기를 선택합니다. 이제 Fabric이 모든 것을 프로비전할 때까지 1~2분 정도 기다립니다.

  3. 2-5분 후 복제 모니터링을 선택하여 상태를 확인합니다.

  4. 몇 분 후에 상태가 실행 중으로 변경됩니다. 이는 테이블이 동기화되고 있음을 의미합니다.

    테이블 및 해당 복제 상태가 표시되지 않으면 몇 초 정도 기다린 다음 패널을 새로 고칩니다.

  5. 테이블의 초기 복사가 완료되면 마지막 새로 고침 열에 날짜가 나타납니다.

  6. 이제 데이터가 실행되고 있으므로 모든 Fabric에서 사용할 수 있는 다양한 분석 시나리오가 있습니다.

중요

원본 데이터베이스에 설정된 세분화된 보안은 Microsoft Fabric의 미러된 데이터베이스에서 다시 구성해야 합니다.

Fabric 미러링 모니터링

미러링이 구성되면 미러링 상태 페이지로 이동됩니다. 여기서 복제의 현재 상태를 모니터링할 수 있습니다.

복제 상태는 다음과 같습니다.

  • 전체 데이터베이스 수준 모니터링의 경우:

    • 실행 중 - 복제가 현재 실행 중이며 스냅샷 및 변경 데이터를 OneLake로 가져옵니다.
    • 경고와 함께 실행: 일시적인 오류와 함께 복제가 실행 중입니다.
    • 중지/중지됨 – 복제가 중지됩니다.
    • 오류 – 복구할 수 없는 복제의 심각한 오류입니다.
  • 테이블 수준 모니터링의 경우:

    • 실행 – 테이블의 데이터가 웨어하우스에 성공적으로 복제되고 있습니다.
    • 경고와 함께 실행 – 테이블에서 데이터를 복제할 때 치명적이 아닌 오류 경고
    • 중지/중지됨 - 복제가 중지되었습니다.
    • 오류 – 해당 테이블에 대한 복제에서 심각한 오류입니다.

초기 동기화가 완료되면 테이블 이름 옆에 마지막으로 완료된 타임스탬프가 표시됩니다. 이 타임스탬프는 Fabric이 마지막으로 테이블에서 변경 내용을 확인한 시간을 나타냅니다.

또한 행 복제 열을 기록해 둡니다. 테이블에 대해 복제된 모든 행의 개수를 계산합니다. 행이 복제될 때마다 다시 계산됩니다. 예를 들어 원본에 기본 키가 =1인 행을 삽입하면 "복제된 행" 수가 1씩 증가합니다. 동일한 기본 키를 사용하여 행을 업데이트하는 경우 Fabric에 다시 복제되고 행 수는 다시 복제된 행과 동일한 행임에도 불구하고 1씩 증가합니다. 패브릭은 삽입, 삭제, 업데이트를 포함하여 행에서 발생한 모든 복제를 계산합니다.

또한 모니터 복제 화면에는 미러링되는 테이블이 있는 오류 및 경고가 반영됩니다. 테이블에 지원되지 않는 열 형식이 있거나 전체 테이블이 지원되지 않는 경우(예: 메모리 또는 columnstore 인덱스) 제한 사항에 대한 알림이 이 화면에 표시됩니다. 복제 상태에 대한 자세한 내용 및 자세한 내용은 Monitor Fabric 미러된 데이터베이스 복제를 참조 하세요.

Important

원본 테이블에 업데이트가 없으면 복제자 엔진은 기하급수적으로 증가하는 기간(최대 1시간)으로 다시 시작합니다. 업데이트된 데이터가 검색된 후 복제자 엔진이 자동으로 일반 폴링을 다시 시작합니다.