在很多团队的认知里,SAP HANA 既然是内存数据库、列式存储、执行引擎又快,似乎就不需要太多“传统数据库优化套路”。可一旦数据量上来,尤其是事实表从亿级走向十亿级、系统从单机走向 scale-out,你会发现一个现实:再快的引擎,也需要更合理的物理组织方式,才能把并行、裁剪、压缩的潜力发挥出来。
表分区(partitioning)就是 SAP HANA 在列存(column store)场景下提供的一把“手术刀”:它把一张逻辑表横向切成多个物理分区,每个分区都是独立的数据容器,可被分布到不同节点上执行并行计算。SAP HANA 官方文档明确指出,分区可以把列式表水平拆分为多个物理部分,并可分布到分布式数据库景观的不同节点。
这篇文章会用“能落地”的方式,把分区类型、分区裁剪(partition pruning)、分区选择的原则,以及很多人容易忽视的内存副作用讲透,并穿插一些真实业务案例,帮你在本地部署 SAP HANA 与 SAP HANA Cloud 两种形态下都能做出更稳的分区决策。
分区到底改变了什么:从“一张表”变成“多个物理容器”
在 SAP HANA 里,分区不是逻辑概念,而是很“物理”的东西。官方描述非常直白:数据库内部把分区当作类似表的物理数据容器;每个分区都有自己独立的 delta 与 main 部分,以及彼此分离的字典(
订阅专栏 解锁全文
5225

被折叠的 条评论
为什么被折叠?



