내용으로 건너뛰기

Amazon EMR Studio Workspace에서 Spark 구성을 수정하려면 어떻게 해야 합니까?

2분 분량
0

Amazon EMR Studio Workspace에서 Spark 구성을 수정하려고 합니다.

간략한 설명

Amazon Elastic Compute Cloud(Amazon EC2) 또는 EMR Serverless 원격 클러스터의 Spark 구성을 사용자 지정하려면 Sparkmagic 명령을 사용하여 executorMemory, executorCores 및 리소스 할당을 변경하십시오.

Amazon Elastic Kubernetes Service(Amazon EKS) 원격 클러스터의 경우 SparkContext 객체에서 Spark 구성을 설정합니다. Amazon EKS는 Sparkmagic 명령을 지원하지 않습니다. 자세한 내용은 고려 사항 및 제한 사항을 참조하십시오.

해결 방법

Amazon EC2 또는 EMR Serverless 원격 클러스터의 Spark 구성 사용자 지정

다음 단계를 완료하십시오.

  1. 작업 구성을 수정하려면 Workspace 셀에서 %%configure 명령을 실행합니다.

    예:

    %%configure -f
    {"executorMemory":"4G"}

    참고: 앞의 예시에서 executorMemory를 Spark 작업에 맞게 수정했습니다.

  2. -conf 옵션과 함께 전달하는 추가 구성에 대해서는 중첩된 JSON 객체를 사용하십시오.
    참고: 객체를 SparkContext 또는 Sparksession으로 전달하려면 conf 대신 -conf를 사용합니다. 자세한 내용은 Apache Livy 웹 사이트의 Spark 구성을 참조하십시오.

  3. 예:

    %%configure -f
    {
      "driverMemory": "4G",
      "driverCores": 4,
      "executorMemory" : "8G",
      "executorCores": 2,
      "conf": {
         "spark.dynamicAllocation.maxExecutors" : 10,
         "spark.dynamicAllocation.minExecutors": 1
      }
    }

Amazon EKS 클러스터에 연결된 Workspace에서 Spark 구성을 사용자 지정하려면 SparkContext 객체에서 Spark 구성을 설정하십시오.

spark.conf.set("spark.executor.memory", "8g")

Spark 구성 확인

다음 작업을 수행하십시오.

  • Amazon EC2 및 EMR Serverless의 경우 클라이언트 측 Workspace에서 %%info 명령을 실행합니다.

    출력 예시:

    Current session configs: {'driverMemory': '4G', 'driverCores': 4, 'executorMemory': '8G', 'executorCores': 2, 'conf': {'spark.dynamicAllocation.maxExecutors': 10, 'spark.dynamicAllocation.minExecutors': 1}, 'proxyUser': 'assumed-role_Admin_biditdas-Isengard', 'kind': 'pyspark'}
  • Amazon EC2의 경우 클러스터의 프라이머리 노드에 있는 /var/log/livy/livy-livy-server.out에서 로그를 확인합니다. Spark 세션이 시작된 경우 다음과 유사한 로그 항목이 표시됩니다.

    20/06/24 10:11:22 INFO InteractiveSession$: Creating Interactive session 2: [owner: null, request: [kind: pyspark, proxyUser: None, executorMemory: 4G, conf: spark.dynamicAllocation.enabled -> false, heartbeatTimeoutInSecond: 0]]
  • Amazon EKS의 경우 Spark UI를 사용합니다. 

관련 정보

magic 명령으로 커널 향상

Apache Livy 웹 사이트의 REST API

GitHub 웹 사이트의 새 커널에서 사용 가능한 기능

AWS 공식업데이트됨 2년 전