KQL 데이터베이스의 데이터와 함께 Fabric Notebook 사용

Notebook은 데이터 분석 설명과 결과를 포함하는 읽을 수 있는 문서이며, 데이터 분석을 수행하기 위해 실행할 수 있는 실행 가능한 문서 모두를 의미합니다. 이 문서에서는 Fabric Notebook을 사용하여 KQL 데이터베이스의 데이터에 연결하고 원시 KQL(Kusto 쿼리 언어)을 사용하여 쿼리를 실행하는 방법을 알아봅니다. Notebook에 대한 자세한 내용은 Microsoft Fabric Notebook을 사용하는 방법을 참조하세요.

KQL 데이터베이스의 데이터와 함께 Fabric Notebook을 사용하는 몇 가지 방법이 있습니다.

필수 조건

OneLake 카탈로그에서 KQL 데이터베이스 데이터 로드

OneLake 카탈로그의 KQL 데이터베이스는 Notebook 환경에서 데이터 원본으로 사용할 수 있습니다. KQL 데이터베이스를 Notebook에 데이터 원본으로 추가한 다음 코드 셀에서 참조하여 KQL 쿼리를 실행할 수 있습니다.

  1. 작업 영역에서 기존 전자 필기장으로 이동하거나 새 전자 필기장을 만듭니다.

  2. Notebook의 탐색기 창에서 데이터 항목 추가 를 선택한 다음 OneLake 카탈로그에서 선택합니다.

    탐색기 창이 데이터 항목 탭으로 열려 있는 노트북의 스크린샷입니다. 데이터 항목 추가 단추가 확장되어 있으며 OneLake 카탈로그에서 선택 옵션이 강조 표시되어 있습니다.

  3. OneLake 카탈로그에서 KQL 데이터베이스로 이동합니다. Eventhouse에서 해당 데이터베이스를 찾거나, 형식별로 목록을 필터링하고, KQL 데이터베이스 형식을 선택하거나, 이름으로 검색할 수 있습니다.

    KQL 데이터베이스 필터가 강조 표시된 OneLake 카탈로그 필터의 스크린샷

  4. KQL 데이터베이스는 Notebook 탐색기 창의 OneLake 아래에 추가됩니다.

    1. 데이터베이스를 확장하여 데이터베이스 내의 테이블을 확인합니다.

    2. 테이블을 마우스로 가리키고 더 많은 ... 메뉴를 선택한 다음 데이터 로드를 선택합니다.

      테이블을 표시하도록 확장된 KQL 데이터베이스의 스크린샷 테이블의 더 많은 메뉴가 확장되어 데이터 로드 옵션이 표시됩니다.

  5. 테이블의 데이터가 Notebook의 새 코드 셀에 로드되고 KQL 데이터베이스에 대한 연결이 자동으로 설정됩니다. 그런 다음 코드 셀을 실행하여 데이터를 쿼리하고 Notebook 내에서 결과를 반환할 수 있습니다.

    KQL 데이터베이스의 데이터가 로드된 후의 Notebook 스크린샷 코드 조각이 강조 표시됩니다.

KQL 데이터 및 데이터 분석 옵션을 사용하는 Notebook 환경에 대한 자세한 내용은 xxxxxxx를 참조하세요.

노트북에서 Kusto 스니펫 사용

Fabric Notebook은 일반적으로 사용되는 코드 패턴을 쉽게 작성하는 데 도움이 되는 코드 조각을 제공합니다. 스니펫을 사용하여 KQL 데이터베이스에서 KQL로 데이터를 읽거나 쓸 수 있습니다.

  1. 기존 Notebook으로 이동하거나 새로 만듭니다.

  2. 먼저 코드 셀에서 kusto를 입력합니다.

    Kusto 코드 조각을 사용하여 Fabric Notebook에서 KQL을 사용하는 화면 캡처.

  3. 수행하려는 작업에 해당하는 조각을 선택합니다(KQL 데이터베이스에 데이터 쓰기 또는 KQL 데이터베이스에서 데이터 읽기).

    다음 코드 조각은 데이터 읽기 작업 예제를 보여줍니다.

    # Example of query for reading data from Kusto. Replace T with your <tablename>.
    kustoQuery = "['T'] | take 10"
    # The query URI for reading the data e.g. https://<>.kusto.data.microsoft.com.
    kustoUri = "https://<yourKQLdatabaseURI>.z0.kusto.data.microsoft.com"
    # The database with data to be read.
    database = "DocsDatabase"
    # The access credentials.
    accessToken = mssparkutils.credentials.getToken('kusto')
    kustoDf  = spark.read\
        .format("com.microsoft.kusto.spark.synapse.datasource")\
        .option("accessToken", accessToken)\
        .option("kustoCluster", kustoUri)\
        .option("kustoDatabase", database)\
        .option("kustoQuery", kustoQuery).load()
    
    # Example that uses the result data frame.
    kustoDf.show()
    

    다음 예제에서는 데이터 쓰기 작업 예제를 보여줍니다.

    # The Kusto cluster uri to write the data. The query Uri is of the form https://<>.kusto.data.microsoft.com 
    kustoUri = ""
    # The database to write the data
    database = ""
    # The table to write the data 
    table    = ""
    # The access credentials for the write
    accessToken = mssparkutils.credentials.getToken('kusto')
    
    # Generate a range of 5 rows with Id's 5 to 9
    data = spark.range(5,10) 
    
    # Write data to a Kusto table
    data.write.\
    format("com.microsoft.kusto.spark.synapse.datasource").\
    option("kustoCluster",kustoUri).\
    option("kustoDatabase",database).\
    option("kustoTable", table).\
    option("accessToken", accessToken ).\
    option("tableCreateOptions", "CreateIfNotExist").mode("Append").save()
    
  4. 데이터 셀에 있는 각 필드의 따옴표 안에 필요한 정보를 입력합니다.

    필드 설명 관련 링크
    kustoQuery 평가할 KQL 쿼리. KQL 개요
    KustoUri KQL 데이터베이스의 쿼리 URI. KQL 데이터베이스 URI 복사
    데이터베이스 KQL 데이터베이스의 이름. 기존 KQL 데이터베이스에 액세스
    데이터 테이블에 저장할 데이터.
  5. 코드 셀을 실행합니다.

KQL 데이터베이스에서 Notebook 만들기

Notebook을 KQL 데이터베이스에서 관련 항목으로 만들면 Notebook에 KQL 데이터베이스와 동일한 이름이 지정되고 연결 정보가 미리 채워집니다.

  1. KQL 데이터베이스로 이동합니다.

  2. 새 관련 항목>Notebook을 선택합니다.

    KQL 데이터베이스에서 Notebook을 관련 항목으로 만드는 스크린샷.

    KustoUri 및 데이터베이스 정보가 미리 채워진 노트북이 생성됩니다.

  3. kustoQuery 필드에서 평가할 KQL 쿼리를 입력합니다.

    KQL 데이터베이스에서 만든 Notebook의 스크린샷.

  4. 코드 셀을 실행합니다.