참고
이 문서에서는 Databricks Runtime 13.3 LTS 이상에 대한 Databricks Connect에 대해 설명합니다.
레거시 버전의 Databricks Connect에 대한 자세한 내용은 Databricks Runtime 12.2 LTS 이하의 Databricks Connect를 참조 하세요.
Databricks Connect는 Databricks Runtime용 클라이언트 라이브러리로, Visual Studio Code, PyCharm 및 IntelliJ IDEA, Notebook 및 사용자 지정 애플리케이션과 같은 IDE에서 Azure Databricks 컴퓨팅에 연결하여 Azure Databricks Lakehouse를 기반으로 하는 새로운 대화형 사용자 환경을 사용하도록 설정할 수 있습니다.
Databricks Connect는 다음 언어로 사용할 수 있습니다.
Databricks Connect로 무엇을 할 수 있나요?
Databricks Connect를 사용하여 Spark API를 사용하여 코드를 작성하고 로컬 Spark 세션 대신 Azure Databricks 컴퓨팅에서 원격으로 실행할 수 있습니다.
모든 IDE에서 대화형으로 개발하고 디버그합니다. Databricks Connect를 사용하면 개발자가 IDE의 네이티브 실행 및 디버깅 기능을 사용하여 Databricks 컴퓨팅에서 코드를 개발하고 디버그할 수 있습니다. Databricks Visual Studio Code 확장은 Databricks Connect를 사용하여 Databricks에서 사용자 코드의 기본 제공 디버깅을 제공합니다.
대화형 데이터 앱을 빌드합니다. JDBC 드라이버와 마찬가지로 Databricks Connect 라이브러리를 모든 애플리케이션에 포함하여 Databricks와 상호 작용할 수 있습니다. Databricks Connect는 PySpark를 통해 Python의 완전한 표현력을 제공하므로 SQL 프로그래밍 언어 임피다스 불일치를 제거하고 Databricks 서버리스 확장 가능한 컴퓨팅에서 Spark를 사용하여 모든 데이터 변환을 실행할 수 있습니다.
어떻게 작동하나요?
Databricks Connect는 데이터 프레임 API를 사용하여 Spark 클러스터에 대한 원격 연결을 허용하는 Apache Spark에 대한 분리된 클라이언트-서버 아키텍처가 있는 오픈 소스 Spark Connect를 기반으로 합니다. 기본 프로토콜은 해결되지 않은 Spark 논리 계획과 gRPC 위에 Apache 화살표를 사용합니다. 클라이언트 API는 씬(thin)으로 설계되어 애플리케이션 서버, IDE, Notebook 및 프로그래밍 언어 등 어디에나 포함할 수 있습니다.
- 일반 코드는 로컬로 실행됩니다. Python 및 Scala 코드는 클라이언트 쪽에서 실행되어 대화형 디버깅을 사용하도록 설정합니다. 모든 코드는 로컬로 실행되고 모든 Spark 코드는 원격 클러스터에서 계속 실행됩니다.
-
DataFrame API는 Databricks 컴퓨팅에서 실행됩니다. 모든 데이터 변환은 Spark 계획으로 변환되고 원격 Spark 세션을 통해 Databricks 컴퓨팅에서 실행됩니다. 와 같은
collect()show()toPandas()명령을 사용할 때 로컬 클라이언트에서 구체화됩니다. -
UDF 코드는 Databricks 컴퓨팅에서 실행됩니다. 로컬로 정의된 UDF는 직렬화되어 실행되는 클러스터로 전송됩니다. Databricks에서 사용자 코드를 실행하는 API에는 UDF,
foreach및foreachBatchtransformWithState. - 종속성 관리의 경우:
- 로컬 컴퓨터에 애플리케이션 종속성을 설치합니다. 이러한 작업은 로컬로 실행되며 Python 가상 환경의 일부와 같이 프로젝트의 일부로 설치해야 합니다.
- Databricks에 UDF 종속성을 설치합니다. 종속성이 있는 UDF를 참조하세요.
Databricks Connect 및 Spark Connect는 어떻게 관련되어 있나요?
Spark Connect 는 데이터 프레임 API를 사용하여 Spark 워크로드를 원격으로 실행할 수 있도록 하는 Apache Spark 내의 오픈 소스 gRPC 기반 프로토콜입니다.
Databricks Runtime 13.3 LTS 이상의 경우 Databricks Connect는 Databricks 컴퓨팅 모드 및 Unity 카탈로그 작업을 지원하기 위한 추가 및 수정 사항이 포함된 Spark Connect의 확장입니다.
다음 단계
Databricks Connect 솔루션 개발을 빠르게 시작하려면 다음 자습서를 참조하세요.
- Python을 위한 Databricks Connect 클래식 컴퓨트 튜토리얼
- Python용 Databricks Connect 서버리스 컴퓨팅 자습서
- Databricks Connect for Scala 클래식 컴퓨팅 자습서
- Databricks Connect for Scala 서버리스 컴퓨팅 자습서
- R용 Databricks Connect 자습서
Databricks Connect를 사용하는 예제 애플리케이션을 보려면 다음 예제를 포함하는 GitHub 예제 리포지토리를 참조하세요.