노트북에 Spark API가 포함되어 있거나 기계 학습 모델 또는 모델 플로우를 Spark 런타임으로 작성하려면 해당 도구를 Spark 서비스 또는 환경과 연관시켜야 합니다. Spark 환경에서는 Spark 드라이버 크기 및 실행자의 크기와 수를 구성할 수 있습니다.
Spark 옵션
Watson Studio에서 다음을 사용할 수 있습니다.
Spark 환경은 Watson Studio에서 제공됩니다.
모든 Watson Studio 사용자는 다양한 하드웨어 및 소프트웨어 구성으로 Spark 환경을 작성할 수 있습니다. Spark 환경은 Spark 커널을 서비스(SparkR, PySpark 및 Scala)로 제공합니다. 각 커널에는 전용 Spark 클러스터와 Spark 실행자가 있습니다. Spark 환경은 추적되는 용량 단위 시간(CUH)을 사용합니다.
IBM Cloud를 통해 제공되는 Spark 서비스.
IBM Analytics Engine을 사용하면 IBM Cloud에서 Hortonworks Data Platform이 제공됩니다. 사용자는 클러스터 컴퓨팅 노드당 하나의 VM과 사용자 고유의 로컬 HDFS를 얻습니다. Spark 및 전체 하둡 에코시스템이 제공됩니다. 쉘 액세스 권한이 부여되고 노트북을 작성할 수도 있습니다. Watson Studio에서는 IBM Analytics Engine이 제공되지 않습니다. IBM Cloud를 통해 별도로 구매해야 합니다. 연관 서비스 추가를 참조하십시오.
기본 환경 정의
사용자 고유의 환경 정의를 작성하지 않고도 기본 Spark 환경 정의를 사용하여 Watson Studio 도구에서 Spark 노트북을 빠르게 시작할 수 있습니다. 기본 환경 정의는 프로젝트의 환경 페이지에 나열됩니다.
환경 | 하드웨어 구성 |
---|---|
Default Spark 3.0 & Python 3.7 |
2 실행자: 1 vCPU 및 4GB RAM, 드라이버: 1 vCPU 및 4GB RAM |
Default Spark 3.0 & R 3.6 |
2 실행자: 1 vCPU 및 4GB RAM, 드라이버: 1 vCPU 및 4GB RAM |
Default Spark 3.0 & Scala 2.12 |
2 실행자: 1 vCPU 및 4GB RAM, 드라이버: 1 vCPU 및 4GB RAM |
Default Spark 2.4 & Python 3.7 |
2 실행자: 1 vCPU 및 4GB RAM, 드라이버: 1 vCPU 및 4GB RAM |
Default Spark 2.4 & R 3.6 |
2 실행자: 1 vCPU 및 4GB RAM, 드라이버: 1 vCPU 및 4GB RAM |
Default Spark 2.4 & Scala 2.11 |
2 실행자: 1 vCPU 및 4GB RAM, 드라이버: 1 vCPU 및 4GB RAM |
Default Spark 2.3 & Scala 2.11 |
2 실행자: 1 vCPU 및 4GB RAM, 드라이버: 1 vCPU 및 4GB RAM |
Default Spark 2.3 & R 2.4 |
2 실행자: 1 vCPU 및 4GB RAM, 드라이버: 1 vCPU 및 4GB RAM |
참고: Spark 환경을 시작할 때 Jupyter 엔터프라이즈 게이트웨이, Spark 마스터 및 Spark 워커 데몬을 위한 추가 리소스가 필요합니다. 이러한 추가 리소스 양은 드라이버당 vCPU 1개, 2GB의 RAM, 각 실행자당 1GB의 RAM입니다. Spark 환경의 하드웨어 크기를 선택할 때 이 추가 리소스를 고려해야 합니다. 예를 들어, 노트북을 만들고 Default Spark 3.0 & Python 3.7
선택하면 Spark 클러스터는 3개의 vCPU 12GB RAM을 사용하지만 추가 리소스로 1개의 vCPU 4GB RAM이 필요하므로 노트북에 남은 리소스는 2개의 vCPU 8GB RAM이 됩니다.
노트북 및 Spark 환경
노트북을 작성할 때 노트북을 실행할 Spark 런타임을 선택할 수 있습니다. 프로젝트의 환경 페이지에서 작성한 기본 Spark 환경 정의 또는 Spark 환경 정의를 선택할 수 있습니다.
둘 이상의 노트북을 작성하고 동일한 Spark 환경 정의를 선택할 수 있습니다. 환경과 연관된 모든 노트북에는 자체 전용 Spark 클러스터가 있으며 리소스가 공유되지 않습니다. 예를 들어, 동일한 Spark 환경 정의를 사용하여 두 개의 노트북을 작성하면 각 노트북마다 하나씩 두 개의 Spark 클러스터가 시작됩니다. 즉, 각 노트북에는 자체 Spark 드라이버와 Spark 실행자 세트가 있습니다.
다음 샘플 노트북을 열어 Watson Studio에서 Spark 환경을 사용하는 방법을 학습할 수 있습니다.
Spark 클러스터의 파일 시스템
실행자와 Spark 클러스터의 드라이버 또는 커널에서 파일을 공유하려면 공유 파일 시스템(/home/spark/shared
)을 사용할 수 있습니다.
사용자 정의 라이브러리를 사용하려는 경우 /home/spark/shared/user-libs/
에 저장할 수 있습니다. /home/spark/shared/user-libs/
아래에는 Python, R 및 Scala 또는 Java 런타임에서 사용할 수 있도록 미리 구성된 4개의 하위 디렉터리가 있습니다.
다음 표는 사용자 정의 라이브러리를 추가할 수 있는 사전 구성된 하위 디렉토리를 나열합니다.
디렉토리 | 라이브러리 유형 |
---|---|
/home/spark/shared/user-libs/python3/ |
Python 3 라이브러리 |
/home/spark/shared/user-libs/R/ |
R 패키지 |
/home/spark/shared/user-libs/spark2/ |
Java 또는 Scala JAR 파일 |
Spark 드라이버와 실행자에서 라이브러리를 공유하려면 다음을 수행하십시오.
- 사용자 정의 라이브러리나 JAR 파일을 해당 사전 구성된 라이브러리에 다운로드하십시오.
- 커널 > 커널 다시 시작을 클릭하여 노트북 메뉴에서 커널을 다시 시작하십시오. 이렇게 하면 사용자 정의 라이브러리나 JAR 파일을 Spark에 로드합니다.
이 라이브러리가 유지되지 않는다는 점에 유의하십시오. 환경 런타임을 중지하고 나중에 다시 시작하면 라이브러리를 다시 로드하지 않아도 됩니다.
런타임 로그
Spark 런타임이 중지되면 누적된 로그는 프로젝트와 연관된 IBM Cloud Object Storage 버킷에 추가됩니다. 이러한 로그를 보려면 IBM Cloud Object Storage 버킷에서 다운로드하십시오.