← 학습 카테고리

Learn

Databricks

14개 모듈 · 현재 3번째

Databricks 모듈 3/14 databricks-learn-03

Databricks Runtime과 Photon 엔진

60 Databricks Interview Questions Senior DEs Actually Ask (2026) — 미상 (DataVidhya 블로그, 2026) Core Architecture & Fundamentals, Q4 (pp.3-4) 및 Performance Tuning & Optimization, Q40 (p.11) + FAQ 'What is Photon in Databricks?' (p.19)

이 모듈을 다 읽으면

  • Databricks Runtime(DBR)이 오픈소스 Spark와 다르게 포함하는 요소를 나열할 수 있다
  • Photon 엔진이 표준 Spark 실행과 무엇이 다른지, 왜 빠른지 설명할 수 있다
  • 'Koalas'라는 옛 용어가 왜 현재는 다른 이름으로 불리는지 설명할 수 있다

DBR은 Apache Spark를 기반으로 하되, 최적화된 외부 커넥터, 특화 라이브러리, 그리고 성능 향상 기능(Photon)을 포함해 잦은 빈도로 업데이트되는 관리형 런타임이다. Photon은 Databricks가 C++로 처음부터 새로 작성한 네이티브 벡터화 실행 엔진으로, JVM 기반 표준 Spark 엔진과 달리 데이터를 행 단위가 아니라 배치 단위로 처리해 조인·집계가 많은 SQL/DataFrame 워크로드에서 큰 성능 향상을 제공한다.

DBR이 오픈소스 Spark에 더하는 것

Databricks Runtime은 클러스터에서 실행되는 핵심 소프트웨어 구성 요소의 집합이다. Apache Spark를 포함하지만 크게 수정되어, Snowflake·Redshift 등을 위한 최적화된 커넥터, Delta Lake 같은 특화 라이브러리, 그리고 Photon 같은 성능 향상 기능을 함께 제공한다. DBR은 최신 보안 패치와 Spark 성능 개선을 반영하기 위해 자주 업데이트된다.

원문은 특화 라이브러리의 예로 'Koalas'를 든다. — 정정: Koalas는 pandas와 유사한 API를 Spark 위에서 쓸 수 있게 해주던 독립 오픈소스 프로젝트였지만, 2021년 Spark 3.2부터 이 기능이 Spark 본체에 'pandas API on Spark'(`pyspark.pandas`)로 정식 병합되었다. 독립 Koalas 프로젝트는 이후 개발이 종료(archived)되었으므로, 2026년 현재 DBR이 포함하는 것은 별도의 'Koalas' 라이브러리가 아니라 PySpark에 내장된 pandas API다.

핵심 포인트

  • DBR은 Apache Spark에 최적화된 커넥터·특화 라이브러리·성능 기능(Photon)을 더한 관리형 런타임이다
  • 'Koalas'는 현재 별도 라이브러리가 아니라 PySpark에 병합된 'pandas API on Spark(pyspark.pandas)'로 존재한다 — 정정
  • DBR은 보안 패치와 Spark 성능 개선을 위해 자주 업데이트된다

Photon: C++ 벡터화 실행 엔진

Photon은 Databricks가 처음부터 C++로 새로 작성한 네이티브 실행 엔진이다. JVM 위에서 동작하는 표준 Spark 엔진과 달리, Photon은 벡터화 실행(vectorized execution)을 사용해 데이터를 행(row) 단위가 아니라 배치(batch) 단위로 처리한다. 현대 CPU의 명령어 집합(SIMD 등)을 활용하도록 특화되어 있어, 조인과 집계가 많은 SQL 및 DataFrame 연산에서 상당한 성능 향상을 제공한다. SQL 웨어하우스와 클러스터에서 체크박스 하나로 켤 수 있으며 코드 변경이 필요 없다.

이 카테고리의 '아키텍처 개요' 모듈에서 언급했듯, Databricks가 과거 'Delta Engine'이라고 부르던 것이 바로 이 Photon 계열 최적화의 이전 브랜드명이다. 현재는 Photon이 공식 명칭이며 Delta Engine이라는 이름은 더 이상 쓰이지 않는다.

핵심 포인트

  • Photon은 JVM이 아니라 C++로 새로 작성된 네이티브 벡터화 실행 엔진이다
  • 행 단위가 아니라 배치 단위로 데이터를 처리해 조인·집계가 많은 SQL/DataFrame 워크로드를 가속한다
  • SQL 웨어하우스·클러스터에서 코드 변경 없이 활성화할 수 있다
  • 과거 'Delta Engine'으로 불리던 것이 Photon으로 이름이 통합되었다 — 정정(아키텍처 개요 모듈과 연결)