0%

Hadoop과 spark 테스트하기

해당 시리즈는 라즈베리파이 3개를 연결하고 하둡(Hadoop)과 스파크(spark)를 사용하여 빅데이터를 다루는 과정을 보여줍니다.


Hadoop WordCount Test

하둡에서 기본적으로 제공해주는 단어 개수 세는 맵리듀스 잡 예시가 있다. 이를 사용하여 우리가 구축한 하둡 분산시스템이 잘 작동하는지 확인해보자.
먼저 테스트에 사용할 데이터들을 가져오자.

1
2
3
wget -O alice.txt https://www.gutenberg.org/files/11/11-0.txt
wget -O holmes.txt https://www.gutenberg.org/files/1661/1661-0.txt
wget -O frankenstein.txt https://www.gutenberg.org/files/84/84-0.txt

그다음 HDFS 내에 위에서 받아온 데이터들을 저장할 디렉토리를 생성해주자.

1
2
hdfs dfs -mkdir -p /user/pi
hdfs dfs -mkdir books

그리고 파일들을 해당 디렉토리에 넣으면 준비는 끝난다.

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
2
hdfs dfs -ls output
hdfs dfs -cat output/part-r-00000 | less

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로 접속하여 실행된 잡(어플리케이션)의 로그를 클릭하면 결과값을 확인할 수 있다.