Hive 나 Impala 에서 테이블·파티션을 만들었는데 Trino 에서는 한동안 보이지 않는다. Trino 가 메타스토어 응답을 캐시하기 때문이다. 캐시를 비우는 방법은 커넥터가 제공하는 프로시저다.
프로시저 이름은 flush_metadata_cache 이고, 카탈로그 이름으로 한정해야 한다. system 만 적으면 Trino 내장 system 카탈로그를 가리키게 되어 찾지 못한다.
-- 카탈로그 전체
CALL hive.system.flush_metadata_cache();
-- 테이블 하나
CALL hive.system.flush_metadata_cache(schema_name => 'sales', table_name => 'orders');
-- 파티션 하나
CALL hive.system.flush_metadata_cache(
schema_name => 'sales',
table_name => 'orders',
partition_columns => ARRAY['ds'],
partition_values => ARRAY['2026-04-02']
);
인자는 이름을 붙여 넘겨야 한다. 위치 인자로는 받지 않는다. 이름 하나를 문자열로 넘기는 CALL system.flush_metadata('hive.sales.orders') 같은 형태는 존재하지 않으며, 그렇게 쓰면 Procedure not registered: system.flush_metadata 가 난다. 어떤 프로시저를 쓸 수 있는지는 커넥터마다 다르므로 해당 커넥터 문서의 프로시저 절을 본다.
Iceberg 와 Delta Lake 커넥터도 같은 이름의 프로시저를 카탈로그 아래에 갖고 있다.
CALL iceberg.system.flush_metadata_cache();
매번 비우는 대신 캐시 유지 시간을 줄이는 방법도 있다. 카탈로그 속성으로 지정한다.
| 속성 | 기본값 | 뜻 |
|---|---|---|
hive.metastore-cache-ttl |
0s |
메타스토어 응답 캐시 유지 시간. 0s 면 캐시하지 않는다 |
hive.metastore-refresh-interval |
없음 | 만료 전에 미리 비동기로 새로 읽어 두는 주기 |
hive.metastore-cache-maximum-size |
20000 |
캐시 항목 수 상한 |
기본값이 0s 라는 점에 주의한다. 현행 Trino 의 Hive 메타스토어 캐시는 기본적으로 꺼져 있으므로, 반영이 늦다면 캐시를 의심하기 전에 원본 쪽 반영부터 확인하는 것이 맞다. 캐시를 켜 둔 환경에서 즉시 반영이 필요하면 0s 로 되돌릴 수 있지만 메타스토어 호출이 늘어 쿼리 지연과 메타스토어 부하가 커진다. 배치 적재 뒤에만 반영이 필요한 구조라면 캐시는 그대로 두고 적재 직후 flush_metadata_cache 를 호출하는 편이 낫다.
Trino 캐시를 비워도 메타스토어에 없는 것은 보이지 않는다. 순서는 항상 원본 → Trino 다.
Impala 에서 만든 테이블이라면 Impala 의 카탈로그부터 메타스토어에 반영한다.
-- Impala 에서
INVALIDATE METADATA sales.orders;
-- 또는 파일만 바뀐 경우
REFRESH sales.orders;
Hive 에서 디렉터리만 추가하고 파티션을 등록하지 않았다면 파티션을 먼저 복구한다.
-- Hive 에서
MSCK REPAIR TABLE sales.orders;
그다음 Trino 캐시를 비우고 확인한다.
CALL hive.system.flush_metadata_cache(schema_name => 'sales', table_name => 'orders');
SHOW TABLES FROM hive.sales;
Kudu 커넥터는 Trino 473 에서 제거됐다. 472 이하에서 쓰고 있다면 Kudu 커넥터에는 flush_metadata_cache 프로시저가 없다는 점에 주의한다. Kudu 커넥터는 Kudu 마스터에서 직접 테이블 목록을 읽으므로, 보이지 않는다면 Kudu 쪽에 테이블이 실제로 있는지부터 확인한다. 자세한 것은 Trino Kudu 커넥터 제거와 대안 을 본다.
kudu table list <kudu-master>:7051
Impala 메타데이터 갱신 · Hive 파티션 메타데이터 복구