Snowflake Notebooks에서 Spark 워크로드 실행하기

Spark 클러스터를 관리할 필요 없이 Snowflake Notebooks에서 대화형으로 Spark 워크로드를 실행할 수 있습니다. 워크로드는 Snowflake 인프라에서 실행됩니다.

Snowflake에서 실행할 Spark 워크로드를 개발하기 위한 클라이언트로 Snowflake Notebooks를 사용하려면 다음을 수행합니다.

  1. Snowflake Notebooks를 실행합니다.

  2. 노트북 내에서 Spark 세션을 시작합니다.

  3. 데이터(예: 고가치 고객 주문 필터링 또는 수익 집계)를 로드, 변환, 분석하기 위한 PySpark 코드를 작성합니다.

웨어하우스에서 실행되는 Snowflake Notebook 사용하기

Snowflake Notebooks에 대한 자세한 내용은 노트북 만들기 섹션을 참조하세요.

  1. 다음 단계를 완료하여 Snowflake Notebook을 만듭니다.

    1. Snowsight 에 로그인합니다.

    2. 탐색 메뉴에서 + Create » Notebook » :ui:`New Notebook`을 선택합니다.

    3. Create notebook 대화 상자에서 새 노트북의 이름, 데이터베이스, 스키마를 입력합니다.

      자세한 내용은 노트북 만들기 섹션을 참조하십시오.

    4. Runtime 에서 Run on warehouse 을 선택합니다.

    5. Runtime version 에서 Snowflake Warehouse Runtime 2.0 을 선택합니다.

      버전 2.0을 선택하면 필요한 종속성 지원(Python 3.10을 포함)이 제공됩니다. 자세한 내용은 노트북 런타임 섹션을 참조하십시오.

    6. Query warehouseNotebook warehouse`의 경우 :doc:/user-guide/ui-snowsight/notebooks-create`에 설명된 대로 쿼리 코드와 커널 및 Python 코드를 실행할 웨어하우스를 선택합니다.

    7. Create 를 선택합니다.

    8. 만든 노트북의 :ui:`Packages`에서 노트북의 코드를 지원하는 다음 패키지가 나열되어 있는지 확인하세요.

      • Python, 버전 3.10 이상

      • snowflake-dataframe-processor, 최신 버전

        이러한 패키지를 추가해야 하는 경우 다음 단계를 따르세요.

        1. :ui:`Anaconda Packages`에서 검색 상자에 패키지 이름을 입력합니다.

        2. 패키지 이름을 선택합니다.

        3. Save 를 선택합니다.

  2. Snowpark Connect for Spark 서버에 연결하고 연결을 테스트하려면 다음 코드를 복사하여 만든 노트북의 Python 셀에 붙여넣습니다.

    # Set up the env for Java libraries and enable the Spark Connect Mode
    
    import os
    
    os.environ['JAVA_HOME'] = os.environ["CONDA_PREFIX"]
    os.environ['JAVA_LD_LIBRARY_PATH'] = os.path.join(os.environ["CONDA_PREFIX"], 'lib', 'server')
    os.environ["SPARK_LOCAL_HOSTNAME"] = "127.0.0.1"
    os.environ["SPARK_CONNECT_MODE_ENABLED"] = "1"
    
    from snowflake import snowpark_connect
    from snowflake.snowpark.context import get_active_session
    import traceback
    
    session = get_active_session()
    snowpark_connect.start_session(snowpark_session = session)
    
    Copy
  3. Python 코드에 새로운 셀을 추가하려면 방금 붙여넣은 코드가 있는 셀을 마우스로 가리킨 다음 :ui:`+ Python`을 선택합니다.

  4. |spconnect|를 사용하는 코드를 실행하려면 다음 코드를 복사한 후 추가한 새 Python 셀에 붙여넣습니다.

    # Here is your normal pyspark code. You can of course have them in other Python Cells
    spark = snowpark_connect.get_session()
    df = spark.sql("show schemas").limit(10)
    df.show()
    
    Copy