서버리스 Dataproc란?

Dataproc Serverless를 사용하면 자체 클러스터를 프로비저닝하고 관리할 필요 없이 Spark 워크로드를 실행할 수 있습니다.

Dataproc Serverless 워크로드를 실행하는 방법에는 두 가지가 있습니다.

  1. Spark용 Dataproc Serverless: Google Cloud 콘솔, Google Cloud CLI 또는 Dataproc API를 사용하여 Dataproc Serverless 서비스에 일괄 워크로드를 제출합니다. 이 서비스는 관리되는 컴퓨팅 인프라에서 워크로드를 실행하여 필요에 따라 리소스를 자동 확장합니다. Dataproc Serverless 요금은 워크로드가 실행될 때만 적용됩니다.

    시작하려면 Apache Spark 일괄 워크로드 실행을 참조하세요.

  2. Spark를 위한 서버리스 Dataproc Interactive: Spark용 Dataproc Serverless Interactive 세션 중에 Jupyter 노트북에서 코드를 작성하고 실행합니다. 다음과 같은 방법으로 노트북 세션을 만들 수 있습니다.

    • Dataproc JupyterLab 플러그인을 사용하여 자신이 만들고 관리하는 템플릿에서 여러 노트북 세션을 만듭니다. 로컬 머신 또는 Compute Engine VM에 플러그인을 설치하면 다양한 Spark 커널 구성에 해당하는 다양한 카드가 JupyterLab 런처 페이지에 표시됩니다. 카드를 클릭하여 Dataproc Serverless 노트북 세션을 만든 후 노트북에서 코드 작성 및 테스트를 시작합니다.

    Dataproc JupyterLab 플러그인을 사용하면 JupyterLab 런처 페이지를 사용하여 다음 작업을 수행할 수도 있습니다.

    • Compute Engine 클러스터 기반 Dataproc을 만듭니다.
    • Compute Engine 기반 Dataproc 클러스터에 작업을 제출합니다.
    • Google Cloud 및 Spark 로그를 봅니다.

시작하려면 서버리스 일괄 및 대화형 노트북 세션에 JupyterLab 사용을 참조하세요.

Spark를 위한 서버리스 Dataproc와 Compute Engine 기반 Dataproc 비교

Compute Engine 기반 Dataproc은 인프라를 프로비저닝 및 관리하고 Spark 및 기타 오픈소스 처리 프레임워크에서 워크로드를 실행하려는 경우에 적합합니다. 다음 표는 Compute Engine에서 Dataproc실행과 Spark를 위한 서버리스 Dataproc의 주요 차이점을 나열합니다.

Capability Spark를 위한 서버리스 Dataproc Compute Engine 기반 Dataproc
처리 프레임워크 일괄: Spark 3.4 이전 버전
대화형: Spark 3.4 및 이전 버전용 PySpark 커널
Spark 3.3 이전 버전. Hive, Flink, Trino, Kafka와 같은 기타 오픈소스 프레임워크
서버리스 아니요
시작 시간 60s 90s
인프라 제어 아니요
리소스 관리 Spark 기반 YARN 기반
GPU 지원 예정
대화형 세션 아니요
커스텀 컨테이너 아니요
VM 액세스(예: SSH) 아니요
자바 버전 자바 17, 11 이전 버전 지원됨
OS Login 지원 * 아니요

참고:

  • OS 로그인 정책은 서버리스 Dataproc에 적용되지 않거나 지원되지 않습니다. 조직에서 OS Login 정책을 시행하는 경우 서버리스 Dataproc 워크로드가 실패합니다.

Dataproc Serverless 보안 규정 준수

Dataproc Serverless는 Dataproc이 준수하는 모든 데이터 상주, CMEK, VPC-SC, 기타 보안 요구사항을 준수합니다.

Spark용 Dataproc Serverless 일괄 워크로드 기능

다음과 같은 Spark용 Dataproc Serverless 일괄 워크로드 유형을 실행할 수 있습니다.

  • Pyspark
  • Spark SQL
  • Spark R
  • Spark(자바 또는 Scala)

Spark용 Dataproc Serverless 일괄 워크로드를 제출할 때 Spark 속성을 지정할 수 있습니다.