카테고리 없음

deltalake - hive 연동

케키키케 2024. 11. 15. 13:46


Hive와 연동 !
delta-hive connector 사용
 
delta-hive-assembly_2.12-3.1.0.jar 를 lib directory 에 추가
hive-site.xml의 hive.aux.jars.path 프로퍼티에 위에서 추가한 경로를 추가해줌.
혹은 아래와 같이 beeline 등으로 붙어서 CLI에서 설정도 가능

SET hive.input.format=io.delta.hive.HiveInputFormat;
SET hive.tez.input.format=io.delta.hive.HiveInputFormat;

 
 
 
Hive와 연동하고 hdfs에 적재된 deltalake 테이블을 hive external table로 생성해보자.
데이터 타입이 정확히 일치하도록.
 

set parquet.column.index.access=false;
 
CREATE EXTERNAL TABLE `test.trip`(
  `trip_type` int,
  `trip_code` string,
  `name` string,
  `group_code` int,
  `place` string,
  `date` string)
ROW FORMAT SERDE 'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe'
STORED BY 'io.delta.hive.DeltaStorageHandler'
WITH SERDEPROPERTIES (
  'hive.input.format'='io.delta.hive.HiveInputFormat',
  'hive.tez.input.format'='io.delta.hive.HiveInputFormat')
LOCATION
'hdfs://my-space/home/test/trip'
 
ALTER TABLE `test.trip` SET TBLPROPERTIES ('delta.logRentionDuration' = '1 hour',  'delta.deletedFileRetentionDuration' = '1 hour');