Azure Databricks 작업에서 Python 휠 파일 사용

Python 휠 파일은 Python 애플리케이션을 실행하는 데 필요한 파일을 패키지하고 배포하는 표준 방법입니다. Python 휠 작업을 사용하면 Azure Databricks 작업에서 Python 코드를 빠르고 안정적으로 설치할 수 있습니다. 이 문서에서는 Python 휠 파일 및 Python 휠 파일에 패키지된 애플리케이션을 실행하는 작업을 만드는 예제를 제공합니다. 이 예에서는 다음을 수행합니다.

  • 예제 애플리케이션을 정의하는 Python 파일을 만듭니다.
  • 예제 파일을 Python 휠 파일에 번들로 묶습니다.
  • Python 휠 파일을 실행하는 작업을 만듭니다.
  • 작업을 실행하고 결과를 봅니다.

시작하기 전에

이 예를 완료하려면 다음이 필요합니다.

  • Python3

  • Python wheelsetuptool 패키지. pip를 사용하여 이러한 패키지를 설치할 수 있습니다. 예를 들어, 다음 명령을 실행하여 이러한 패키지를 설치할 수 있습니다.

    pip install wheel setuptools
    

1단계: 예를 위한 로컬 디렉터리 만들기

예제 코드와 만들어진 아티팩트를 보관할 로컬 디렉터리를 만듭니다(예: databricks_wheel_test).

2단계: 예제 Python 스크립트 만들기

다음 Python 예제는 입력 인수를 읽고 해당 인수를 출력하는 간단한 스크립트입니다. 이 스크립트를 복사하고 이전 단계에서 만든 디렉터리의 my_test_code/__main__.py라는 경로에 저장합니다.

"""
The entry point of the Python Wheel
"""

import sys

def main():
  # This method will print the provided arguments
  print('Hello from my func')
  print('Got arguments:')
  print(sys.argv)

if __name__ == '__main__':
  main()

3단계: 패키지에 대한 메타데이터 파일 만들기

다음 파일에는 패키지를 설명하는 메타데이터가 포함되어 있습니다. 이것을 1단계에서 만든 디렉터리의 my_test_code/__init__.py라는 경로에 저장합니다.

__version__ = "0.0.1"
__author__ = "Databricks"

4단계: Python 휠 파일 만들기

Python 아티팩트를 Python 휠 파일로 변환하려면 패키지 이름 및 진입점과 같은 패키지 메타데이터를 지정해야 합니다. 다음 스크립트는 이 메타데이터를 정의합니다.

참고 항목

이 스크립트에 정의된 entry_points는 Azure Databricks 워크플로에서 패키지를 실행하는 데 사용됩니다. 각 값에서 entry_points이전 값 = (이 예제 run에서는)은 진입점의 이름이고 Python 휠 작업을 구성하는 데 사용됩니다.

  1. 1단계에서 만든 디렉터리의 루트에 있는 setup.py는 파일에 이 스크립트를 저장합니다.

    from setuptools import setup, find_packages
    
    import my_test_code
    
    setup(
      name='my_test_package',
      version=my_test_code.__version__,
      author=my_test_code.__author__,
      url='https://databricks.com',
      author_email='john.doe@databricks.com',
      description='my test wheel',
      packages=find_packages(include=['my_test_code']),
      entry_points={
        'group_1': 'run=my_test_code.__main__:main'
      },
      install_requires=[
        'setuptools'
      ]
    )
    
  2. 1단계에서 만든 디렉터리로 변경하고 다음 명령을 실행하여 코드를 Python 휠 배포에 패키지합니다.

    python3 setup.py bdist_wheel
    

이 명령은 Python 휠 파일을 만들고 디렉터리의 파일에 저장합니다 dist/my_test_package-0.0.1-py3.none-any.whl .

5단계. Python 휠 파일을 실행하는 Azure Databricks 작업 만들기

  1. Azure Databricks 방문 페이지로 이동하여 다음 중 하나를 수행합니다.
    • 사이드바에서 워크플로를 클릭하고 워크플로 아이콘을 클릭합니다.작업 만들기 단추
    • 사이드바에서 새로 만들기를 클릭하고 새 아이콘메뉴에서 작업을 선택합니다.
  2. 작업 탭에 나타나는 작업 대화 상자에서 작업 이름 추가…를 작업 이름(예: Python wheel example)으로 바꿉니다.
  3. 작업 이름에 작업 이름(예: python_wheel_task)을 입력합니다.
  4. 형식에서 Python 휠을 선택합니다.
  5. 패키지 이름my_test_package를 입력합니다. 패키지 이름은 setup.py 스크립트의 name 변수에 할당된 값입니다.
  6. run를 입력합니다. 진입점은 setup.py 스크립트의 entry_points 컬렉션에 지정된 값 중 하나입니다. 이 예제에서는 run가 정의된 유일한 진입점입니다.
  7. 클러스터에서 호환되는 클러스터를 선택합니다. 클러스터 범위 라이브러리를 참조 하세요.
  8. 종속 라이브러리에서 를 클릭합니다. 작업 영역이 선택된 종속 라이브러리 추가 대화 상자에서 4단계에서 만든 파일을 대화 상자의 Drop 파일 여기 영역으로 끌어 my_test_package-0.0.1-py3-none-any.whl 옵니다.
  9. 추가를 클릭합니다.
  10. 개 변수치 인수 또는 드 인수를 선택하여 각 매개 변수의 키와 값을 입력합니다. 위치 및 키워드 인수는 모두 명령줄 인수로 Python 휠 작업에 전달됩니다.
    • 위치 인수를 입력하려면 매개 변수를 JSON 형식 문자열 배열로 입력합니다(예: ["first argument","first value","second argument","second value"]).
    • 키워드 인수를 입력하려면 + 추가를 클릭하고 키와 값을 입력합니다. + 추가를 다시 클릭하여 인수를 더 입력합니다.
  11. 작업 저장을 클릭합니다.

6단계: 작업 실행 및 작업 실행 세부 정보 보기

워크플로를 실행하려면 클릭합니다 지금 실행 단추 . 실행 세부 정보를 보려면 트리거된 실행 팝업에서 실행 보기를 클릭하거나 작업 실행 보기에서 실행에 대한 시작 시간 열의 링크를 클릭합니다.

실행이 완료되면 작업에 전달된 인수를 포함하여 출력이 출력 패널에 표시됩니다.

다음 단계

Azure Databricks 작업을 만들고 실행하는 방법에 대한 자세한 내용은 Azure Databricks 작업 만들기 및 실행을 참조 하세요.