복붙노트

[HADOOP] 세미콜론으로 구분 된 필드가있는 하나의 열이있는 .csv 파일에서 Hive 테이블을 만들려면 어떻게해야합니까?

HADOOP

세미콜론으로 구분 된 필드가있는 하나의 열이있는 .csv 파일에서 Hive 테이블을 만들려면 어떻게해야합니까?

나는 하이브 테이블에서 원하는 5 개의 필드가있는 하나의 (첫 번째) 열 / 셀 형식으로 .csv 파일을 세미콜론으로 구분하여 가지고 있습니다. 이렇게 :

ISBN;"Title";"Author";"Year";"Publisher"
0002005018;"Clara Callan";"Richard Bruce Wright";"2001";"HarperFlamingo Canada"
0399135782;"The Kitchen God's Wife";"Amy Tan";"1991";"Putnam Pub Group"

etc. 
etc.
...

Hive 쿼리를 사용하여 데이터를 나눌 수 있습니까? 동일한 순서의 열 이름으로 만든 테이블에 저장합니까?

regexp_extract처럼? 아니면 serde를 사용해야합니까?

Hadoop / hive / beeswax를 처음 사용하고 Cloudera-quickstart vm 5.2를 사용하고 있습니다.

해결법

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

    1.다음과 같이하고 싶은 것처럼 들립니다.

    다음과 같이하고 싶은 것처럼 들립니다.

    CREATE TABLE books (ISBN STRING, Title STRING, Author STRING, Year STRING, Publisher STRING)
      ROW FORMAT DELIMITED FIELDS TERMINATED BY "\;";
    LOAD DATA INPATH '/path/to/your/datafile' INTO TABLE books;
    
  2. from https://stackoverflow.com/questions/27616764/how-can-i-make-a-hive-table-from-a-csv-file-which-has-one-column-with-fields-de by cc-by-sa and MIT license