다음을 통해 공유


관리 ID를 사용하여 연속 내보내기 작업 실행

적용 대상: Azure Data Explorer

연속 내보내기 작업 주기적으로 실행되는 쿼리를 사용하여 외부 테이블 데이터를 내보냅니다.

연속 내보내기 작업은 다음 시나리오에서 관리 ID 구성해야 합니다.

관리 ID로 구성된 연속 내보내기 작업은 관리 ID를 대신하여 수행됩니다.

이 문서에서는 시스템 할당 또는 사용자 할당 관리 ID를 구성하고 해당 ID를 사용하여 연속 내보내기 작업을 만드는 방법을 알아봅니다.

필수 구성 요소

관리 ID 구성

관리 ID에는 두 가지 유형이 있습니다.

  • 시스템 할당: 시스템 할당 ID가 클러스터에 연결되고 클러스터가 제거되면 제거됩니다. 클러스터당 하나의 시스템 할당 ID만 허용됩니다.

  • 사용자 할당: 사용자가 할당한 관리 ID는 독립 실행형 Azure 리소스입니다. 여러 사용자 할당 ID를 클러스터에 할당할 수 있습니다.

다음 탭 중 하나를 선택하여 기본 관리 ID 유형을 설정합니다.

  1. 단계에 따라 사용자 할당 ID추가합니다.

  2. Azure Portal의 관리 ID 리소스 왼쪽 메뉴에서 속성선택합니다. 다음 단계에서 사용할 테넌트 ID보안 주체 ID 복사하고 저장합니다.

    관리 ID ID가 있는 Azure Portal 영역의 스크린샷

  3. 다음 .alter-merge 정책 managed_identity 명령을 실행하여 <objectId> 이전 단계의 관리 ID 개체 ID로 바꿉니다. 이 명령은 관리 ID를 연속 내보내기에서 사용할 수 있도록 클러스터에서 관리 ID 정책 설정합니다.

    .alter-merge cluster policy managed_identity ```[
        {
          "ObjectId": "<objectId>",
          "AllowedUsages": "AutomatedFlows"
        }
    ]```
    

    메모

    특정 데이터베이스에서 정책을 설정하려면 cluster대신 database <DatabaseName> 사용합니다.

  4. 다음 명령을 실행하여 외부 테이블이 포함된 데이터베이스와 같이 연속 내보내기에 사용되는 모든 데이터베이스에 대해 관리 ID 데이터베이스 뷰어 권한을 부여합니다.

    .add database <DatabaseName> viewers ('aadapp=<objectId>;<tenantId>')
    

    <DatabaseName> 관련 데이터베이스로 바꾸고, 2단계의 관리 ID 보안 주체 ID<objectId>, 2단계의 Microsoft Entra ID 테넌트 ID<tenantId>.

외부 테이블 설정

외부 테이블은 Azure Blob Storage, Azure Data Lake Storage Gen1, Azure Data Lake Storage Gen2 또는 SQL Server와 같은 Azure Storage에 있는 데이터를 참조합니다.

다음 탭 중 하나를 선택하여 Azure Storage 또는 SQL Server 외부 테이블을 설정합니다.

  • Azure Storage
  • SQL Server
  1. 스토리지 연결 문자열 템플릿을 기반으로 연결 문자열을 만듭니다. 이 문자열은 액세스할 리소스와 해당 인증 정보를 나타냅니다. 연속 내보내기 흐름의 경우 가장 인증것이 좋습니다.

  2. .create 또는 .alter 외부 테이블 명령을 실행하여 테이블을 만듭니다. 이전 단계의 연결 문자열을 storageConnectionString 인수로 사용합니다.

    예를 들어 다음 명령은 Azure Blob Storage의 mystorageaccountmycontainer CSV 형식 데이터를 참조하는 MyExternalTable 만듭니다. 테이블에는 정수 x 열과 문자열 s열이 하나씩 있습니다. 연결 문자열은 가장 인증을 사용하여 데이터 저장소에 액세스하도록 나타내는 ;impersonate끝납니다.

    .create external table MyExternalTable (x:int, s:string) kind=storage dataformat=csv 
    ( 
        h@'https://mystorageaccount.blob.core.windows.net/mycontainer;impersonate' 
    )
    
  3. 관련 외부 데이터 저장소에 대한 관리 ID 쓰기 권한을 부여합니다. 연속 내보내기 작업이 관리 ID를 대신하여 데이터 저장소로 데이터를 내보내기 때문에 관리 ID에 쓰기 권한이 필요합니다.

    외부 데이터 저장소 필요한 권한 사용 권한 부여
    Azure Blob Storage Storage Blob 데이터 기여자 Azure 역할 할당
    Data Lake Storage Gen2 Storage Blob 데이터 기여자 Azure 역할 할당
    Data Lake Storage Gen1 공헌자 Azure 역할 할당

연속 내보내기 작업 만들기

다음 탭 중 하나를 선택하여 사용자 할당 또는 시스템 할당 관리 ID를 대신하여 실행되는 연속 내보내기 작업을 만듭니다.

managedIdentity 속성이 관리 ID 개체 ID로 설정된 .create-or-alter 연속 내보내기 명령을 실행합니다.

예를 들어 다음 명령은 사용자가 할당한 관리 ID를 대신하여 MyTable 데이터를 MyExternalTable 내보내는 MyExport 연속 내보내기 작업을 만듭니다. <objectId> 관리 ID 개체 ID여야 합니다.

.create-or-alter continuous-export MyExport over (MyTable) to table MyExternalTable with (managedIdentity=<objectId>, intervalBetweenRuns=5m) <| MyTable