다음을 통해 공유


Eventhouse 및 KQL 데이터베이스 - Git 통합

다음 문서에서는 GitHub 또는 Azure Devops 리포지토리에 동기화되면 Eventhouse 및 KQL Database의 파일 구조를 자세히 설명합니다.

폴더 구조

작업 영역이 리포지토리에 동기화되면 작업 영역의 최상위 폴더와 동기화된 각 항목에 대한 하위 폴더가 표시됩니다. 각 하위 폴더의 형식은 항목 이름으로 지정됩니다. 항목 유형

Eventhouse 및 KQL 데이터베이스의 폴더 내에 다음 파일이 표시됩니다.

  • 플랫폼: 표시 이름 및 설명과 같은 패브릭 플랫폼 값을 정의합니다.
  • 속성: 항목별 값을 정의합니다.

또한 KQL 데이터베이스의 경우 KQL 데이터베이스 내에 항목을 배포하는 데 사용되는 스키마 파일이 표시됩니다.

폴더 구조의 예는 다음과 같습니다.

리포지토리

  • 작업 영역 A
    • 아이템_A.Eventhouse
      • .플랫폼
      • EventhouseProperties.json
    • Item_B.KQLDatabase
      • .플랫폼
      • DatabaseProperties.json
      • DatabaseSchema.kql
  • 작업 영역 B
    • Item_C.Eventhouse
      • .플랫폼
      • EventhouseProperties.json
    • Item_D.KQLDatabase
      • .플랫폼
      • DatabaseProperties.json
      • DatabaseSchema.kql

Eventhouse 파일

다음 파일은 eventhouse 폴더에 포함됩니다.

  • .플랫폼

    이 파일은 다음 스키마를 사용하여 eventhouse를 정의합니다.

    {
      "$schema": "https://developer.microsoft.com/json-schemas/fabric/gitIntegration/platformProperties/2.0.0/schema.json",
      "metadata": {
        "type": "Eventhouse",
        "displayName": "",
        "description": ""
      },
      "config": {
        "version": "2.0",
        "logicalId": ""
      }
    }
    
  • EventhouseProperties.json

    이 파일을 사용하면 eventhouse 항목에 대한 플랫폼 수준 설정을 구성할 수 있습니다.

KQL 데이터베이스 파일

다음 파일은 KQL 데이터베이스 폴더에 포함되어 있습니다.

  • .플랫폼

    이 파일은 다음 스키마를 사용하여 KQL 데이터베이스를 정의합니다.

    {
      "$schema": "https://developer.microsoft.com/json-schemas/fabric/gitIntegration/platformProperties/2.0.0/schema.json",
      "metadata": {
        "type": "KQLDatabase",
        "displayName": "",
        "description": ""
      },
      "config": {
        "version": "2.0",
        "logicalId": ""
      }
    }
    
  • DatabaseProperties.json

    이 파일은 다음 스키마를 사용하여 KQL(Kusto Query Language) 데이터베이스 항목에 대한 플랫폼 수준 설정을 구성합니다.

    {
      "databaseType": "ReadWrite",
      "parentEventhouseItemId": "",
      "oneLakeCachingPeriod": "P36500D",
      "oneLakeStandardStoragePeriod": "P36500D"
    }
    

    DatabaseProperties.json 파일의 속성은 다음 표에 설명되어 있습니다.

    재산 설명
    데이터베이스 유형 유효한 값: ReadWrite
    parentEventhouseItemId 부모 이벤트 하우스의 논리적 ID입니다. 이 값은 수정하면 안 됩니다.
    oneLakeCachingPeriod 캐싱 정책에 대한 데이터베이스 수준 설정입니다.
    oneLakeStandardStoragePeriod 보존 정책에 대한 데이터베이스 수준 설정입니다.
  • DatabaseSchema.kql

    파일은 KQL 데이터베이스에 대한 데이터 수준 설정을 구성하는 KQL 스크립트입니다. KQL 데이터베이스가 git에 동기화되면 자동으로 생성됩니다. 파일은 패브릭 작업 영역과 동기화할 때 실행됩니다.

    지원되는 다음 명령을 추가하거나 수정하여 이 스크립트를 변경할 수 있습니다.

    Database 개체 지원되는 명령
    테이블 / 표 만들기 또는 병합
    기능 만들기 또는 변경
    테이블 정책 업데이트 수정하다
    열 인코딩 정책 수정하다
    구체화된 뷰 만들기 또는 변경
    테이블 인제스트 매핑 만들기 또는 변경

    다음 예제는 테이블 및 해당 수집 매핑을 만드는 KQL 스크립트입니다.

    // KQL script
    // Use management commands in this script to configure your database items, such as tables, functions, materialized views, and more.
    
    .create-merge table SampleTable (UsageDate:datetime, PublisherType:string, ChargeType:string, ServiceName:string, ServiceTier:string, Meter:string, PartNumber:string, CostUSD:real, Cost:real, Currency:string)
    .create-or-alter table SampleTable ingestion csv mapping 'SampleTable_mapping' "[{'Properties':{'Ordinal':'0'},'column':'UsageDate','datatype':''},{'Properties':{'Ordinal':'1'},'column':'PublisherType','datatype':''}]"