2014-04-24 1 views

답변

0

Linux로 파일을 가져 오려면 CentOS CLoudera 상자에 ftp하거나 파일 공유를 마운트하고 거기에서 복사해야합니다.

CentOS/Cloudera 상자에서 웹 브라우저를 열고 하이브/돼지 등 사용자 인터페이스 인 Cloudera Manager 및 Hue에 로그인 할 수 있습니다. 왼쪽부터 세 번째와 아이콘이 있습니다. Beeswax/하이브. 아이콘을 클릭하고 거기에서 시작하십시오. 당신은 클라우 데라 상자에서 파일을 일단

당신의 다른 선택은 두 가지 중 하나를 수행 할 수 있습니다 하이브로 파일을로드하려면 HERE 특히 copyFromLocal

을 발견 하둡 FS 명령을 사용하는 것입니다. 하나의 큰 준비 필드에로드하고 다음과 같이 오프셋을 사용하여 원하는 필드로 구문 분석 :

LOAD DATA INPATH '/user/xyz/Inbound/files/target.csv' INTO TABLE 'myTable' 

이 하나의 필드로 전체 기록을로드합니다. 그런 다음로드되면 다음을 수행합니다.

INSERT OVERWRITE TABLE myTable SELECT 
regexp_extract(col_value, '^(?:([^,]*)\,?)(1)', 1) New_Field_name1 
regexp_extract(col_value, '^(?:([^,]*)\,?)(5)', 1) New_Field_name2 
...... 
FROM myTable; 

구문 도전 보이지만이 나쁘지 않다, 당신은 또한 개별 필드에 CSV를로드 할 수 있습니다 HiveQL 색조에 읽어해야합니다하지만 당신은 필드 이름을 직접 추가해야합니다. 나는 결코 전에 그것을하지 않고 있었다.