딥 스토리지 마이그레이션
딥 스토리지 마이그레이션 (Deep storage migration)
평가용 드루이드(Druid) 클러스터를 로컬 딥 스토리지로 운영하다가 S3나 HDFS 같은 운영용 딥 스토리지로 옮기고 싶을 때 필요한 단계를 정리한 문서예요. 세그먼트 복사부터 메타데이터 재등록까지 전체 흐름을 다루어요.
출처: 문서
본문
로컬 딥 스토리지를 사용하는 평가용 Druid 클러스터를 운영하다가 S3나 HDFS 같은 더 운영 친화적인 딥 스토리지 시스템으로 마이그레이션하고 싶다면, 이 문서가 필요한 단계를 설명해 줘요.
딥 스토리지 마이그레이션은 높은 수준에서 다음과 같은 단계로 이루어져요.
- 로컬 딥 스토리지에서 새 딥 스토리지로 세그먼트 복사
- 메타데이터에서 Druid의 segments 테이블 내보내기
- 새 딥 스토리지 위치를 반영하도록 내보낸 세그먼트 데이터의 로드 스펙 재작성
- 수정된 segments를 메타데이터로 다시 가져오기
클러스터 서비스 종료 (Shut down cluster services)
깨끗한 마이그레이션을 보장하려면, 마이그레이션을 수행하는 동안 메타데이터 상태가 변하지 않도록 coordinator가 아닌 서비스들을 종료하세요.
Derby에서 마이그레이션할 때는 coordinator 프로세스가 Derby 데이터베이스를 호스팅하므로 처음에는 계속 실행 중이어야 해요.
세그먼트를 이전 딥 스토리지에서 새 딥 스토리지로 복사 (Copy segments from old deep storage to new deep storage)
마이그레이션 전에 기존 세그먼트를 새 딥 스토리지로 복사해야 해요.
새 딥 스토리지에서 사용해야 하는 경로 구조에 대한 정보는 딥 스토리지 마이그레이션 옵션을 참고하세요.
재작성된 로드 스펙으로 세그먼트 내보내기 (Export segments with rewritten load specs)
Druid는 Derby에서 메타데이터를 CSV 파일로 내보내고 다시 가져올 수 있는 Export Metadata 도구를 제공해요.
딥 스토리지 마이그레이션 옵션을 설정하면 export-metadata 도구가 새 딥 스토리지 위치에서 로드하도록 세그먼트 로드 스펙이 재작성된 CSV 파일을 내보내요.
기존 클러스터에서 새 딥 스토리지 위치에 맞는 마이그레이션 옵션을 적용해 export-metadata 도구를 실행하고, 생성된 CSV 파일을 저장하세요. 내보내기가 성공하면 coordinator를 종료할 수 있어요.
메타데이터 가져오기 (Import metadata)
수정된 세그먼트 데이터가 담긴 CSV 파일을 생성한 후에는, 생성된 CSV에서 Druid segments 테이블의 내용을 다시 가져올 수 있어요.
예제는 가져오기 명령을 참고하세요. druid_segments 테이블만 가져오면 돼요.
클러스터 재시작 (Restart cluster)
세그먼트 테이블 가져오기에 성공하면 이제 클러스터를 다시 시작할 수 있어요.
더 알아보기 (Learn more)
- Export Metadata 도구 문서에서
export-metadata도구의 사용법을 자세히 알아보세요. - 메타데이터 마이그레이션 문서에서 메타데이터 저장소를 옮기는 방법을 살펴보아요.