복붙노트

[HADOOP] 하둡 - 돼지를 사용하여 하이브 테이블을로드

HADOOP

하둡 - 돼지를 사용하여 하이브 테이블을로드

나는 돼지를 사용하여 하이브 테이블을로드 할. 나는 우리가 HCatLoader을 통해이 작업을 수행 할 수 있다고 생각하지만 난 돼지를로드 할 XML 파일을 사용하고 있습니다. 이를 위해, 나는 XMLLoader을 사용해야합니다. 나는 돼지에서 XML 파일을로드하는 두 가지 옵션을 사용할 수 있습니다.

나는 내 자신의 UDF를 사용하여 XML 파일에서 데이터를 추출하고, 우리가 모든 데이터를 추출하면, 나는 하이브 테이블에 돼지 데이터를로드 할 수 있습니다.

내가받은 XML은 매우 복잡하고 내가 XML을 구문 분석하는 내 자신의 UDF를 쓴 필자는 XML 데이터를 추출하는 하이브를 사용할 수 없습니다. 어떤 제안이나 포인터 우리는 돼지의 데이터를 사용하여 하이브 테이블을로드 할 수있는 방법에 대해 설명합니다.

내가 AWS를 사용하고 있습니다.

해결법

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

    1.당신은 구분 기호를 사용하여 텍스트 파일에로드 된 데이터를 저장할 수 있습니다 (쉼표 일 수 있음) 다음 파일 위치에 하이브 가리키는 외부 테이블을 만듭니다.

    당신은 구분 기호를 사용하여 텍스트 파일에로드 된 데이터를 저장할 수 있습니다 (쉼표 일 수 있음) 다음 파일 위치에 하이브 가리키는 외부 테이블을 만듭니다.

    Create external table YOURTABLE (schema)
    row format delimited
    fields terminated by ','
    location '/your/file/directory';
    
  2. ==============================

    2.당신은 HCatStorer를 사용하여 하이브 테이블에 돼지의 데이터를 저장할 수 있습니다. 예를 들면 :

    당신은 HCatStorer를 사용하여 하이브 테이블에 돼지의 데이터를 저장할 수 있습니다. 예를 들면 :

    register 's3n://bucket/path/xmlUDF.jar'
    xml = LOAD 's3n://bucket/pathtofiles' USING xmlUDF();
    STORE xml INTO 'database.table' USING org.apache.hive.hcatalog.pig.HCatStorer();
    

    귀하의 질문은 매우 명확하지 않다. 당신은 돼지 내에서 XML 및 하이브 데이터로 작업 뭔가를하고 하이브에 결과를 저장하기 위해 기대하고 있습니까? 그냥 하이브에서 XML 데이터를 저장하고 거기에 작업을하려고?

  3. from https://stackoverflow.com/questions/32921201/hadoop-load-hive-tables-using-pig by cc-by-sa and MIT license