해당 시리즈는 라즈베리파이 3개를 연결하고 하둡(Hadoop)과 스파크(spark)를 사용하여 빅데이터를 다루는 과정을 보여줍니다.
Hadoop WordCount Test
하둡에서 기본적으로 제공해주는 단어 개수 세는 맵리듀스 잡 예시가 있다. 이를 사용하여 우리가 구축한 하둡 분산시스템이 잘 작동하는지 확인해보자.
먼저 테스트에 사용할 데이터들을 가져오자.
1 | wget -O alice.txt https://www.gutenberg.org/files/11/11-0.txt |
그다음 HDFS 내에 위에서 받아온 데이터들을 저장할 디렉토리를 생성해주자.
1 | hdfs dfs -mkdir -p /user/pi |
그리고 파일들을 해당 디렉토리에 넣으면 준비는 끝난다.
1 | hdfs dfs -put alice.txt holmes.txt frankenstein.txt books |
파일이 HDFS로 잘 들어갔는지 확인하고 싶다면 아래의 코드를 입력해보자.
1 | hdfs dfs -ls books |
이제 하둡에서 제공하는 jar
파일을 사용하여 books
에 있는 파일들의 단어 개수를 세는 잡을 실행한다.
1 | yarn jar /opt/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.1.jar wordcount "books/*" output |
잡이 완료되면 output
폴더에 들어간 결과를 확인한다.
1 | hdfs dfs -ls output |
Spark Pi(π) value Test
스파크에서는 기본적으로 파이 값(3.14..)을 찾는 예제를 제공한다. 아래의 코드를 입력하여 예제를 실행해보자.
1 | spark-submit --master yarn --deploy-mode cluster --class org.apache.spark.examples.SparkPi $SPARK_HOME/examples/jars/spark-examples_2.11-2.4.7.jar |
위 코드는 하둡의 yarn에서 리소스를 받아 실행하는 것이기 때문에 결과값 또한 하둡 웹 UI에서 찾아볼 수 있다. 따라서 pi-master.local:8088
로 접속하여 실행된 잡(어플리케이션)의 로그를 클릭하면 결과값을 확인할 수 있다.