首页/数据/数仓建模速查/维度表存储优化:分区与压缩
维度与事实设计149 条

维度表存储优化:分区与压缩

小维度用单文件紧凑格式;版本化大维度按 is_current 或更新时间分区;统一用 ORC/Parquet 压缩,避免大量小文件。

数仓建模速查数据更新于 2026-10-12
小维不分区分桶
版本维按更新时间或当前标志分区
格式ORC/Parquet + 压缩

按当前标志分区

按当前标志分区
CREATE TABLE dim_customer (
  customer_sk bigint, customer_id string, name string, start_date date, end_date date
)
PARTITIONED BY (is_current int)
STORED AS ORC;
is_current 分区让当前查询只扫一个分区,历史查询仍可全扫。

易错点

  • 版本维每次全量覆盖,历史查询代价陡增
  • 大量小文件拖垮小查询的启动时间

数据来源与参考

  • Hive 语言手册:表与分区;文件格式实践
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌