반응형
2020/04/03 - [BigData/Spark] - spark linux install (Master / Worker)
2020/04/06 - [BigData/Spark] - spark sql
2020/04/06 - [BigData/Spark] - Spark 모니터링
2020/04/06 - [BigData/Spark] - Spark Dataset
2020/04/06 - [BigData/Spark] - Spark Dataset 데이터 조회 예제
2020/04/06 - [BigData/Spark] - Dataset DataFrame Convert
2020/04/06 - [BigData/Spark] - Spark submit
데이터를 사용할때 JavaBean 의 List를 사용할때도, 반대로 List를 Dataset 으로 만들어 사용 할때가 있다. sparkSession.createDataset() , sparkSession.createDataFrame(rows, schema); 을 사용하여 데이터를 변환하여 사용한다.
/**
* List<T> 파일을 Dataset<T> 으로 변형 하기
* @param list
* @param tClass
* @param <T>
* @param <D>
* @return
*/
public <T,D> Dataset<T> convertDataset (List<T> list, Class<T> tClass) {
SparkSession sparkSession = SparkSessionPool.getSparkSession();
Encoder<T> personEncoder = Encoders.bean(tClass);
return sparkSession.createDataset(list,personEncoder);
}
/**
* List<T> (리스트)로 데이터 프레임 생성 하기
* @param <T>
* @param data
* @param beanClass
* @return
*/
public <T> Dataset<Row> createDataFrame(List<T> data, Class<T> beanClass) {
SparkSession sparkSession = SparkSessionPool.getSparkSession();
return sparkSession.createDataFrame(data, beanClass);
}
/**
*
* @param rows
* @param schema
* @return
*/
public Dataset<Row> createDataFrame(List<Row> rows, StructType schema ) {
SparkSession sparkSession = SparkSessionPool.getSparkSession();
return sparkSession.createDataFrame(rows, schema);
}
반응형
'BigData > Spark' 카테고리의 다른 글
Spark submit (0) | 2020.04.06 |
---|---|
Spark Dataset 데이터 조회 예제 (0) | 2020.04.06 |
Spark Dataset (0) | 2020.04.06 |
Spark 모니터링 (0) | 2020.04.06 |
spark sql (0) | 2020.04.06 |