在「唯」与「阿」之间安放计算之道,老子这句话给 SAP HANA 开发的一层提醒
「唯之与阿,相去几何?美之与恶,相去若何?人之所畏,不可不畏。荒兮,其未央哉!」放在 SAP HANA 开发里看,不是把古文硬贴到技术上,而是在提醒我们,很多工程判断看起来差别很小,落到系统运行里却会拉开很大的距离。一个JOIN写在 application server,还是下推到 database layer,表面只是代码位置不同;一个 calculation view 里多做一层 projection,还是把筛选条件留给消费端,表面只是模型结构不同;一个 SQLScript procedure 里用 set based 思维,还是用循环逐行处理,表面只是写法不同。可在 SAP HANA 这种以内存列式处理、优化器、执行计划、并行计算为核心的数据库平台上,这些微小差别会在数据量、并发量、租户隔离、权限模型和后续运维中逐渐放大。
这句话里的「唯」和「阿」都可以理解为应答,只是语气不同。放到 HANA 开发现场,它像是在问,一个看似符合规范的方案和一个真正贴合业务语义、性能边界、治理约束的方案,相差到底有多远。很多代码在单元测试里都能返回正确结果,很多 calculation view 在 Data Preview 里都能跑出数据,很多 AMDP 方法在开发系统里也能执行成功。可一旦进入月结、双十一、生产排程、集团合并报表、跨公司库存可用量计算,这些方案的差距就会显形。SAP 官方文档把 calculation view 描述为可以组合多个来源的数据,也可以围绕业务场景创建模型用于报表和决策,这说明 HANA 建模不是把表拖到画布上连起来那么简单,而是在数据库层表达业务语义与消费边界。(
