본 예제는 HDP SandBox 2.3.1, Spark 1.3.1에서 수행하였습니다.
스파크 설치 이후 스파크가 제대로 동작하는지 테스트 하기 위해 사용할 수 있는 몇 가지 Example 어플리케이션들이 Spark에 같이 담겨 있습니다. 그중에 가장 기본적으로 Pi 값을 계산하는 Pi 예제가 있습니다. 본 예제는 원에 다트 던지기(throwing darts) 방식을 이용하여 Pi 값을 추정 계산해 냅니다. (0,0) 에서 (1,1) 까지의 사각형을 하나 잡고 얼마나 많은 다트(점) 들이 원 안에 들어가게 되는지를 실험합니다. 이렇게 해서 얻은 값은 우리가 추정하고 하는 Pi 값의 1/4 입니다. 따라서 이를 이용해 Pi 값을 추정 계산해낼 수 있게 됩니다. Spark 에서 Pi 값을 계산하는 예제를 이용하기 위해서는 다음과 같이 합니다.
1. spark-client 설치 위치로 이동 후 spark 유저 바꿉니다.
cd /usr/hdp/current/spark-client su spark
2. yarn-client 모드로 Spark Pi 예제를 실행시킵니다.
./bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn-client --num-executors 3 --driver-memory 512m --executor-memory 512m --executor-cores 1 lib/spark-example*.jar 10
본 예제에서는 spark-submit을 이용해 Pi 예제를 실행시키지만 이 외에도 다양한 방법으로 Pi 예제를 실행시키 실 수 있습니다.
참고 : Pi 예제는 어떠한 오류 메시지 없이 종료되어야 하며, 출력 값은 아래와 같이 표시됩니다. Pi 결과값은 따로 출력되지 않고 출력 메시지들 속에 포함되어 있습니다.
본 예제에서는 Pi 값을 3.14204 정도로 추정하여 출력하고 있음을 알 수 있습니다.