Ace-T's Blog 내 검색 [네이버 커넥트 이웃 합니다~^-^/ 요청 大 환영~~]

하둡 configuration으로 객체 넘기기!

BigDATA/Hadoop 2015.01.12 11:32
[Good Comment!!, Good Discussion!!, Good Contens!!]
[ If you think that is useful, please click the finger on the bottom~^-^good~ ]
by ace-T



음....하둡 MR작업 중...

configuration에서 객체를 넘겨주고 싶어서 아래와 같이 인터페이스(QueryCodeList)와 구현체(QueryCodeListImpl)을 만든 뒤

setClass를 해주었다..

conf.setClass("queryCodeList", QueryCodeListImpl.class, QueryCodeList.class);

아래처럼 setClass시에 잘 생성 된 것을 알수가 있다.


그런 뒤 getClass를 통해 해당 객체를 가져오려고 하는데...잘안된다 ㅋㅋㅋㅋㅋ 널포인트 예외..ㄷㄷㄷ


 new 연산자를 통해 생성한 뒤에는 getClass로 가져올 수가 있었지만 아무 의미 없다~ 내가 하고자하는 것은 객체에 이미 데이터가 들어가 있는 상태이기 때문이다.

어떻게 해서 객체를 전달할 수 있을까?

1) Job쪽에 사용하고자 하는 객체를 생성 및 setter를 통해 데이터를 넣어줬다.

2) Gson을 통해 객체를 String형태로 만들어준다.

Gson gson = new Gson();    
conf.set("queryCodeList", gson.toJson(queryCodeListImplObject));

3) Map에서 conf.get을 통해 가져온다.

QueryCodeListImpl queryList = gson.fromJson(config.get("queryCodeList"), QueryCodeListImpl.class);

4) 해당 객체를 디버깅해서 보면 setter로 넣은 값들이 잘들어가 있는것을 확인할 수 있다. good~^0^


성능에 영향을 얼마나 줄지..과연!

저작자 표시 비영리 변경 금지
신고

acet 박태하가 추천하는 readtrend 추천글!

설정

트랙백

댓글

:::: facebook을 이용하시는 분들은 로그인 후 아래에 코멘트를 남겨주세요 ::::

티스토리 툴바