MSCK REPAIR TABLE SYNC_DIR用于自动同步指定OSS目录下的分区信息。

使用场景

  • 分区比较多,MSCK整张大表比较慢,如只想同步特定目录下所有的分区信息。
  • 有些OSS目录不想再同步进入分区表,但MSCK工具会强制同步整个大目录分区信息,可以使用MSCK SYNC_DIR实现更精准的控制。

语法

MSCK REPAIR TABLE tbl1 SYNC_DIR 'oss://${tbl_location}/${partition_path}'
说明 SYNC_DIR后面的OSS目录必须是tbl_location的子目录,并且符合分区命名规范。

示例

假定分区表有年月日(year/month/day)三个分区键,以下SYNC_DIR均为合法的。

​MSCK REPAIR TABLE tbl1 SYNC_DIR 'oss://${tbl_location}/' 
MSCK REPAIR TABLE tbl1 SYNC_DIR 'oss://${tbl_location}/year=XXX'
MSCK REPAIR TABLE tbl1 SYNC_DIR 'oss://${tbl_location}/year=XXX/month=mmm'
MSCK REPAIR TABLE tbl1 SYNC_DIR 'oss://${tbl_location}/year=XXX/month=mmm/day=ddd'​