다음을 통해 공유


Direct Lake를 위한 레이크하우스 만들기

이 문서에서는 Lakehouse를 만들고, Lakehouse에 Delta 테이블을 만든 다음, Microsoft Fabric 작업 영역에서 Lakehouse에 대한 기본 시맨틱 모델을 만드는 방법을 설명합니다.

Direct Lake용 Lakehouse 만들기를 시작하시기 이전에 Direct Lake 개요를 읽어주세요.

레이크하우스 만들기

  1. Microsoft Fabric 작업 영역에서 새로운> 추가 옵션을 선택하신 다음에 데이터 엔지니어링에서 레이크하우스 타일을 선택해 주세요.

    데이터 엔지니어링의 레이크하우스 타일을 보여주는 스크린샷.

  2. 새 Lakehouse에서 대화 상자에 이름을 입력한 다음, 만들기를 선택합니다. 이름은 영숫자와 밑줄만 포함할 수 있습니다.

    새로운 레이크하우스 대화 상자를 보여주는 스크린샷.

  3. 새로운 레이크하우스가 만들어지고 성공적으로 열렸는지 확인해 주세요.

    작업 영역에서 만든 레이크하우스의 스크린샷.

레이크하우스에서 델타 테이블 만들기

새 Lakehouse를 만든 후 Direct Lake가 일부 데이터에 액세스할 수 있도록 Delta 테이블을 하나 이상 만들어야 합니다. Direct Lake는 parquet 형식의 파일을 읽을 수 있지만 최상의 성능을 위해 VORDER 압축 방법을 사용하여 데이터를 압축하는 것이 가장 좋습니다. VORDER는 Power BI 엔진의 기본 압축 알고리즘을 사용하여 데이터를 압축합니다. 이렇게 하면 엔진이 데이터를 가능한 한 빨리 메모리에 로드할 수 있습니다.

데이터 파이프라인과 스크립트를 포함하여 레이크하우스에 데이터를 로드하실 수 있는 다양한 옵션이 있습니다. 다음 단계에서는 PySpark를 사용하셔서 Azure Open Dataset를 기반으로 레이크하우스에 델타 테이블을 추가하는 것입니다:

  1. 새로 만든 레이크하우스 에서 노트북 열기를 선택하신 다음에, 새로운 노트북을 선택해 주세요.

    새로운 노트북 명령을 표시하는 스크린샷입니다.

  2. SPARK가 열린 모델에 액세스할 수 있도록 다음 코드 조각을 복사하여 첫 번째 코드 셀에 붙여 넣은 다음, Shift + Enter 키를 눌러 코드를 실행합니다.

    # Azure storage access info
    blob_account_name = "azureopendatastorage"
    blob_container_name = "holidaydatacontainer"
    blob_relative_path = "Processed"
    blob_sas_token = r""
    
    # Allow SPARK to read from Blob remotely
    wasbs_path = 'wasbs://%s@%s.blob.core.windows.net/%s' % (blob_container_name, blob_account_name, blob_relative_path)
    spark.conf.set(
      'fs.azure.sas.%s.%s.blob.core.windows.net' % (blob_container_name, blob_account_name),
      blob_sas_token)
    print('Remote blob path: ' + wasbs_path)
    
    
  3. 코드가 원격 Blob 경로를 성공적으로 출력했는지 확인합니다.

    원격 Blob 경로 출력을 보여 주는 스크린샷.

  4. 다음 코드를 복사하여 다음 셀에 붙여 넣은 다음, Shift + Enter 키를 누릅니다.

    # Read Parquet file into a DataFrame.
    df = spark.read.parquet(wasbs_path)
    print(df.printSchema())
    
    
  5. 코드가 DataFrame 스키마를 성공적으로 출력했는지 확인합니다.

    Dataframe 스키마 출력을 표시하는 스크린샷입니다.

  6. 다음 코드를 복사하여 다음 셀에 붙여 넣은 다음, Shift + Enter 키를 누릅니다. 첫 번째 명령은 VORDER 압축 메서드를 사용하도록 설정하고, 다음 명령은 DataFrame을 Lakehouse의 Delta 테이블로 저장합니다.

    # Save as delta table 
    spark.conf.set("spark.sql.parquet.vorder.enabled", "true")
    df.write.format("delta").saveAsTable("holidays")
    
    
  7. 모든 SPARK 작업이 완료되었는지 확인합니다. SPARK 작업 목록을 확장하여 자세한 내용을 확인합니다.

    확장된 SPARK 작업 목록을 표시하는 스크린샷입니다.

  8. 테이블이 성공적으로 만들어졌는지 확인하려면 왼쪽 위 영역에서 테이블 옆에 있는 줄임표()를 선택한 다음, 새로 고침을 선택한 다음, 테이블 노드를 확장합니다.

    테이블 노드 근처에서 새로 고침 명령을 표시하는 스크린샷입니다.

  9. 위 메서드나 지원되는 다른 메서드와 동일한 메서드를 사용하여 분석하려는 데이터에 대한 Delta 테이블을 더 추가합니다.

레이크하우스용 기본 Direct Lake 모델 만들기

  1. 레이크하우스에서 새로운 의미 체계 모델을 선택한 다음에 대화 상자에서 포함할 테이블을 선택합니다.

    대화 상자에서 스크린샷을 찍으셔서 새로운 모델을 만들어 보세요.

  2. Direct Lake 모델을 생성하려면 확인을 선택합니다. 모델은 레이크하우스 이름을 기준으로 작업 영역에 자동으로 저장된 이후에 모델을 열어 주세요.

    Power BI의 개방형 모델을 보여 주는 스크린샷.

  3. 데이터 모델 열기를 선택하여 테이블 관계 및 DAX 측정값을 추가할 수 있는 웹 모델링 환경을 엽니다.

    Power BI의 웹 모델링을 보여 주는 스크린샷.

관계 및 DAX 측정값 추가가 완료되면 다른 모델과 거의 동일한 방식으로 보고서를 만들고, 복합 모델을 빌드하고, XMLA 엔드포인트를 통해 모델을 쿼리할 수 있습니다.