Greenplum 데이터베이스 확장 실무 (하) - 실시 마무리

6543 단어 PaaS빅 데이터
GP 확장 을 실시 하 는 것 은 바로 명령 이다. 가장 시간 이 걸 리 는 것 은 실시 후의 데이터 재 분포 이다. 즉, 데 이 터 를 기 존의 노드 에서 새로운 seg host 로 균형 시 키 는 것 이다. 이 편 은 실시, 마무리 과정 을 묘사 하고 흔히 볼 수 있 는 문 제 를 제시 할 것 이다.
실시 하 다.
모든 노드 간 의 네트워크 와 디스크 성능 을 검사 합 니 다.
su - gpadmin
gpstop -M immediate
exit
source /usr/local/greenplum-db/greenplum_path.sh
gpcheckperf -f /root/20141231exp/allnodes -d /data1 -d /data2 -d /data3 -d /data4 –v
su - gpadmin
gpstart

그 중 IO 가 1GB / s 정도 라면 거의 문제 가 없다.
용량 을 늘리다
  • 다음 스 크 립 트 확장 실행
  • gpexpand -i /home/gpadmin/20150523exp/gpexpand_inputfile_20150520_161055 -D databasename
  • 확장 가능 한 문제
  • 용량 을 늘 린 후 중 분 포 를 완성 하지 못 하면 임 무 를 수행 하고 그 임 무 는 주 키 를 확보 해 야 한다.
  • 명령 집행 과정 에서 이 workmem warning, 무시

  • GP 서비스 다시 시작
    gpstop -M immediate
    gpstart

    설정 검사
    psql -d dw
    dw=# select * from gp_segment_configuration order by dbid;
    gpstate

    확장 후 조작
    중 분포
    gpexpand -d 80:00:00 -D dw -n 16 > gpexpand_20141231.log &

    중 분포 과정 에서 다음 문장 으로 상 태 를 조회 하면 과정 이 느 릴 수 있 습 니 다.
    select * from gpexpand.expansion_progress;
    SELECT status, expansion_started, source_bytes
    FROM gpexpand.status_detail
    WHERE fq_name = 'dw_detail.client_offund_detail';
    select status,count(1),round(sum(source_bytes/1024/1024/1024),2) as size_giga from gpexpand.status_detail group by status order by 1;
    select fq_name,expansion_started,expansion_finished,source_bytes from gpexpand.status_detail where status='IN PROGRESS';

    환경 을 깨끗이 정리 하 다.
    gpexpand -c -D dw

    이 힌트 에 따라 y 를 입력 하 십시오.
    용량 을 늘 리 고 스크롤 백 하 다.
    확장 과정 에서 오류 가 발생 하면 GP master node 를 시작 한 다음 rollback 을 시작 해 GP 를 시작 해 야 합 니 다.
    gpstart -m
    gpexpand –r –D dw
    gpstart

    흔 한 문제
  • input 파일 생 성 (2.6) 은 호스트 한 줄 의 호스트 정보 파일 을 사용 해 야 합 니 다. 그렇지 않 으 면 확장 을 실행 할 때 다음 과 같은 오 류 를 보고 합 니 다.
  • 20140405:14:47:45:023629 gpexpand:mdw:gpadmin-[ERROR]:-gpexpand failed: Failed to open /data/master/gpexpand_04052014_23629/pg_hba.conf
  • sysctl. conf 를 변경 한 후 sysctl - p 를 실행 해 야 합 니 다. 그렇지 않 으 면 확장 실행 시 보고 합 니 다.
  • 20140405:16:58:12:011382 gpexpand:mdw:gpadmin-[ERROR]:-gpexpand failed: ExecutionError: 'Error Executing Command: ' occured.  Details: 'GPSTART_INTERNAL_MASTER_ONLY=1 ssh -o 'StrictHostKeyChecking no' sdw10 ". /usr/local/greenplum-db/./greenplum_path.sh; GPSTART_INTERNAL_MASTER_ONLY=1 env GPSESSID=0000000000 GPKILL=NEVER GPERA=None $GPHOME/bin/pg_ctl -D /data1/primary/gpseg32 -l /data1/primary/gpseg32/pg_log/startup.log -w -t 600 -o \" -p 40000 -b 67 -z 0 --silent-mode=true -i -M mirrorless -C 32 -c gp_role=utility \" start 2>&1"'  cmd had rc=1 completed=True halted=False
      stdout='waiting for server to start......pg_ctl: PID file "/data1/primary/gpseg32/postmaster.pid" does not exist
    could not start server
    '
      stderr=''
  • 데이터 의 재 분포 가 이례 적 으로 느 리 면 새로운 호스트 의 네트워크 카드 등 장치 에 끊 겼 다 이 어 졌 다 하 는 성능 문제 가 존재 한 다 는 것 을 의심 해 야 한다. 먼저 네트워크 카드 를 바 꾼 다음 에 구체 적 인 상황 은 재 분포 집행 중의 데이터 복사 속도 에 따라 분석 해 야 한다.
  • 좋은 웹페이지 즐겨찾기