빅데이터

[빅데이터] 복습 밑 STS 로 jar 파일 만들기

allempty_sheep 2024. 6. 13. 11:34
반응형
🎁 본 글은 실무로 '배우는 빅데이터기술' 책을 따라해보고 실행하여보는 과정을 기록한 글이다.

🎁 빅데이터 처리의 전체적인 흐름과 과정을 학습하기 쉬우며 빅데이터에 관심있는 사람들에게 추천한다.

 

이때까지 한 내용 요약.

 

flume (데이터 수집) -(producer 동작)>

kafka (boroker 라는 물리적 서버 안의 topic 에 저장, 카프카는 buffer 의 기능을 함) -(consumer 동작)>

HBase(대용량), Redis(실시간) 로 데이터가 각각 들어감

 

저번 글 내용 마지막을 복습 해보자.

hbase shell

 

클라우데라 매니저 - HBase 구성 - timeout 검색 - RPC 시간 제한을 늘려준다. (20분)

 

 

운행 지역 정보를 가져와서 알아보자

scan 'DriverCarInfo',{LIMIT=>20}

 

 

 

나온 데이터에서 area_number 를 확인하고 아래 코드에 자신의 지역 번호를 입력하여 데이터를 다시 뽑아보자.

scan 'DriverCarInfo',{COLUMNS=>['cf1:car_number','cf1:area_number'],FILTER=>"RowFilter(=,'regexstring:21604202') AND SingleColumnValueFilter('cf1','area_number',=,'regexstring:F06')"}

row(s) 개수가 나오면 제대로 가져온 것이다.

 

 

자바 코드를 변경하기 위해 다음 프로그램을 사용 할 것이다.

Spring STS3 다운로드

 

https://github.com/spring-attic/toolsuite-distribution/wiki/Spring-Tool-Suite-3

Latest STS3 Downloads
Spring Tool Suite 3.9.18

 

Window 용 zip 버전을 다운 받아 준다.


https://download.springsource.com/release/STS/3.9.18.RELEASE/dist/e4.21/spring-tool-suite-3.9.18.RELEASE-e4.21.0-win32-x86_64.zip 

 

다운 받은 후 압출을 풀어주고 D 드라이브에 이동 시켜 주었다.

아래 파일을 실행 시켜보자

D 드라이브에 폴더를 하나 생성한다.

 

실행항 STS 의 폴더를 sts3로 지정해 준다.

 

자바 11버전이 아니면 오류가 날 수 있다.

 

설정을 바꾸어 주자.

내 피시 우측클릭 - 속성 - 고급 시스템 설정으로 들어간다.

환경변수로 들어가서 설정 할 것이다.

시스템 변수의 패스를 더블클릭해서 설정 해 준다.

 

위의 JAVA_HOME 은 21 버전이 연결 되어있다.

새로만들기 - 찾아보기 - Program Files - Java - jdk11 - bin 클릭 후 확인

21버전보다 위로 올려준다.

 

다시 확인해 보면 자바 버전이 11으로 변경 된 것을 볼 수 있다.

 

STS를 다시 실행 해 보자.

(STS3 버전은 STS4 버전과 다르게 톰캣 서버를 설치 해 주어야 한다.)

 

오류가 나지 않는 것을 확인 할 수 있다.

 

 

Window - Preference - General - Workspace 로 들어가 설정을 해줄 것이다.

가장 아래의 Text file encoding을 UTF-8 로 변경 해 준다.

File - import - General - Existing Projects into Workspace 를 클릭

 

이미 가지고 있는 폴더를 가지고 올 것이다.

Finish 를 눌러 가져와 주자.

 

다음과 같은 파일들을 받았다. pom.xml 이 구성 파일이다.(중요 별표 백개)

 

라이브러리로 들어가 준다.

 

 

아래 파일을 클릭 remove로 지운 후 클래스 패스를 선택하여 추가 해 줄 것이다.

 

Force Update 를 누르고 확인

 

모든 에러가 사라진 것을 확인.

 

가독성을 위해 텍스트도 설정 해 주자.

 

 

이제 코드를 수정 해보자

 

다음과 같이 수정 해 주었다.

 

이제 컴파일 후 jar 파일을 만들어 줘야 한다.

 

never을 선택 해줬다.

 

target 폴더 안에 생성된 bigdata.smartcat.storm-1.0.jar 파일을 확인 할 수 있다.

 

 

해당 파일을 사용하여 데이터를 만들어보자

sever02 에서 폴더로 이동해 새로운 파일로 변경 해 주자

cd /home/pilot-pjt/working

 

 

storm topology 를 재배포 해준다.

그전에 스톰을 실행하고 확인 해주자.

service storm-nimbus start
service storm-supervisor start
service storm-ui start

service storm-nimbus status
service storm-supervisor status
service storm-ui status

pid 숫자가 나와야 실행이 된 것이다.

이후 킬.

storm kill DriverCarInfo

 

 

새로운 jar 파일으로 실행한다.

storm jar bigdata.smartcar.storm-1.0.jar com.wikibook.bigdata.smartcar.storm.SmartCarDriverTopology DriverCarInfo

 

에러가 날 수 있는데 STS 에서 pom.xml 에서 버전을 수정 해준다.

 

그리고 설정을 변경 해줄 것이다.

1.8 버전으로 변경

 

 

 

이후 Maven install 으로 새로운 파일을 생성 해보고 해당 파일로 명령어를 실행 해 본다.