복붙노트

[HADOOP] 진수에 하이브 CsvSerde 표를 구분

HADOOP

진수에 하이브 CsvSerde 표를 구분

나는 16 진수 값의 층으로 구분되어 csvserde를 사용하여 파일의 디렉토리 떨어져 외부 하이브 테이블을 만들려고하고 있습니다. 일반 쉼표로 분리에 csvserde 잘 작동합니다. 나는 구분자의 16 진수 값을 표현하는 방법을 잘 모르겠습니다.

CREATE EXTERNAL TABLE example_table(
id bigint,
property_id string,
application_date date,
system_time timestamp,
system_end timestamp
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
WITH SERDEPROPERTIES(
"separatorChar" = "\1F"
)
STORED AS
TEXTFILE
LOCATION '/user/nameofdirectory' 

해결법

  1. ==============================

    1.seperatorChar는 8 진수로 표현한다.

    seperatorChar는 8 진수로 표현한다.

    이 경우에, 분리는 16 진수 1F (31 진수 당량)이었다.

    진수, 그것은 037.이 그래서 seperatorChar는 "037 \"이어야한다입니다

  2. from https://stackoverflow.com/questions/41746425/delimit-hive-csvserde-table-on-hexadecimal by cc-by-sa and MIT license