티스토리 뷰

반응형

Oracle에 있는 데이터를 MongoDB로 옮기는 간단한 ETL 프로그램을 만들어 볼려고 합니다.


1. 환경

- DBMS:  Oracle 11g, MongoDB 3.6.3 

- 라이브러리: ojdbc6-11.2.0.1.0.jar, mongo-java-driver-3.6.3.jar, Gson-2.8.2.jar

- 개발환경: jdk 1.8


2. 개발 개요

- jdbc로 오라클에서 데이터를 추출한 후에 Gson를 이용해서 Bson (Document)로 변환해서 몽고디비에 데이터 적재하게 됨.


3. 모듈: JsonArray(Gson) -> List<Document> (bson) 변환함수 구현


DataConverter.java

----------------- source ----------------------

import com.google.gson.*;

import org.bson.Document;

import java.lang.reflect.Type;


public class DataConverter {


   public static List<Document>  jsonToList(JsonArray  jsonData) throws Exception {

        Gson parser = new Gson();

       Type listType = new TypeToken<List<Document>>(){}.getType();

       return  parser.fromJson(jsonData.toString(), listType);

   }  

}



2편에서는 DataConverter 클래스에 JDBC ResultSet 결과를 JsonArray로 변환하는 함수를 만들어 볼 예정입니다.




- 계속 -


반응형