SlideShare a Scribd company logo
1 of 46
빅데이터 분석전문가 양성을 위한 빅데이터 분석 실습 교육 - 농산물 분야 
2014. 11.
KBIG 실습 교육 인프라 접속 후 가상 환경에서 분석 실습을 진행하겠습니다.
3 
오늘 실습은 크롬 브라우저를 통해 접속 합니다 
http://www.kbig.kr/index.php
4 
실습 서버 코드 
http://www.kbig.kr/index.php 
실습 시 안내 예정
5 
농산물(농산식품유통정보)- 중급 
1. 개요 
• 
봄,여름 온도 상승에 따라 야외 할동이 증가되고 고기 소비량이 많아 지게 된다. 고기 소비량 중 많이 소비되는 돼지고기의 가격변화가 온도변화에 따라 연관성이 있는지 분석하고 한다. 
• 
분석에 사용되는 데이터는 2013년도 서울지역 돼지고기 소매가격 정보와 2013년 서울지역 일별 평균온도를 사용하고자 한다. 
• 
선행 학습 기술로 엑셀, 자바, 하둡, 몽고DB의 기초 개념을 학습해야 하고 , 시각화에서는 D3 챠트 및 R통계의 기초 활용법을 선행하여 학습을 하여야 한다. -분석예제 
• 
온도변화에 따라 돼지고기의 가격변화를 시계열 시각화 하여 온도와 돼지고기 가격과의 연관성을 파악하라. -분석내용 
• 
제공된 농산물가격 정보에서 2013년 서울 지역 돼지고기 소매가격을 추출한다. 
• 
시계열 저장된 돼지고기 소매가격을 일별 가격평균을 구한다. 기상데이터 중 2013년 서울 지역 평균온도를 추출한다 
• 
돼지고기 가격과 온도와의 연관성 분석을 위해서 분석 스크립트를 실행한다. 
• 
분석된 데이터를 엑셀형식이나 D3챠트 형식으로 보기 위한 데이터를 저장한다. 
• 
저장된 데이터를 불러와서 엑셀이나 D3챠트로 시각화 해 본다. 
2. 수집 -수집방법 
• 
빅데이터 분석활용센터에 접속하여 아래와 같은 샘플데이터와 같은 형태의 농산물 소매가격 및 기상 데이터를 엑세스 할 수 있도록 원시데이터를 제공 하고 있다. 
수집 
가공 
저장 
분석 
시각화
6 
농산물(농산식품유통정보)- 중급 
일자 
부류코드 
품목코드 
지역코드 
마트코드 
가격 
2013-01-02 
500 
514 
1101 
110401 
1650 
2013-01-02 
200 
214 
1101 
110402 
1480 
2013-01-02 
300 
323 
1101 
110212 
1440 
2013-01-02 
200 
215 
1101 
110251 
1600 
2013-01-02 
500 
514 
1101 
110403 
1380 
2013-01-02 
500 
514 
1101 
110406 
1290 
2013-01-02 
500 
514 
1101 
110407 
1590 
2013-01-03 
500 
515 
1101 
110212 
1440 
2013-01-03 
500 
514 
1101 
110251 
1600 
2013-01-03 
500 
514 
1101 
110401 
1650 
[농산물 데이터 (PRODUCT.CSV) ] 
[코드설명 데이터 (CODE.CSV) ] 
코드구분 
코드 
코드설명 
부류코드 
100 
식량작물 
부류코드 
200 
채소류 
부류코드 
300 
측용작물 
부류코드 
400 
과일류 
부류코드 
500 
축산물 
품목코드 
514 
돼지고기 
품목코드 
515 
닭고기 
지역코드 
1101 
서울 
[기상데이터 (WHEATER.CSV) ] 
지역 
기상구분 
측정값 
일자 
서울(청) 
평균기온 
-6.8 
20110101 
서울(청) 
평균기온 
-0.2 
20110201 
서울(청) 
평균기온 
0.5 
20110301 
서울(청) 
평균기온 
9.1 
20110401 
서울(청) 
평균기온 
12.5 
20110501 
서울(청) 
평균기온 
18 
20110601 
서울(청) 
평균기온 
25.1 
20110701 
서울(청) 
평균기온 
25.6 
20110801 
서울(청) 
평균기온 
27 
20110901 
서울(청) 
평균기온 
12.7 
20111001 
-수집데이터(샘플) 
수집 
가공 
저장 
분석 
시각화
7 
농산물(농산식품유통정보)- 중급 
2. 수집 -수집방법 
• 
수집방법에는 FTP/SCP등을 이용해서 처리하는 방법이 있다. 
• 
데이터 저장소에서 로컬로 일반농산물 소매가격 데이터 (product.csv) , 코드설명 데이터 (code.csv) , 기상데이터 (weather.csv) 데이터를 복사해 온다. 
[ 데이터 수집 (Script) ] 
00.get_data_file.sh 
01.move _data_file.sh 
데이터 저장소에서 WGET을 이용해서 로컬로 데이터를 수집하는 커맨드 
로컬로 수집해온 데이터를 작업영역으로 복사하는 커맨드 
#!/bin/bash 
# 복사 대상 파일 정의 
TARGET_PRODUCT_PRICE=/home/eduuser/nia_kbig/product/basic/product.csv 
TARGET_CODE=/home/eduuser/nia_kbig/product/basic/code.csv 
# 작업 디렉토리 정의 
LOCAL_DIR=/home/eduuser/nia_kbig/data/ 
mv $ TARGET_PRODUCT_PRICE $LOCAL_DIR 
mv $TARGET_CODE $LOCAL_DIR 
수집 
가공 
저장 
분석 
시각화
8 
농산물(농산식품유통정보)- 중급 
3. 가공 -가공방법 
• 
일반농산물 소매가격 데이터에는 2011~2013년간의 3년치 데이터가 저장되어 있다. 
• 
분석 대상은 2013년도의 서울지역 돼지고기이다. 일반농산물 소매가격 데이터 (product.csv) 파일에서 2013년도 데이터만 추출하여 2013_product.csv 파일을 생성한다. 
• 
기상데이터에는 2010~2014년의 5년치 데이터가 저장되어 있다. 분석 대상은 2013년도 서울지역 기상 정보이다. 기상데이터에서 2013년도 서울 지역 일별기상 데이터를 추출하여 2013_weather.csv파일을 생성한다. 
1) 데이터 
일자 
부류코드 
품목코드 
지역코드 
마트코드 
가격 
2013-01-02 
500 
514 
1101 
110401 
1650 
2013-01-02 
500 
514 
1101 
110402 
1480 
2013-01-02 
500 
514 
1101 
110212 
1440 
2013-01-02 
500 
514 
1101 
110251 
1600 
2013-01-02 
500 
514 
1101 
110403 
1380 
지역 
기상구분 
측정값 
일자 
서울(청) 
평균기온 
-4.7 
20130101 
서울(청) 
평균기온 
-11.7 
20130102 
서울(청) 
평균기온 
-13.2 
20130103 
서울(청) 
평균기온 
-10.7 
20130104 
-2013_product.csv (2103년 서울지역 돼지고기 소매가격) 
-2013_weather.csv (2103년 서울지역 일별 평균기온) 
수집 
가공 
저장 
분석 
시각화
9 
농산물(농산식품유통정보)- 중급 
2) 가공 
• 
Shell을 이용하여 2013년도 데이터만을 추출한다. 추출한 농산물 데이터는 2013_product.csv로 , 기상정보 데이터는 2013_weather.csv로 저장한다. 
#!/bin/bash 
# 농산물가격 정보 입력 CSV 파일 지정 
PROD_INPUT_FILE='/home/eduuser/nia_kbig/data/product.csv' 
# 2013년 농산물 출력결과 CSV 파일 지정 
PROD_OUTPUT_FILE='/home/eduuser/nia_kbig/data/2013_product.csv' 
# 기상데이터 입력 CSV 파일 지정 
WEATHER_INPUT_FILE='/home/eduuser/nia_kbig/data/weather.csv' 
# 2013년 서울지역 평균온도 출력결과 CSV파일 지정 
WEATHER_OUTPUT_FILE='/home/eduuser/nia_kbig/data/2013_weather.csv' 
TARGET_YEAR='2013' 
# 평균기온만을 대상으로 설정 , TARGET_TYPE='평균기온‘ 
# 서울지역의 온도를 대상으로 설정, TARGET_AREA='서울' 
# 2013년 서울지역 평균기온 출력결과 CSV HEADER컬럼 출력 
echo "Date,Temperature" > $WEATHER_OUTPUT_FILE 
02.proc_csv.sh 
(뒷장에 계속) 
수집 
가공 
저장 
분석 
시각화
10 
농산물(농산식품유통정보)- 중급 
# ','를 구분자로 해서 파일을 읽어들인다. IFS=',' while read AREA TYPE VALUE DATE do # 측정값이 빈 것은 SKIP처리 한다. if [ -z $VALUE ]; then continue; fi # TARGET_YEAR로 시작하는 년도인지 체크한다. # TARGET_TYPE(평균기온)인지 체크한다. # TARGET_AREA(서울)인지 체크한다. if [[ ( $DATE == ${TARGET_YEAR}* ) && ( $TYPE == ${TARGET_TYPE}* ) && ( $AREA == ${TARGET_AREA}* ) ]]; then # 해당년도의 데이터만을 CSV로 출력한다. echo "$DATE,$VALUE" >> $WEATHER_OUTPUT_FILE fi done < $WEATHER_INPUT_FILE # 2013년 농산물 출력결과 CSV HEADER컬럼 출력 echo "Date,Category,Item,Area,Mart,Price" > $PROD_OUTPUT_FILE # ','를 구분자로 해서 파일을 읽어들인다. IFS=',' while read DATE CATEGORY ITEM AREA MART PRICE do # DATA가 TARGET_YEAR로 시작하는 년도인지 체크한다. if [[ $DATE == ${TARGET_YEAR}* ]]; then # 해당년도의 데이터만을 CSV로 출력한다. echo "$DATE,$CATEGORY,$ITEM,$AREA,$MART,$PRICE" >> $PROD_OUTPUT_FILE fi done < $PROD_INPUT_FILE 
02.proc_csv.sh 
(앞장에서 계속) 
수집 
가공 
저장 
분석 
시각화
11 
농산물(농산식품유통정보)- 중급 
#!/bin/bash 
# 2013년 농산물 출력결과 CSV 파일 지정 
PROD_OUTPUT_FILE='/home/eduuser/nia_kbig/data/2013_product.csv' 
# 2013년 서울지역 평균기온 출력결과 CSV파일 지정 
WEATHER_OUTPUT_FILE='/home/eduuser/nia_kbig/data/2013_weather.csv' 
# 하둡의 2013년 농산물 출력결과 저장 위치 
HDFS_WEATHER=/user/bigdata/2013_weather.csv 
# 하둡의 2013년 서울지역 평균기온 출력결과 저장 위치 
HDFS_PRODUCT=/user/bigdata/2013_product.csv 
# upload target file to HDFS 
hadoop fs -put $WEATHER_OUTPUT_FILE $HDFS_WEATHER 
hadoop fs -put $PROD_OUTPUT_FILE $HDFS_PRODUCT 
03.upload_csv.sh 
4. 저장 -저장방법 
• 
2013년치 일반농산물 소매가격 데이터 파일(2013_product.csv)과 2013년도 서울 평균기온 데이터 파일(2013_weather.csv)파일을 하둡에 업로드한다. 
• 
하둡 커맨드를 이용해서 업로드한다. 
수집 
가공 
저장 
분석 
시각화
12 
농산물(농산식품유통정보)- 중급 
5. 분석 -분석방법 
• 
Java로 하둡파일 시스템에 올라가 있는 2013_product.csv 을 MapReduce를 대상으로 MapReduce작업을 통해서 일자별로 돼지고기 평균가격 데이터를 뽑아낸다. 
• 
하둡파일 시스템에 올라가 있는 2013년도 서울시 기상데이터(2013_weather.csv)를 MapReduce작업을 통해서 2013년도 서울시의 일별 평균기온 데이터를 뽑아낸다. (1일에 평균 2~3회의 측정기온이 들어있다) 
• 
결과값은 하둡파일 시스템의 ‘/user/bigdata/product/out/2013’ 경로에 파일로 출력하도록 한다. 
• 
MapReduce를 실행하는 프로그램은 java를 이용해서 구현하고 products.jar로 만들어서 실행한다. 
• 
콘솔에 로그인해서 실행은 하둡의 yarn 커맨드로 실행하고 결과 파일을 구한다. 
1) 데이터 
일자 
부류코드 
품목코드 
지역코드 
마트코드 
가격 
2013-01-02 
500 
514 
1101 
110401 
1650 
2013-01-02 
500 
514 
1101 
110402 
1480 
2013-01-02 
500 
514 
1101 
110212 
1440 
2013-01-02 
500 
514 
1101 
110251 
1600 
2013-01-02 
500 
514 
1101 
110403 
1380 
지역 
기상구분 
측정값 
일자 
서울(청) 
평균기온 
-4.7 
20130101 
서울(청) 
평균기온 
-11.7 
20130102 
서울(청) 
평균기온 
-13.2 
20130103 
-2013년 서울지역 돼지고기 소매가격 
-2013년 서울지역 일별 평균기온 
수집 
가공 
저장 
분석 
시각화
13 
농산물(농산식품유통정보)- 중급 
• 
MapReduce를 처리하는 프로그램은 procucts.java 에 구현되어 있다. 
• 
java프로그램을 컴파일하여 product.jar파일로 만든 후 yarn 커맨드를 이용해서 product.jar파일로 mapReduce 작업을 수행한다. 
• 
수행된 결과는 Hadoop 상에 지정한 디렉토리에 출력된다. 
#!/bin/bash 
# 현재 위치를 지정한다. 
CURRENT_DIR=/home/eduuser/nia_kbig/product/middle 
# 컴파일하여 생성할 프로그램(jar) 경로를 지정한다. 
TARGET_JAR=$CURRENT_DIR/products.jar 
# 컴파일할 소스를 지정한다. 
TARGET_SOURCE=$CURRENT_DIR/java_source/com/nia/hadoop/*.java 
# jar를 생성하는데 필요한 class 파일을 지정한다. 
TARGET_CLASSES=$CURRENT_DIR/com/nia/hadoop/*.class 
# Hadoop상에 존재하는 농수산물 가격정보 파일을 지정한다. 
INPUT_PRODUCT_DATA=/user/bigdata/2013_product.csv 
# Hadoop상에 존재하는 기상(온도)정보 파일을 지정한다. 
INPUT_WEATHER_DATA=/user/bigdata/2013_weather.csv 
# MapReduce로 처리한 결과 데이타파일을 생성할 디렉토리를 지정한다. 
OUTPUT_DIR=/user/bigdata/product/out/2013 
#컴파일에 필요한 hadoop 라이브러리 패스와 함께 source를 컴파일한다. 
javac -classpath /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-client-core- 2.2.0.jar:/usr/local/hadoop/share/hadoop/common/lib/commons-cli-1.2.jar:/usr/local/hadoop/share/hadoop/common/hadoop- common-2.2.0.jar $TARGET_SOURCE 
# 컴파일한 *.class 파일을 jar로 압축한다. 
jar cf $TARGET_JAR $TARGET_CLASSES 
# yarn 커맨드로 Hadoop에서 TARGET_JAR 프로그램을 돌려서 Map/Reduce를 실행한다. 
yarn jar $TARGET_JAR com.nia.hadoop.products $INPUT_PRODUCT_DATA $INPUT_WEATHER_DATA $OUTPUT_DIR 
04.run.sh 
수집 
가공 
저장 
분석 
시각화
14 
농산물(농산식품유통정보)- 중급 
2) 가공 후 생성된 결과데이터 
var data = 
[ 
{ "item":"돼지고기" , "Data": [ 
{ "Date":"2013-01-02" , "Value":"1490.0" }, 
{ "Date":"2013-01-03" , "Value":"1511.4285714285713" }, 
{ "Date":"2013-01-04" , "Value":"1440.0" }, 
{ "Date":"2013-01-07" , "Value":"1440.0" }, 
{ "Date":"2013-01-08" , "Value":"1440.0" }, 
{ "Date":"2013-01-09" , "Value":"1440.0" }, 
{ "Date":"2013-01-10" , "Value":"1345.7142857142858" }, 
{ "Date":"2013-01-11" , "Value":"1317.142857142857" }, 
{ "Date":"2013-01-14" , "Value":"1374.2857142857142" }, 
{ "Date":"2013-01-15" , "Value":"1374.2857142857142" }, 
{ "Date":"2013-01-16" , "Value":"1365.7142857142858" }, 
{ "Date":"2013-01-17" , "Value":"1445.7142857142858" }, 
{ "Date":"2013-01-18" , "Value":"1445.7142857142858" }, 
{ "Date":"2013-01-21" , "Value":"1458.5714285714287" }, 
{ "Date":"2013-01-22" , "Value":"1458.571428571428}, 
var temperatures = [ ["2013-01-01",-4.7], ["2013-01-02",-11.7], ["2013-01-03",-13.2], ["2013-01-04",-10.7], ["2013-01-05",-7], ["2013-01-06",-6.3], ["2013-01-07",-5.1], ["2013-01-08",-4.6], ["2013-01-09",-9], ["2013-01-10",-8.3], ["2013-01-11",-3.2], ["2013-01-12",0], ["2013-01-13",-0.5], ["2013-01-14",-2.1], ["2013-01-15",-2.1], ["2013-01-16",-2.6], ["2013-01-17",-5.8], ["2013-01-18",-4.4], ["2013-01-19",0.5], ["2013-01-20",1.6], 
수집 
가공 
저장 
분석 
시각화
15 
농산물(농산식품유통정보)- 중급 
5. 분석 : 데이터 저장 -저장방법 
• 
2013년도 서울지역 돼지고기 평균가격과 서울지역 평균온도 변환된 데이터를 시각화에 사용할 데이터를 추출한다. 하둡의 MapReduce 결과 출력된 결과 파일을 다운로드 한다. 
• 
출력 결과 파일은 out으로 지정한 디렉토리 아래에 PKJSON-r-00000(돼지고기, JSON포맷), PKCSV-r-00000(돼지고기,CSV포맷), WT-r-00000(평균기온)이란 이름으로 존재한다 
# 하둡파일 시스템에서 로컬 파일로 다운로드 한다. $ hadoop fs -get /user/bigdata/product/out/2013/PKJSON-r-00000 /tmp/product.js $ hadoop fs -get /user/bigdata/product/out/2013/PKCSV-r-00000 /tmp/product.csv $ hadoop fs -get /user/bigdata/product/out/2013/WT-r-00000 /tmp/weather.js 
- 데이터 저장 
변환된 데이터를 저장하기 위해서 아래와 같이 저장 스크립트를 실행한다. 
- 데이터 변환 
다운로드 받은 파일을 이용하여 다음과 같은 product.js (JSON 배열), weather.js (javascript 배열) 파일에 저장한다. 
저장한 js 파일을 시각화 HTML에서 로드해서 D3 차트로 표시한다. 
수집 
가공 
저장 
분석 
시각화
16 
농산물(농산식품유통정보)- 중급 
var temperatures = 
[ 
["2013-01-01",-4.7], 
["2013-01-02",-11.7], 
["2013-01-03",-13.2], 
["2013-01-04",-10.7], 
["2013-01-05",-7], 
["2013-01-06",-6.3], 
["2013-01-07",-5.1], 
["2013-01-08",-4.6], 
["2013-01-09",-9], 
… 
["2013-12-30",2.2], 
["2013-12-31",3.8] 
]; 
weather.js 
var data = 
[ 
{ "item":"돼지고기" , "Data": [ 
{ "Date":"2013-01-02" , "Value":"1490.0" }, 
{ "Date":"2013-01-03" , "Value":"1511.4285714285713" }, 
{ "Date":"2013-01-04" , "Value":"1440.0" }, 
{ "Date":"2013-01-07" , "Value":"1440.0" }, 
{ "Date":"2013-01-08" , "Value":"1440.0" }, 
{ "Date":"2013-01-09" , "Value":"1440.0" }, 
{ "Date":"2013-01-10" , "Value":"1345.7142857142858" }, 
{ "Date":"2013-01-11" , "Value":"1317.142857142857" }, 
{ "Date":"2013-01-14" , "Value":"1374.2857142857142" }, 
{ "Date":"2013-01-15" , "Value":"1374.2857142857142" }, 
{ "Date":"2013-01-16" , "Value":"1365.7142857142858" }, 
{ "Date":"2013-01-17" , "Value":"1445.7142857142858" }, 
… 
{ "Date":"2013-12-31" , "Value":"1547.142857142857" }, 
]} 
]; 
product.js 
수집 
가공 
저장 
분석 
시각화
17 
농산물(농산식품유통정보)- 중급 
6. 분석 -분석내용 
• 
2013년도 서울지역 돼지고기 평균가격과 서울지역 평균온도와의 연관성 분석을 한다. 
-분석방법 및 활용기술 2013년도 서울지역 돼지고기 평균가격과 2013년 서울지역 평균기온 과의 패턴 및 연관성 분석을 위해 시계열 Chart인 D3 Chart 활용한다. 
-분석 과정 
2013년도 서울지역 돼지고기 평균가격과 
2013년 서울지역 평균기온 D3 Chart 연동 
2013년도 돼지고기 평균가격과 
2013년 서울지역 평균기온 데이터 저장 
분석데이터 저장 
스크립트 실행 
결과데이터 
결과데이터 
시각화 Chart 
맵리듀스 결과데이터 
수집 
가공 
저장 
분석 
시각화
18 
농산물(농산식품유통정보)- 중급 
7. 시각화 -시각화 방법 및 활용기술 
• 
2013년도 돼지고기 평균가격과 2013년 서울지역 평균기온 비교 분석을 D3 Chart의 꺽은선 그래프 활용한다. 
-시각화과정 
• 
d3.v3.js 라이브러리 파일을 제공사이트에서 다운로드 하여 저장한다. 
• 
시각화할 HTML 페이지를 생성한다. d3 Chart 라이브러리 모듈을 페이지 삽입을 한다. 
• 
d3 Chart Data를 읽어 오는 부분에 결과데이터 삽입을 한다. 
• 
X 축과 Y축을 값을 지정을 한다. 
• 
html 페이지를 웹브라우저에서 실행을 한다. 
수집 
가공 
저장 
분석 
시각화
19 
농산물(농산식품유통정보)- 중급 
<!--- d3 모듈을 불러온다 ---> <script src=“js/d3.v3.js"></script> <!------d3 Chart data 연계 --> <script src=“js/prudct.js"></script> <script src=“js/weather.js"></script> 
- d3 Chart 모듈 삽입과 결과 데이터 삽입 
var temperatures = 
[ 
["2013-01-01",-4.7], 
["2013-01-02",-11.7], 
["2013-01-03",-13.2], 
["2013-01-04",-10.7], 
["2013-01-05",-7], 
["2013-01-06",-6.3], 
["2013-01-07",-5.1], 
["2013-01-08",-4.6], 
["2013-01-09",-9], 
["2013-01-10",-8.3], 
["2013-01-11",-3.2], 
["2013-01-12",0], 
["2013-01-13",-0.5], 
["2013-01- 14",-2.1], 
["2013-01-15",-2.1], 
["2013-01-16",-2.6], 
["2013-01-17",-5.8], 
["2013-01-18",-4.4], 
["2013-01-19",0.5], 
var data = 
[ 
{ "item":"돼지고기" , "Data": [ 
{ "Date":"2013-01-02" , "Value":"1490.0" }, 
{ "Date":"2013-01-03" , "Value":"1511.4285714285713" }, 
{ "Date":"2013-01-04" , "Value":"1440.0" }, 
{ "Date":"2013-01-07" , "Value":"1440.0" }, 
{ "Date":"2013-01-08" , "Value":"1440.0" }, 
{ "Date":"2013-01-09" , "Value":"1440.0" }, 
{ "Date":"2013-01-10" , "Value":"1345.7142857142858" }, 
{ "Date":"2013-01-11" , "Value":"1317.142857142857" }, 
{ "Date":"2013-01-14" , "Value":"1374.2857142857142" }, 
js/product.js 
js/weather.js 
수집 
가공 
저장 
분석 
시각화
20 
농산물(농산식품유통정보)- 중급 
- 분석데이터 시각화 
-데이터 분석 
• 
돼지고기와 기온과의 관계는 봄철인 4월 부터 기온이 올라가는 시점 부터 돼지고기의 가격이 상승하는 패턴을 보임. 기온이 가장 더운 7-8월 돼지고기의 최대 가격이 형성되어 보이는데 이는 일반인들의 휴가시기와 결합되어 소비가 많아지는 관계로 가격 상승이 보임. 
• 
9월, 10월 기온이 하강 하면서 돼지고기의 가격이 하락하고 있는 패턴 현상을 보임. 
• 
12월 가격 상승은 연말 연시로 돼기고기의 소비량이 증가 하여 가격이 상승한 것으로 판단이 됨. 
수집 
가공 
저장 
분석 
시각화
22 
[터미널 로그인 화면] 
1.username : root 2.password : hello.edu 아이디/ 패스워드를 입력 하고 OK 버튼을 클릭한다.
23 23 
1.로그인화면에서 컴퓨터 클릭 >보기 메뉴에서 목록 보기 선택하여 탐색기 형태로 나오게 함 2.실습코드 있는 위치로 폴더 이동 /home/eduuser/nia_kbig/product/middle/ 3. 00.get_dataset.sh ~ 04.run.sh 5개의 실행파일이 위해 있다. 
[리눅스 로그인 화면]
24 24 
[리눅스 터미널 화면] 
1.바탕화면에서 마우스 오른쪽키 누른 후 Open In Termianl 메뉴 클릭한다. 
2.터미널 화면이 나온 창에서 실습코드가 있는 위치가 이동한다. 
cd /home/eduuser/nia_kbig/product/middle/ 입력하고 엔터를 친다 
3. pwd 입력 후 엔터치면 현재 접속한 위치 디렉토리 경로가 출력이 된다.
25 25 
[데이터 저장소에서 데이터 가져오기] 
1. 명령어 입력 창에 다 데이터 가져오는 스크립트를 실행한다. 
./00.get_dataset.sh 입력 후 엔터를 친다.
26 26 
2. 중급과정 선택 후 엔터 
[데이터셋 선택화면] 
1. 농산물 데이터셋 선택 후 엔터 
1. 전체 데이터셋 복사하기 선택 후 엔터 
9. 종료 선택 후 엔터 선택화면에서 나온다
27 27 
[데이터 가공을 위해서 가공스크립트 실행] 
1. 원시데이터 가공을 위해서 가공 셀 스크립트를 실행한다. 
./02.proc_csv.sh 입력 후 엔터 
2.nia_kbig/data/ 폴더에 보면 가공된 파일 2개가 생성이 된다. 2013_product.csv , 2013_weather.csv
28 28 
[nit_kbig 에 폴더의 권한을 eduuser 권한 폴더로 소유권을 변경] 
1. 
하둡 프로세스가 실행되는 권한은 eduuser이기 때문에 root 권한 eduuser가 접근할 수 있게 nia_kbig 폴더의 권한을 변경을 해줘야 한다. ./chown -R eduuser:eduuser nia_kbig/ 입력 후 엔터를 친다. 
2. 
ll 명령어를 입력 후 엔처를 치면 소유권이 변경된 것을 확인 할 수가 있다.
29 29 
1. 
하둡 프로세스를 실행하기 위해서 eduuser로 로그인을 변경을 시켜준다 현재 root 로 접속이 되어 있기 때문에 하둡 실행 사용자인 eduuser로 로그인을 변경한다. su – eduuser 입력 후 엔터를 친다 
[하둡 프로세스를 실행하기 위해서 실행 USER로 로그인을 변경 ]
30 30 
[하둡 프로세스를 실행하기 위해 설치 폴더 이동] 
1. 
하둡 프로세스를 실행하기 위해서 하둡이 설치한 경로 까지 이동한다. 
2. 
cd /user/local/Hadoop/sbin/ 입력 후 엔터 친다. 
3. 
ll 을 입력 후 엔터를 치면 목록 리스트가 출력이 된다
31 31 
1. 
하둡을 실행을 한다. 
2. 
./start-all.sh 를 입력 후 엔터를 치면 하둡프로세스가 실행된다. 
[하둡 프로세스를 실행]
32 32 
[하둡 프로세스가 정상적으로 실행을 브라우저로 확인] 
1. 
브라우저를 열러서 URL 입력 창에 localhost:50070 입력 후 엔터를 치면 화면과 같이 NameNode ‘localhost:9000’(active) 화면이 열리면 하둡이 정상적으로 작동한다
33 33 
[하둡 프로세스가 정상적으로 실행 중이 브라우저로 확인] 
1. 
브라우저를 열러서 URL 입력 창에 localhost:8088 입력 후 엔터를 치면 화면과 같이 All Applications 화면이 열리면 하둡이 정상적으로 작동한다. 
2. 
맵리듀스를 실행 할 경우 진행 상태를 확인 할 수 있다. 
열어서
34 34 
[실습코드가 있는 디렉토리로 이동] 
1. 
하둡이 설치된 디렉토리에서 실습코드가 있는 디렉토리로 이동한다. 
2. 
cd /home/eduuser/nia_kbig/product/middle 입력 후 엔터를 친다. 
3. 
pwd를 입력 후 현재 디렉토리 경로를 확인을 한다.
35 35 
[하둡에 가공된 파일을 2개를 업로드] 
1. 
하둡에 nia_kbig/data/ 폴더에 있는 2013_product.csv 파일과 2013_weather.csv 가공된 파일 2개를 하둡 HDFS 파일시스템 업로드 한다. ./03.upload_csv.sh 입력 후 엔터를 친다. 2. 하둡에 파일을 업로드 후 프로세스가 끝나면 정상적으로 업로드 된다
36 36 
[브라우저로 하둡파일 시스템에 올라간 파일 확인] 
1.localhost:50070 화면에서 Browse filesystem 을 클릭하여 파일 업로드 현황을 볼 수 있다. 
2. /user/bigdata/ 폴더 밑에 2013_product.csv , 2013_weather.csv 파일 목록이 출력된다.
37 37 
[맵리듀스 분석을 하기 위해서 분석스크립트 실행] 
1. 
맵리듀스 분석을 하기 위해서 분석스크립트를 실행 
2. 
./04.run.sh 입력 후 엔터를 친다. 
3. 
분석프로세스 돌아가면 브라우저로 localhost:8088 화면을 열어 진행 프로세스를 확인한다.
38 38 
[맵리듀스 분석을 하기 위해서 분석실행 화면] 
1.화면에서 마우스 오른쪽 키를 클릭 후 새로고침을 클릭하면 현재 진행 프로세스를 확인 할 수 있다.
39 39 
[ 분석 결과물 확인] 
1.분석이 완료되면 product 라는 폴더가 생성이 되고 폴더를 클릭하면 분석 결과물 리스트를 확인 할 수 있다.
40 40 
[ 분석 결과물 폴더] 
1.분석완료 결과물은 하둡디렉토리 /user/bigdata/product/out/2013 폴더에 위치해 있다 
2.PKCSV-r-00000 , PKJSON-r-00000, WT-r-00000 파일 폴더가 생성이 된다.
41 41 
[ 분석데이터 저장] 
1.분석데이터를 저장하기 위해서 PKJSON-r-00000 폴더를 클릭하여 들어가면 데이터 목록을 확인할 수가 있다. 2.전체선택을 하여 복사를 한다.
42 42 
[ 분석데이터 시각화 데이터 저장] 
1.탐색기 화면으로 돌와와서 visual폴더 밑에 product.js 파일을 선택한 후 오른쪽 마우스를 클릭하여 gedit로 열기를 클릭하여 파일을 연다.
43 43 
[ 분석데이터 시각화 데이터 저장] 
1.복사한 데이터를 붙여넣기하여 데이터를 삽입하고 저장 버튼을 클릭하여 저장을 한다. 
2.저장후 파일 저장창을 닫는다.
44 44 
[ 분석데이터 시각화 데이터 저장-기상데이터] 
1.기상데이터도 복사를 하여 weather.js 파일을 열어 기존에 들어가 있는 데이터를 모두 삭제를 한다. 
2.데이터 삭제 후 붙여넣기 하여 데이터를 저장한다.
45 45 
[ 분석데이터 시각화 보기- D3 챠트] 
1.visual 폴더에 product_chart.html 파일을 더블 클릭하면 브라우저로 실행이 된다. 
2.브라우저로 시각화 챠트가 출력이 된다.
46 46 
[ 분석데이터 시각화 보기- D3 챠트] 
1.분석된 데이터가 챠트로 출력이 된다.

More Related Content

More from Han Woo PARK

소셜 빅데이터를 활용한_페이스북_이용자들의_반응과_관계_분석
소셜 빅데이터를 활용한_페이스북_이용자들의_반응과_관계_분석소셜 빅데이터를 활용한_페이스북_이용자들의_반응과_관계_분석
소셜 빅데이터를 활용한_페이스북_이용자들의_반응과_관계_분석Han Woo PARK
 
페이스북 선도자 탄핵촛불에서 캠폐인 이동경로
페이스북 선도자 탄핵촛불에서 캠폐인 이동경로페이스북 선도자 탄핵촛불에서 캠폐인 이동경로
페이스북 선도자 탄핵촛불에서 캠폐인 이동경로Han Woo PARK
 
WATEF 2018 신년 세미나(수정)
WATEF 2018 신년 세미나(수정)WATEF 2018 신년 세미나(수정)
WATEF 2018 신년 세미나(수정)Han Woo PARK
 
세계트리플헬릭스미래전략학회 WATEF 2018 신년 세미나
세계트리플헬릭스미래전략학회 WATEF 2018 신년 세미나세계트리플헬릭스미래전략학회 WATEF 2018 신년 세미나
세계트리플헬릭스미래전략학회 WATEF 2018 신년 세미나Han Woo PARK
 
Disc 2015 보도자료 (휴대폰번호 삭제-수정)
Disc 2015 보도자료 (휴대폰번호 삭제-수정)Disc 2015 보도자료 (휴대폰번호 삭제-수정)
Disc 2015 보도자료 (휴대폰번호 삭제-수정)Han Woo PARK
 
Another Interdisciplinary Transformation: Beyond an Area-studies Journal
Another Interdisciplinary Transformation: Beyond an Area-studies JournalAnother Interdisciplinary Transformation: Beyond an Area-studies Journal
Another Interdisciplinary Transformation: Beyond an Area-studies JournalHan Woo PARK
 
4차산업혁명 린든달러 비트코인 알트코인 암호화폐 가상화폐 등
4차산업혁명 린든달러 비트코인 알트코인 암호화폐 가상화폐 등4차산업혁명 린든달러 비트코인 알트코인 암호화폐 가상화폐 등
4차산업혁명 린든달러 비트코인 알트코인 암호화폐 가상화폐 등Han Woo PARK
 
KISTI-WATEF-BK21Plus-사이버감성연구소 2017 동계세미나 자료집
KISTI-WATEF-BK21Plus-사이버감성연구소 2017 동계세미나 자료집KISTI-WATEF-BK21Plus-사이버감성연구소 2017 동계세미나 자료집
KISTI-WATEF-BK21Plus-사이버감성연구소 2017 동계세미나 자료집Han Woo PARK
 
박한우 교수 프로파일 (31 oct2017)
박한우 교수 프로파일 (31 oct2017)박한우 교수 프로파일 (31 oct2017)
박한우 교수 프로파일 (31 oct2017)Han Woo PARK
 
Global mapping of artificial intelligence in Google and Google Scholar
Global mapping of artificial intelligence in Google and Google ScholarGlobal mapping of artificial intelligence in Google and Google Scholar
Global mapping of artificial intelligence in Google and Google ScholarHan Woo PARK
 
박한우 영어 이력서 Curriculum vitae 경희대 행사 제출용
박한우 영어 이력서 Curriculum vitae 경희대 행사 제출용박한우 영어 이력서 Curriculum vitae 경희대 행사 제출용
박한우 영어 이력서 Curriculum vitae 경희대 행사 제출용Han Woo PARK
 
향기담은 하루찻집
향기담은 하루찻집향기담은 하루찻집
향기담은 하루찻집Han Woo PARK
 
Twitter network map of #ACPC2017 1st day using NodeXL
Twitter network map of #ACPC2017 1st day using NodeXLTwitter network map of #ACPC2017 1st day using NodeXL
Twitter network map of #ACPC2017 1st day using NodeXLHan Woo PARK
 
페이스북 댓글을 통해 살펴본 대구·경북(TK) 촛불집회
페이스북 댓글을 통해 살펴본 대구·경북(TK) 촛불집회페이스북 댓글을 통해 살펴본 대구·경북(TK) 촛불집회
페이스북 댓글을 통해 살펴본 대구·경북(TK) 촛불집회Han Woo PARK
 
Facebook bigdata to understand regime change and migration patterns during ca...
Facebook bigdata to understand regime change and migration patterns during ca...Facebook bigdata to understand regime change and migration patterns during ca...
Facebook bigdata to understand regime change and migration patterns during ca...Han Woo PARK
 
세계산학관협력총회 Watef 패널을 공지합니다
세계산학관협력총회 Watef 패널을 공지합니다세계산학관협력총회 Watef 패널을 공지합니다
세계산학관협력총회 Watef 패널을 공지합니다Han Woo PARK
 
2017 대통령선거 후보수락 유튜브 후보수락 동영상 김찬우 박효찬 박한우
2017 대통령선거 후보수락 유튜브 후보수락 동영상 김찬우 박효찬 박한우2017 대통령선거 후보수락 유튜브 후보수락 동영상 김찬우 박효찬 박한우
2017 대통령선거 후보수락 유튜브 후보수락 동영상 김찬우 박효찬 박한우Han Woo PARK
 
2017년 인포그래픽스 과제모음
2017년 인포그래픽스 과제모음2017년 인포그래픽스 과제모음
2017년 인포그래픽스 과제모음Han Woo PARK
 
SNS 매개 학습공동체의 학습네트워크 탐색 : 페이스북 그룹을 중심으로
SNS 매개 학습공동체의 학습네트워크 탐색 : 페이스북 그룹을 중심으로SNS 매개 학습공동체의 학습네트워크 탐색 : 페이스북 그룹을 중심으로
SNS 매개 학습공동체의 학습네트워크 탐색 : 페이스북 그룹을 중심으로Han Woo PARK
 
2016년 촛불집회의 페이스북 댓글 데이터를 통해 본 하이브리드 미디어 현상
2016년 촛불집회의 페이스북 댓글 데이터를 통해 본 하이브리드 미디어 현상2016년 촛불집회의 페이스북 댓글 데이터를 통해 본 하이브리드 미디어 현상
2016년 촛불집회의 페이스북 댓글 데이터를 통해 본 하이브리드 미디어 현상Han Woo PARK
 

More from Han Woo PARK (20)

소셜 빅데이터를 활용한_페이스북_이용자들의_반응과_관계_분석
소셜 빅데이터를 활용한_페이스북_이용자들의_반응과_관계_분석소셜 빅데이터를 활용한_페이스북_이용자들의_반응과_관계_분석
소셜 빅데이터를 활용한_페이스북_이용자들의_반응과_관계_분석
 
페이스북 선도자 탄핵촛불에서 캠폐인 이동경로
페이스북 선도자 탄핵촛불에서 캠폐인 이동경로페이스북 선도자 탄핵촛불에서 캠폐인 이동경로
페이스북 선도자 탄핵촛불에서 캠폐인 이동경로
 
WATEF 2018 신년 세미나(수정)
WATEF 2018 신년 세미나(수정)WATEF 2018 신년 세미나(수정)
WATEF 2018 신년 세미나(수정)
 
세계트리플헬릭스미래전략학회 WATEF 2018 신년 세미나
세계트리플헬릭스미래전략학회 WATEF 2018 신년 세미나세계트리플헬릭스미래전략학회 WATEF 2018 신년 세미나
세계트리플헬릭스미래전략학회 WATEF 2018 신년 세미나
 
Disc 2015 보도자료 (휴대폰번호 삭제-수정)
Disc 2015 보도자료 (휴대폰번호 삭제-수정)Disc 2015 보도자료 (휴대폰번호 삭제-수정)
Disc 2015 보도자료 (휴대폰번호 삭제-수정)
 
Another Interdisciplinary Transformation: Beyond an Area-studies Journal
Another Interdisciplinary Transformation: Beyond an Area-studies JournalAnother Interdisciplinary Transformation: Beyond an Area-studies Journal
Another Interdisciplinary Transformation: Beyond an Area-studies Journal
 
4차산업혁명 린든달러 비트코인 알트코인 암호화폐 가상화폐 등
4차산업혁명 린든달러 비트코인 알트코인 암호화폐 가상화폐 등4차산업혁명 린든달러 비트코인 알트코인 암호화폐 가상화폐 등
4차산업혁명 린든달러 비트코인 알트코인 암호화폐 가상화폐 등
 
KISTI-WATEF-BK21Plus-사이버감성연구소 2017 동계세미나 자료집
KISTI-WATEF-BK21Plus-사이버감성연구소 2017 동계세미나 자료집KISTI-WATEF-BK21Plus-사이버감성연구소 2017 동계세미나 자료집
KISTI-WATEF-BK21Plus-사이버감성연구소 2017 동계세미나 자료집
 
박한우 교수 프로파일 (31 oct2017)
박한우 교수 프로파일 (31 oct2017)박한우 교수 프로파일 (31 oct2017)
박한우 교수 프로파일 (31 oct2017)
 
Global mapping of artificial intelligence in Google and Google Scholar
Global mapping of artificial intelligence in Google and Google ScholarGlobal mapping of artificial intelligence in Google and Google Scholar
Global mapping of artificial intelligence in Google and Google Scholar
 
박한우 영어 이력서 Curriculum vitae 경희대 행사 제출용
박한우 영어 이력서 Curriculum vitae 경희대 행사 제출용박한우 영어 이력서 Curriculum vitae 경희대 행사 제출용
박한우 영어 이력서 Curriculum vitae 경희대 행사 제출용
 
향기담은 하루찻집
향기담은 하루찻집향기담은 하루찻집
향기담은 하루찻집
 
Twitter network map of #ACPC2017 1st day using NodeXL
Twitter network map of #ACPC2017 1st day using NodeXLTwitter network map of #ACPC2017 1st day using NodeXL
Twitter network map of #ACPC2017 1st day using NodeXL
 
페이스북 댓글을 통해 살펴본 대구·경북(TK) 촛불집회
페이스북 댓글을 통해 살펴본 대구·경북(TK) 촛불집회페이스북 댓글을 통해 살펴본 대구·경북(TK) 촛불집회
페이스북 댓글을 통해 살펴본 대구·경북(TK) 촛불집회
 
Facebook bigdata to understand regime change and migration patterns during ca...
Facebook bigdata to understand regime change and migration patterns during ca...Facebook bigdata to understand regime change and migration patterns during ca...
Facebook bigdata to understand regime change and migration patterns during ca...
 
세계산학관협력총회 Watef 패널을 공지합니다
세계산학관협력총회 Watef 패널을 공지합니다세계산학관협력총회 Watef 패널을 공지합니다
세계산학관협력총회 Watef 패널을 공지합니다
 
2017 대통령선거 후보수락 유튜브 후보수락 동영상 김찬우 박효찬 박한우
2017 대통령선거 후보수락 유튜브 후보수락 동영상 김찬우 박효찬 박한우2017 대통령선거 후보수락 유튜브 후보수락 동영상 김찬우 박효찬 박한우
2017 대통령선거 후보수락 유튜브 후보수락 동영상 김찬우 박효찬 박한우
 
2017년 인포그래픽스 과제모음
2017년 인포그래픽스 과제모음2017년 인포그래픽스 과제모음
2017년 인포그래픽스 과제모음
 
SNS 매개 학습공동체의 학습네트워크 탐색 : 페이스북 그룹을 중심으로
SNS 매개 학습공동체의 학습네트워크 탐색 : 페이스북 그룹을 중심으로SNS 매개 학습공동체의 학습네트워크 탐색 : 페이스북 그룹을 중심으로
SNS 매개 학습공동체의 학습네트워크 탐색 : 페이스북 그룹을 중심으로
 
2016년 촛불집회의 페이스북 댓글 데이터를 통해 본 하이브리드 미디어 현상
2016년 촛불집회의 페이스북 댓글 데이터를 통해 본 하이브리드 미디어 현상2016년 촛불집회의 페이스북 댓글 데이터를 통해 본 하이브리드 미디어 현상
2016년 촛불집회의 페이스북 댓글 데이터를 통해 본 하이브리드 미디어 현상
 

빅데이터분석실습 농산물중급분야 V0.9

  • 1. 빅데이터 분석전문가 양성을 위한 빅데이터 분석 실습 교육 - 농산물 분야 2014. 11.
  • 2. KBIG 실습 교육 인프라 접속 후 가상 환경에서 분석 실습을 진행하겠습니다.
  • 3. 3 오늘 실습은 크롬 브라우저를 통해 접속 합니다 http://www.kbig.kr/index.php
  • 4. 4 실습 서버 코드 http://www.kbig.kr/index.php 실습 시 안내 예정
  • 5. 5 농산물(농산식품유통정보)- 중급 1. 개요 • 봄,여름 온도 상승에 따라 야외 할동이 증가되고 고기 소비량이 많아 지게 된다. 고기 소비량 중 많이 소비되는 돼지고기의 가격변화가 온도변화에 따라 연관성이 있는지 분석하고 한다. • 분석에 사용되는 데이터는 2013년도 서울지역 돼지고기 소매가격 정보와 2013년 서울지역 일별 평균온도를 사용하고자 한다. • 선행 학습 기술로 엑셀, 자바, 하둡, 몽고DB의 기초 개념을 학습해야 하고 , 시각화에서는 D3 챠트 및 R통계의 기초 활용법을 선행하여 학습을 하여야 한다. -분석예제 • 온도변화에 따라 돼지고기의 가격변화를 시계열 시각화 하여 온도와 돼지고기 가격과의 연관성을 파악하라. -분석내용 • 제공된 농산물가격 정보에서 2013년 서울 지역 돼지고기 소매가격을 추출한다. • 시계열 저장된 돼지고기 소매가격을 일별 가격평균을 구한다. 기상데이터 중 2013년 서울 지역 평균온도를 추출한다 • 돼지고기 가격과 온도와의 연관성 분석을 위해서 분석 스크립트를 실행한다. • 분석된 데이터를 엑셀형식이나 D3챠트 형식으로 보기 위한 데이터를 저장한다. • 저장된 데이터를 불러와서 엑셀이나 D3챠트로 시각화 해 본다. 2. 수집 -수집방법 • 빅데이터 분석활용센터에 접속하여 아래와 같은 샘플데이터와 같은 형태의 농산물 소매가격 및 기상 데이터를 엑세스 할 수 있도록 원시데이터를 제공 하고 있다. 수집 가공 저장 분석 시각화
  • 6. 6 농산물(농산식품유통정보)- 중급 일자 부류코드 품목코드 지역코드 마트코드 가격 2013-01-02 500 514 1101 110401 1650 2013-01-02 200 214 1101 110402 1480 2013-01-02 300 323 1101 110212 1440 2013-01-02 200 215 1101 110251 1600 2013-01-02 500 514 1101 110403 1380 2013-01-02 500 514 1101 110406 1290 2013-01-02 500 514 1101 110407 1590 2013-01-03 500 515 1101 110212 1440 2013-01-03 500 514 1101 110251 1600 2013-01-03 500 514 1101 110401 1650 [농산물 데이터 (PRODUCT.CSV) ] [코드설명 데이터 (CODE.CSV) ] 코드구분 코드 코드설명 부류코드 100 식량작물 부류코드 200 채소류 부류코드 300 측용작물 부류코드 400 과일류 부류코드 500 축산물 품목코드 514 돼지고기 품목코드 515 닭고기 지역코드 1101 서울 [기상데이터 (WHEATER.CSV) ] 지역 기상구분 측정값 일자 서울(청) 평균기온 -6.8 20110101 서울(청) 평균기온 -0.2 20110201 서울(청) 평균기온 0.5 20110301 서울(청) 평균기온 9.1 20110401 서울(청) 평균기온 12.5 20110501 서울(청) 평균기온 18 20110601 서울(청) 평균기온 25.1 20110701 서울(청) 평균기온 25.6 20110801 서울(청) 평균기온 27 20110901 서울(청) 평균기온 12.7 20111001 -수집데이터(샘플) 수집 가공 저장 분석 시각화
  • 7. 7 농산물(농산식품유통정보)- 중급 2. 수집 -수집방법 • 수집방법에는 FTP/SCP등을 이용해서 처리하는 방법이 있다. • 데이터 저장소에서 로컬로 일반농산물 소매가격 데이터 (product.csv) , 코드설명 데이터 (code.csv) , 기상데이터 (weather.csv) 데이터를 복사해 온다. [ 데이터 수집 (Script) ] 00.get_data_file.sh 01.move _data_file.sh 데이터 저장소에서 WGET을 이용해서 로컬로 데이터를 수집하는 커맨드 로컬로 수집해온 데이터를 작업영역으로 복사하는 커맨드 #!/bin/bash # 복사 대상 파일 정의 TARGET_PRODUCT_PRICE=/home/eduuser/nia_kbig/product/basic/product.csv TARGET_CODE=/home/eduuser/nia_kbig/product/basic/code.csv # 작업 디렉토리 정의 LOCAL_DIR=/home/eduuser/nia_kbig/data/ mv $ TARGET_PRODUCT_PRICE $LOCAL_DIR mv $TARGET_CODE $LOCAL_DIR 수집 가공 저장 분석 시각화
  • 8. 8 농산물(농산식품유통정보)- 중급 3. 가공 -가공방법 • 일반농산물 소매가격 데이터에는 2011~2013년간의 3년치 데이터가 저장되어 있다. • 분석 대상은 2013년도의 서울지역 돼지고기이다. 일반농산물 소매가격 데이터 (product.csv) 파일에서 2013년도 데이터만 추출하여 2013_product.csv 파일을 생성한다. • 기상데이터에는 2010~2014년의 5년치 데이터가 저장되어 있다. 분석 대상은 2013년도 서울지역 기상 정보이다. 기상데이터에서 2013년도 서울 지역 일별기상 데이터를 추출하여 2013_weather.csv파일을 생성한다. 1) 데이터 일자 부류코드 품목코드 지역코드 마트코드 가격 2013-01-02 500 514 1101 110401 1650 2013-01-02 500 514 1101 110402 1480 2013-01-02 500 514 1101 110212 1440 2013-01-02 500 514 1101 110251 1600 2013-01-02 500 514 1101 110403 1380 지역 기상구분 측정값 일자 서울(청) 평균기온 -4.7 20130101 서울(청) 평균기온 -11.7 20130102 서울(청) 평균기온 -13.2 20130103 서울(청) 평균기온 -10.7 20130104 -2013_product.csv (2103년 서울지역 돼지고기 소매가격) -2013_weather.csv (2103년 서울지역 일별 평균기온) 수집 가공 저장 분석 시각화
  • 9. 9 농산물(농산식품유통정보)- 중급 2) 가공 • Shell을 이용하여 2013년도 데이터만을 추출한다. 추출한 농산물 데이터는 2013_product.csv로 , 기상정보 데이터는 2013_weather.csv로 저장한다. #!/bin/bash # 농산물가격 정보 입력 CSV 파일 지정 PROD_INPUT_FILE='/home/eduuser/nia_kbig/data/product.csv' # 2013년 농산물 출력결과 CSV 파일 지정 PROD_OUTPUT_FILE='/home/eduuser/nia_kbig/data/2013_product.csv' # 기상데이터 입력 CSV 파일 지정 WEATHER_INPUT_FILE='/home/eduuser/nia_kbig/data/weather.csv' # 2013년 서울지역 평균온도 출력결과 CSV파일 지정 WEATHER_OUTPUT_FILE='/home/eduuser/nia_kbig/data/2013_weather.csv' TARGET_YEAR='2013' # 평균기온만을 대상으로 설정 , TARGET_TYPE='평균기온‘ # 서울지역의 온도를 대상으로 설정, TARGET_AREA='서울' # 2013년 서울지역 평균기온 출력결과 CSV HEADER컬럼 출력 echo "Date,Temperature" > $WEATHER_OUTPUT_FILE 02.proc_csv.sh (뒷장에 계속) 수집 가공 저장 분석 시각화
  • 10. 10 농산물(농산식품유통정보)- 중급 # ','를 구분자로 해서 파일을 읽어들인다. IFS=',' while read AREA TYPE VALUE DATE do # 측정값이 빈 것은 SKIP처리 한다. if [ -z $VALUE ]; then continue; fi # TARGET_YEAR로 시작하는 년도인지 체크한다. # TARGET_TYPE(평균기온)인지 체크한다. # TARGET_AREA(서울)인지 체크한다. if [[ ( $DATE == ${TARGET_YEAR}* ) && ( $TYPE == ${TARGET_TYPE}* ) && ( $AREA == ${TARGET_AREA}* ) ]]; then # 해당년도의 데이터만을 CSV로 출력한다. echo "$DATE,$VALUE" >> $WEATHER_OUTPUT_FILE fi done < $WEATHER_INPUT_FILE # 2013년 농산물 출력결과 CSV HEADER컬럼 출력 echo "Date,Category,Item,Area,Mart,Price" > $PROD_OUTPUT_FILE # ','를 구분자로 해서 파일을 읽어들인다. IFS=',' while read DATE CATEGORY ITEM AREA MART PRICE do # DATA가 TARGET_YEAR로 시작하는 년도인지 체크한다. if [[ $DATE == ${TARGET_YEAR}* ]]; then # 해당년도의 데이터만을 CSV로 출력한다. echo "$DATE,$CATEGORY,$ITEM,$AREA,$MART,$PRICE" >> $PROD_OUTPUT_FILE fi done < $PROD_INPUT_FILE 02.proc_csv.sh (앞장에서 계속) 수집 가공 저장 분석 시각화
  • 11. 11 농산물(농산식품유통정보)- 중급 #!/bin/bash # 2013년 농산물 출력결과 CSV 파일 지정 PROD_OUTPUT_FILE='/home/eduuser/nia_kbig/data/2013_product.csv' # 2013년 서울지역 평균기온 출력결과 CSV파일 지정 WEATHER_OUTPUT_FILE='/home/eduuser/nia_kbig/data/2013_weather.csv' # 하둡의 2013년 농산물 출력결과 저장 위치 HDFS_WEATHER=/user/bigdata/2013_weather.csv # 하둡의 2013년 서울지역 평균기온 출력결과 저장 위치 HDFS_PRODUCT=/user/bigdata/2013_product.csv # upload target file to HDFS hadoop fs -put $WEATHER_OUTPUT_FILE $HDFS_WEATHER hadoop fs -put $PROD_OUTPUT_FILE $HDFS_PRODUCT 03.upload_csv.sh 4. 저장 -저장방법 • 2013년치 일반농산물 소매가격 데이터 파일(2013_product.csv)과 2013년도 서울 평균기온 데이터 파일(2013_weather.csv)파일을 하둡에 업로드한다. • 하둡 커맨드를 이용해서 업로드한다. 수집 가공 저장 분석 시각화
  • 12. 12 농산물(농산식품유통정보)- 중급 5. 분석 -분석방법 • Java로 하둡파일 시스템에 올라가 있는 2013_product.csv 을 MapReduce를 대상으로 MapReduce작업을 통해서 일자별로 돼지고기 평균가격 데이터를 뽑아낸다. • 하둡파일 시스템에 올라가 있는 2013년도 서울시 기상데이터(2013_weather.csv)를 MapReduce작업을 통해서 2013년도 서울시의 일별 평균기온 데이터를 뽑아낸다. (1일에 평균 2~3회의 측정기온이 들어있다) • 결과값은 하둡파일 시스템의 ‘/user/bigdata/product/out/2013’ 경로에 파일로 출력하도록 한다. • MapReduce를 실행하는 프로그램은 java를 이용해서 구현하고 products.jar로 만들어서 실행한다. • 콘솔에 로그인해서 실행은 하둡의 yarn 커맨드로 실행하고 결과 파일을 구한다. 1) 데이터 일자 부류코드 품목코드 지역코드 마트코드 가격 2013-01-02 500 514 1101 110401 1650 2013-01-02 500 514 1101 110402 1480 2013-01-02 500 514 1101 110212 1440 2013-01-02 500 514 1101 110251 1600 2013-01-02 500 514 1101 110403 1380 지역 기상구분 측정값 일자 서울(청) 평균기온 -4.7 20130101 서울(청) 평균기온 -11.7 20130102 서울(청) 평균기온 -13.2 20130103 -2013년 서울지역 돼지고기 소매가격 -2013년 서울지역 일별 평균기온 수집 가공 저장 분석 시각화
  • 13. 13 농산물(농산식품유통정보)- 중급 • MapReduce를 처리하는 프로그램은 procucts.java 에 구현되어 있다. • java프로그램을 컴파일하여 product.jar파일로 만든 후 yarn 커맨드를 이용해서 product.jar파일로 mapReduce 작업을 수행한다. • 수행된 결과는 Hadoop 상에 지정한 디렉토리에 출력된다. #!/bin/bash # 현재 위치를 지정한다. CURRENT_DIR=/home/eduuser/nia_kbig/product/middle # 컴파일하여 생성할 프로그램(jar) 경로를 지정한다. TARGET_JAR=$CURRENT_DIR/products.jar # 컴파일할 소스를 지정한다. TARGET_SOURCE=$CURRENT_DIR/java_source/com/nia/hadoop/*.java # jar를 생성하는데 필요한 class 파일을 지정한다. TARGET_CLASSES=$CURRENT_DIR/com/nia/hadoop/*.class # Hadoop상에 존재하는 농수산물 가격정보 파일을 지정한다. INPUT_PRODUCT_DATA=/user/bigdata/2013_product.csv # Hadoop상에 존재하는 기상(온도)정보 파일을 지정한다. INPUT_WEATHER_DATA=/user/bigdata/2013_weather.csv # MapReduce로 처리한 결과 데이타파일을 생성할 디렉토리를 지정한다. OUTPUT_DIR=/user/bigdata/product/out/2013 #컴파일에 필요한 hadoop 라이브러리 패스와 함께 source를 컴파일한다. javac -classpath /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-client-core- 2.2.0.jar:/usr/local/hadoop/share/hadoop/common/lib/commons-cli-1.2.jar:/usr/local/hadoop/share/hadoop/common/hadoop- common-2.2.0.jar $TARGET_SOURCE # 컴파일한 *.class 파일을 jar로 압축한다. jar cf $TARGET_JAR $TARGET_CLASSES # yarn 커맨드로 Hadoop에서 TARGET_JAR 프로그램을 돌려서 Map/Reduce를 실행한다. yarn jar $TARGET_JAR com.nia.hadoop.products $INPUT_PRODUCT_DATA $INPUT_WEATHER_DATA $OUTPUT_DIR 04.run.sh 수집 가공 저장 분석 시각화
  • 14. 14 농산물(농산식품유통정보)- 중급 2) 가공 후 생성된 결과데이터 var data = [ { "item":"돼지고기" , "Data": [ { "Date":"2013-01-02" , "Value":"1490.0" }, { "Date":"2013-01-03" , "Value":"1511.4285714285713" }, { "Date":"2013-01-04" , "Value":"1440.0" }, { "Date":"2013-01-07" , "Value":"1440.0" }, { "Date":"2013-01-08" , "Value":"1440.0" }, { "Date":"2013-01-09" , "Value":"1440.0" }, { "Date":"2013-01-10" , "Value":"1345.7142857142858" }, { "Date":"2013-01-11" , "Value":"1317.142857142857" }, { "Date":"2013-01-14" , "Value":"1374.2857142857142" }, { "Date":"2013-01-15" , "Value":"1374.2857142857142" }, { "Date":"2013-01-16" , "Value":"1365.7142857142858" }, { "Date":"2013-01-17" , "Value":"1445.7142857142858" }, { "Date":"2013-01-18" , "Value":"1445.7142857142858" }, { "Date":"2013-01-21" , "Value":"1458.5714285714287" }, { "Date":"2013-01-22" , "Value":"1458.571428571428}, var temperatures = [ ["2013-01-01",-4.7], ["2013-01-02",-11.7], ["2013-01-03",-13.2], ["2013-01-04",-10.7], ["2013-01-05",-7], ["2013-01-06",-6.3], ["2013-01-07",-5.1], ["2013-01-08",-4.6], ["2013-01-09",-9], ["2013-01-10",-8.3], ["2013-01-11",-3.2], ["2013-01-12",0], ["2013-01-13",-0.5], ["2013-01-14",-2.1], ["2013-01-15",-2.1], ["2013-01-16",-2.6], ["2013-01-17",-5.8], ["2013-01-18",-4.4], ["2013-01-19",0.5], ["2013-01-20",1.6], 수집 가공 저장 분석 시각화
  • 15. 15 농산물(농산식품유통정보)- 중급 5. 분석 : 데이터 저장 -저장방법 • 2013년도 서울지역 돼지고기 평균가격과 서울지역 평균온도 변환된 데이터를 시각화에 사용할 데이터를 추출한다. 하둡의 MapReduce 결과 출력된 결과 파일을 다운로드 한다. • 출력 결과 파일은 out으로 지정한 디렉토리 아래에 PKJSON-r-00000(돼지고기, JSON포맷), PKCSV-r-00000(돼지고기,CSV포맷), WT-r-00000(평균기온)이란 이름으로 존재한다 # 하둡파일 시스템에서 로컬 파일로 다운로드 한다. $ hadoop fs -get /user/bigdata/product/out/2013/PKJSON-r-00000 /tmp/product.js $ hadoop fs -get /user/bigdata/product/out/2013/PKCSV-r-00000 /tmp/product.csv $ hadoop fs -get /user/bigdata/product/out/2013/WT-r-00000 /tmp/weather.js - 데이터 저장 변환된 데이터를 저장하기 위해서 아래와 같이 저장 스크립트를 실행한다. - 데이터 변환 다운로드 받은 파일을 이용하여 다음과 같은 product.js (JSON 배열), weather.js (javascript 배열) 파일에 저장한다. 저장한 js 파일을 시각화 HTML에서 로드해서 D3 차트로 표시한다. 수집 가공 저장 분석 시각화
  • 16. 16 농산물(농산식품유통정보)- 중급 var temperatures = [ ["2013-01-01",-4.7], ["2013-01-02",-11.7], ["2013-01-03",-13.2], ["2013-01-04",-10.7], ["2013-01-05",-7], ["2013-01-06",-6.3], ["2013-01-07",-5.1], ["2013-01-08",-4.6], ["2013-01-09",-9], … ["2013-12-30",2.2], ["2013-12-31",3.8] ]; weather.js var data = [ { "item":"돼지고기" , "Data": [ { "Date":"2013-01-02" , "Value":"1490.0" }, { "Date":"2013-01-03" , "Value":"1511.4285714285713" }, { "Date":"2013-01-04" , "Value":"1440.0" }, { "Date":"2013-01-07" , "Value":"1440.0" }, { "Date":"2013-01-08" , "Value":"1440.0" }, { "Date":"2013-01-09" , "Value":"1440.0" }, { "Date":"2013-01-10" , "Value":"1345.7142857142858" }, { "Date":"2013-01-11" , "Value":"1317.142857142857" }, { "Date":"2013-01-14" , "Value":"1374.2857142857142" }, { "Date":"2013-01-15" , "Value":"1374.2857142857142" }, { "Date":"2013-01-16" , "Value":"1365.7142857142858" }, { "Date":"2013-01-17" , "Value":"1445.7142857142858" }, … { "Date":"2013-12-31" , "Value":"1547.142857142857" }, ]} ]; product.js 수집 가공 저장 분석 시각화
  • 17. 17 농산물(농산식품유통정보)- 중급 6. 분석 -분석내용 • 2013년도 서울지역 돼지고기 평균가격과 서울지역 평균온도와의 연관성 분석을 한다. -분석방법 및 활용기술 2013년도 서울지역 돼지고기 평균가격과 2013년 서울지역 평균기온 과의 패턴 및 연관성 분석을 위해 시계열 Chart인 D3 Chart 활용한다. -분석 과정 2013년도 서울지역 돼지고기 평균가격과 2013년 서울지역 평균기온 D3 Chart 연동 2013년도 돼지고기 평균가격과 2013년 서울지역 평균기온 데이터 저장 분석데이터 저장 스크립트 실행 결과데이터 결과데이터 시각화 Chart 맵리듀스 결과데이터 수집 가공 저장 분석 시각화
  • 18. 18 농산물(농산식품유통정보)- 중급 7. 시각화 -시각화 방법 및 활용기술 • 2013년도 돼지고기 평균가격과 2013년 서울지역 평균기온 비교 분석을 D3 Chart의 꺽은선 그래프 활용한다. -시각화과정 • d3.v3.js 라이브러리 파일을 제공사이트에서 다운로드 하여 저장한다. • 시각화할 HTML 페이지를 생성한다. d3 Chart 라이브러리 모듈을 페이지 삽입을 한다. • d3 Chart Data를 읽어 오는 부분에 결과데이터 삽입을 한다. • X 축과 Y축을 값을 지정을 한다. • html 페이지를 웹브라우저에서 실행을 한다. 수집 가공 저장 분석 시각화
  • 19. 19 농산물(농산식품유통정보)- 중급 <!--- d3 모듈을 불러온다 ---> <script src=“js/d3.v3.js"></script> <!------d3 Chart data 연계 --> <script src=“js/prudct.js"></script> <script src=“js/weather.js"></script> - d3 Chart 모듈 삽입과 결과 데이터 삽입 var temperatures = [ ["2013-01-01",-4.7], ["2013-01-02",-11.7], ["2013-01-03",-13.2], ["2013-01-04",-10.7], ["2013-01-05",-7], ["2013-01-06",-6.3], ["2013-01-07",-5.1], ["2013-01-08",-4.6], ["2013-01-09",-9], ["2013-01-10",-8.3], ["2013-01-11",-3.2], ["2013-01-12",0], ["2013-01-13",-0.5], ["2013-01- 14",-2.1], ["2013-01-15",-2.1], ["2013-01-16",-2.6], ["2013-01-17",-5.8], ["2013-01-18",-4.4], ["2013-01-19",0.5], var data = [ { "item":"돼지고기" , "Data": [ { "Date":"2013-01-02" , "Value":"1490.0" }, { "Date":"2013-01-03" , "Value":"1511.4285714285713" }, { "Date":"2013-01-04" , "Value":"1440.0" }, { "Date":"2013-01-07" , "Value":"1440.0" }, { "Date":"2013-01-08" , "Value":"1440.0" }, { "Date":"2013-01-09" , "Value":"1440.0" }, { "Date":"2013-01-10" , "Value":"1345.7142857142858" }, { "Date":"2013-01-11" , "Value":"1317.142857142857" }, { "Date":"2013-01-14" , "Value":"1374.2857142857142" }, js/product.js js/weather.js 수집 가공 저장 분석 시각화
  • 20. 20 농산물(농산식품유통정보)- 중급 - 분석데이터 시각화 -데이터 분석 • 돼지고기와 기온과의 관계는 봄철인 4월 부터 기온이 올라가는 시점 부터 돼지고기의 가격이 상승하는 패턴을 보임. 기온이 가장 더운 7-8월 돼지고기의 최대 가격이 형성되어 보이는데 이는 일반인들의 휴가시기와 결합되어 소비가 많아지는 관계로 가격 상승이 보임. • 9월, 10월 기온이 하강 하면서 돼지고기의 가격이 하락하고 있는 패턴 현상을 보임. • 12월 가격 상승은 연말 연시로 돼기고기의 소비량이 증가 하여 가격이 상승한 것으로 판단이 됨. 수집 가공 저장 분석 시각화
  • 21.
  • 22. 22 [터미널 로그인 화면] 1.username : root 2.password : hello.edu 아이디/ 패스워드를 입력 하고 OK 버튼을 클릭한다.
  • 23. 23 23 1.로그인화면에서 컴퓨터 클릭 >보기 메뉴에서 목록 보기 선택하여 탐색기 형태로 나오게 함 2.실습코드 있는 위치로 폴더 이동 /home/eduuser/nia_kbig/product/middle/ 3. 00.get_dataset.sh ~ 04.run.sh 5개의 실행파일이 위해 있다. [리눅스 로그인 화면]
  • 24. 24 24 [리눅스 터미널 화면] 1.바탕화면에서 마우스 오른쪽키 누른 후 Open In Termianl 메뉴 클릭한다. 2.터미널 화면이 나온 창에서 실습코드가 있는 위치가 이동한다. cd /home/eduuser/nia_kbig/product/middle/ 입력하고 엔터를 친다 3. pwd 입력 후 엔터치면 현재 접속한 위치 디렉토리 경로가 출력이 된다.
  • 25. 25 25 [데이터 저장소에서 데이터 가져오기] 1. 명령어 입력 창에 다 데이터 가져오는 스크립트를 실행한다. ./00.get_dataset.sh 입력 후 엔터를 친다.
  • 26. 26 26 2. 중급과정 선택 후 엔터 [데이터셋 선택화면] 1. 농산물 데이터셋 선택 후 엔터 1. 전체 데이터셋 복사하기 선택 후 엔터 9. 종료 선택 후 엔터 선택화면에서 나온다
  • 27. 27 27 [데이터 가공을 위해서 가공스크립트 실행] 1. 원시데이터 가공을 위해서 가공 셀 스크립트를 실행한다. ./02.proc_csv.sh 입력 후 엔터 2.nia_kbig/data/ 폴더에 보면 가공된 파일 2개가 생성이 된다. 2013_product.csv , 2013_weather.csv
  • 28. 28 28 [nit_kbig 에 폴더의 권한을 eduuser 권한 폴더로 소유권을 변경] 1. 하둡 프로세스가 실행되는 권한은 eduuser이기 때문에 root 권한 eduuser가 접근할 수 있게 nia_kbig 폴더의 권한을 변경을 해줘야 한다. ./chown -R eduuser:eduuser nia_kbig/ 입력 후 엔터를 친다. 2. ll 명령어를 입력 후 엔처를 치면 소유권이 변경된 것을 확인 할 수가 있다.
  • 29. 29 29 1. 하둡 프로세스를 실행하기 위해서 eduuser로 로그인을 변경을 시켜준다 현재 root 로 접속이 되어 있기 때문에 하둡 실행 사용자인 eduuser로 로그인을 변경한다. su – eduuser 입력 후 엔터를 친다 [하둡 프로세스를 실행하기 위해서 실행 USER로 로그인을 변경 ]
  • 30. 30 30 [하둡 프로세스를 실행하기 위해 설치 폴더 이동] 1. 하둡 프로세스를 실행하기 위해서 하둡이 설치한 경로 까지 이동한다. 2. cd /user/local/Hadoop/sbin/ 입력 후 엔터 친다. 3. ll 을 입력 후 엔터를 치면 목록 리스트가 출력이 된다
  • 31. 31 31 1. 하둡을 실행을 한다. 2. ./start-all.sh 를 입력 후 엔터를 치면 하둡프로세스가 실행된다. [하둡 프로세스를 실행]
  • 32. 32 32 [하둡 프로세스가 정상적으로 실행을 브라우저로 확인] 1. 브라우저를 열러서 URL 입력 창에 localhost:50070 입력 후 엔터를 치면 화면과 같이 NameNode ‘localhost:9000’(active) 화면이 열리면 하둡이 정상적으로 작동한다
  • 33. 33 33 [하둡 프로세스가 정상적으로 실행 중이 브라우저로 확인] 1. 브라우저를 열러서 URL 입력 창에 localhost:8088 입력 후 엔터를 치면 화면과 같이 All Applications 화면이 열리면 하둡이 정상적으로 작동한다. 2. 맵리듀스를 실행 할 경우 진행 상태를 확인 할 수 있다. 열어서
  • 34. 34 34 [실습코드가 있는 디렉토리로 이동] 1. 하둡이 설치된 디렉토리에서 실습코드가 있는 디렉토리로 이동한다. 2. cd /home/eduuser/nia_kbig/product/middle 입력 후 엔터를 친다. 3. pwd를 입력 후 현재 디렉토리 경로를 확인을 한다.
  • 35. 35 35 [하둡에 가공된 파일을 2개를 업로드] 1. 하둡에 nia_kbig/data/ 폴더에 있는 2013_product.csv 파일과 2013_weather.csv 가공된 파일 2개를 하둡 HDFS 파일시스템 업로드 한다. ./03.upload_csv.sh 입력 후 엔터를 친다. 2. 하둡에 파일을 업로드 후 프로세스가 끝나면 정상적으로 업로드 된다
  • 36. 36 36 [브라우저로 하둡파일 시스템에 올라간 파일 확인] 1.localhost:50070 화면에서 Browse filesystem 을 클릭하여 파일 업로드 현황을 볼 수 있다. 2. /user/bigdata/ 폴더 밑에 2013_product.csv , 2013_weather.csv 파일 목록이 출력된다.
  • 37. 37 37 [맵리듀스 분석을 하기 위해서 분석스크립트 실행] 1. 맵리듀스 분석을 하기 위해서 분석스크립트를 실행 2. ./04.run.sh 입력 후 엔터를 친다. 3. 분석프로세스 돌아가면 브라우저로 localhost:8088 화면을 열어 진행 프로세스를 확인한다.
  • 38. 38 38 [맵리듀스 분석을 하기 위해서 분석실행 화면] 1.화면에서 마우스 오른쪽 키를 클릭 후 새로고침을 클릭하면 현재 진행 프로세스를 확인 할 수 있다.
  • 39. 39 39 [ 분석 결과물 확인] 1.분석이 완료되면 product 라는 폴더가 생성이 되고 폴더를 클릭하면 분석 결과물 리스트를 확인 할 수 있다.
  • 40. 40 40 [ 분석 결과물 폴더] 1.분석완료 결과물은 하둡디렉토리 /user/bigdata/product/out/2013 폴더에 위치해 있다 2.PKCSV-r-00000 , PKJSON-r-00000, WT-r-00000 파일 폴더가 생성이 된다.
  • 41. 41 41 [ 분석데이터 저장] 1.분석데이터를 저장하기 위해서 PKJSON-r-00000 폴더를 클릭하여 들어가면 데이터 목록을 확인할 수가 있다. 2.전체선택을 하여 복사를 한다.
  • 42. 42 42 [ 분석데이터 시각화 데이터 저장] 1.탐색기 화면으로 돌와와서 visual폴더 밑에 product.js 파일을 선택한 후 오른쪽 마우스를 클릭하여 gedit로 열기를 클릭하여 파일을 연다.
  • 43. 43 43 [ 분석데이터 시각화 데이터 저장] 1.복사한 데이터를 붙여넣기하여 데이터를 삽입하고 저장 버튼을 클릭하여 저장을 한다. 2.저장후 파일 저장창을 닫는다.
  • 44. 44 44 [ 분석데이터 시각화 데이터 저장-기상데이터] 1.기상데이터도 복사를 하여 weather.js 파일을 열어 기존에 들어가 있는 데이터를 모두 삭제를 한다. 2.데이터 삭제 후 붙여넣기 하여 데이터를 저장한다.
  • 45. 45 45 [ 분석데이터 시각화 보기- D3 챠트] 1.visual 폴더에 product_chart.html 파일을 더블 클릭하면 브라우저로 실행이 된다. 2.브라우저로 시각화 챠트가 출력이 된다.
  • 46. 46 46 [ 분석데이터 시각화 보기- D3 챠트] 1.분석된 데이터가 챠트로 출력이 된다.