sqoop 에서 post gresql 데이터베이스 표를 읽 고 hdfs 에 가 져 온 실현
3131 단어 sqooppostgresqlhdfs
우선 환경 에 Hadoop 과 sqoop 이 설치 되 어 있 는 지 확인 하고 설치 할 때 다운로드,압축 해제 및 환경 변 수 를 설정 해 야 합 니 다.여 기 는 더 이상 말 하지 않 고 인터넷 튜 토리 얼 이 많 습 니 다.
1.sqoop 설정 및 성공 여 부 를 검증 합 니 다.
프로필 로 전환:cd$SQOOPHOME/conf
설정 환경 파일 만 들 기:cp sqoop-env-template.sh sqoop-env.sh
프로필 수정:conf/vi sqoop-env.sh:수정 내용 은 다음 과 같 습 니 다.
설정 이 완료 되면 명령 sqoop-version 을 실행 하여 성공 여 부 를 확인 합 니 다.그림 에서 sqoop 1.4.7 을 표시 하면 성공 합 니 다.
2.postgresql 구동 jar 패키지 추가
sqoop 을 사용 하여 postgresql 의 데 이 터 를 읽 기 때문에 데이터베이스 드라이버 를$SQOOP 에 넣 어야 합 니 다.HOME/lib 에서 내리 시 면 됩 니 다.
3.pg 데이터베이스 에 hdfs 에 표 가 져 오기
1.우선 Hadoop 클 러 스 터 를 시작 해 야 합 니 다.그렇지 않 으 면 오류 가 발생 합 니 다.
실행 문$HADOOPHOME/sbin/./start-all.sh
2.sqoop 문 구 를 실행 하여 hdfs 로 데 이 터 를 가 져 옵 니 다.
sqoop import \
--connect jdbc:postgresql:localhost:5432/test( )
--username postgres ( )
--password 888888 ( )
--table company ( )
--m 1 (mapreduce )
실행 결 과 는 그림 과 같 습 니 다.3.hdfs 에 표 데이터 가 성공 적 으로 저장 되 었 는 지 확인 합 니 다.
$HADOOP_HOME/bin hdfs dfs-cat/sql/part-m-00000(데이터 디 렉 터 리 를 자신의 것 으로 변경)
결 과 는 그림 과 같다.
sqoop 를 사용 하여 post greql 의 표 데 이 터 를 hdfs 에 성공 적 으로 가 져 왔 음 을 표시 합 니 다.이것 은 오늘 도 약간의 수확 이 있 는 셈 입 니 다!
추가:Sqoop 을 이용 하여 PostgreSQL 에서 데 이 터 를 가 져 올 때 발생 하 는 구덩이
sqoop import \
--connect "jdbc:postgresql://10.101.70.169:5432/db_name" \
--username "postgres" \
--password "123456" \
--table "test_user"\
--target-dir "/user/hive/warehouse/test.db/test_user" \
--fields-terminated-by '\t' \
--lines-terminated-by '
' \
--hive-drop-import-delims \
--incremental lastmodified \
--merge-key id \
--check-column update_time \
--last-value "2019-03-25" \
--m 1 \
-- --schema "schema_name" \
--null-string '\\N' \
--null-non-string '\\N'
1.-- --schema
은 반드시 뒤에 두 어야 합 니 다.그렇지 않 으 면 실행 로그 가 없 거나 지정 한 디 렉 터 리 에 데 이 터 를 가 져 올 수 없고 다시 실행 할 수 없습니다(디 렉 터 리 가 존재 합 니 다)2.
PostgreSQL
은 반드시 SET standard_conforming_strings = on;
을 설치 해 야 한다.그렇지 않 으 면 --null-string --null-non-string
은 효과 가 없다.3.
--null-string
과 --null-non-string
을 -- --schema
뒤에 두 고 그렇지 않 으 면 집행 타 임 스 Can't parse input data: '\N'
이상 은 개인 적 인 경험 이 므 로 여러분 에 게 참고 가 되 기 를 바 랍 니 다.여러분 들 도 저 희 를 많이 응원 해 주시 기 바 랍 니 다.만약 잘못 이 있 거나 완전히 고려 하지 않 은 부분 이 있다 면 아낌없이 가르침 을 주시 기 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Sqoop 이상 ERROR 도구.ImportTool: Imported Failed: column not foundSqoop 가져오기 데이터가 Hive 열에 이상 없음: sqoop을 사용하여 sqlserver에서 데이터를 하이브로 내보내는 중입니다. sqoop 문장은 다음과 같습니다. sqoop import --hive-impo...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.