Python 구조 hive insert 문 구 를 사용 하여 설명 합 니 다.

my sql 은 nevicat 에서 insert 문 구 를 데이터 구조 로 내 보 낼 수 있 지만,hive 는 insert 문 구 를 직접 내 보 낼 수 없습니다.우 리 는 먼저 hive 명령 행 에 인쇄 한 다음 에 스 크 립 트 를 insert 문장 으로 조립 하여 데이터 구 조 를 할 수 있다python 스 크 립 트 에 수 동 으로 복사 하여 sql 문 구 를 구성 합 니 다
def transformString(s):  list_s = s.split('\t')  print(len(list_s))  s_new = ''  for item in list_s:    s_new += '\"' + item.strip(' ') + '\"' + ','  return str(s_new.rstrip(','))#    copy hive          s = "555 helloworld"s_new = transformString(s)sql = 'insert into dw.test PARTITION (ymd = \'2019-03-18\') values({});'.format(s_new)print(sql)
결과:insert into dw.test PARTITION(ymd='2019-03-18')values("555","helloworld");추가 지식:python 은 hive 에 데 이 터 를 삽입 하여 만 나 는 구덩이 가 프로젝트 수요 에 따라 python 모델 링 을 사용 하려 면 hive 를 통 해 수 를 추출 하고 결 과 를 hive 표 에 기록 해 야 합 니 다.다음 과 같은 몇 개의 갱 부 로 를 시 도 했 습 니 다.다음 과 같이 기록 만 했 습 니 다.impyla 라 이브 러 리 를 통 해 hive 와 python 교량 1.1 환경 설정 의 구덩이(나중에 연결)를 만 들 었 습 니 다.주:원 격 으로 hive 를 방문 할 때 계 정 비밀 번 호 를 설정 하 는 것 을 기억 하 세 요!!오류:...-4.。。1.2 impyla 의 executmany 로 데 이 터 를 대량으로 삽입 하지 마 세 요.다른 방식 으로 hive 에 데 이 터 를 삽입 하지 마 세 요.모두 구덩이 입 니 다!더없이 느리다!자료 찾 는 것 도 그 러 지 말 라 는 거 야.hdfs 법 2.1.python 의 pyhdfs 라 이브 러 리 로 결 과 를 hdfs 파일 로 작성 한 다음...니 마!!서버 의 hdfs 를 연결 하 는 데 성공 하지 못 했 습 니 다.로 컬 hdfs 는 가능 합 니 다.2.2.hdfs 를 쓴 이상 모델 결 과 를 hadop/hdfs 명령 을 통 해 hdfs 에 직접 업로드 하 겠 습 니 다.그리고 hive 명령 load data 를 통 해 hdfs 의 결 과 를 hive 로 가 져 옵 니 다.좀 꼬 였 지만 성 공 했 어!!BUT!!!동생,이 직접 HDFS 를 조작 하 는 위험 이 너무 높 아 요.아니면 다른 방법 을 찾 아 보 세 요.거절 하면 안 돼 요!!2.좋 습 니 다.건의 에 따라 카 프 카 를 사용 하 세 요.죄송합니다.이 구덩이 뒤 를 다시 밟 겠 습 니 다.2.4 임시 처리 방안:먼저 결 과 를 my sql 에 기록 한 다음 에 hive 로 넘 어 갑 니 다.이것 은 구덩이 가 없습니다.구체 적 으로 저도 my sql,구덩이 가 없습니다.그냥 좀 돌아 서...위 에서 파 이 썬 구조 인 hive insert 문 구 를 사용 한 설명 은 바로 편집장 이 여러분 에 게 공유 한 모든 내용 입 니 다.여러분 께 참고 가 되 었 으 면 좋 겠 습 니 다.여러분 들 도 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기