TBLS·DBS·TABLE_PARAMS를 조인하고 PARAM_KEY=discover.partitions를 검색하는 SQL이 반복돼 backend DB에 부하를 준다.
원본에는 discovery 비활성화 안내만 있었으나 현재 공식 자료에서 버전별 구체적 중지 설정을 확인했다. HMS가 생성한 SQL에 애플리케이션 쿼리 hint를 넣는 방식과 구분한다.
자동 파티션 발견이 필요한 범위를 줄이고, 비활성화 기능이 포함된 버전에서는 주기 0으로 작업을 중지한다.
확인 수준: 추가 조사 해법 · 해당 케이스 적용 결과 미확인
적용 조건: <...>와 예시 DB·테이블·경로·수치는 실제 확인값으로 바꾼다. 명령과 메뉴는 참고 문서를 바탕으로 보강한 예시이며 대상 시스템에서 실행하지 않았다. 버전·원인에 따른 분기와 남은 확인 사항은 아래에 명시한다.
discover.partitions 조건이 있는지 확인한다. 일반 사용자 SELECT나 통계 INSERT 부하와 구분한다.SHOW TBLPROPERTIES db.partitioned_table;
ALTER TABLE db.partitioned_table SET TBLPROPERTIES ('discover.partitions'='false');
metastore.partition.management.task.frequency=0을 설정하고 HMS 역할을 순차 재시작한다. CDW는 Database Catalog → Edit → Configurations → hive-site의 실제 HMS 설정에 반영한다.0이 비활성화로 동작한다고 가정하지 않는다. 해당 버전이 지원하는 database/table pattern으로 대상을 줄이거나 기능 포함 빌드로 갱신한다. metastore.task.threads.remote 전체를 제거하면 ACID 관련 작업까지 중단될 수 있다.ALTER TABLE ... ADD IF NOT EXISTS PARTITION (...) LOCATION '...';처럼 필요한 파티션만 등록한다.변경 전후 같은 시간 구간의 해당 SQL 실행 빈도·DB CPU를 비교하고 신규 파티션이 ETL 절차로 정상 등록되는지 확인한다.