SAPHANADelta Merge 技术简介

作者:郑德鼎 约 4 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:Basis, CO, Data Engineering, FI, 数据工程, 系统管理, 财务
SAPHANADelta Merge 技术简介 - 封面图
SAPHANADelta Merge 技术简介 - 封面图

** 1\. 什么是SAP HANA Delta Merge技术,为什么SAP HANA需要Delta Merge技术? **

目前SAP

系统中的大部分业务表都是以列式存储的方式保存在内存里,列式存储会提供更高的压缩比例,更快的查询与计算,但是它的修改与写入成本很高,并不利于业务的增加,修改等操作。

SAPHANADelta Merge 技术简介 - 封面图
SAPHANADelta Merge 技术简介 - 封面图

SAP HANA数据库提供了Delta Merge技术,每个SAP HANA的数据表(列存储),都开辟了2个内存区域(Main Store和Delta

Store)用来存储数据。

Main Store内存区域的数据是有很高压缩比率,有着更快的查询和计算,但是写的成本很高;

Delta Store 内存区域的数据是对数据库的写优化设计的,有着非常快的插入和修改速度,但是压缩率和读取比较慢。

然后存放在Delta 区域中的数据会定期合并到Main内存区域中,这个过程在SAP HANA 环境中称为Delta Merge。

SAPHANADelta Merge 技术简介 - 封面图
SAPHANADelta Merge 技术简介 - 封面图

** 2\. SAP HANA Delta Merge的分类 **

SAPHANADelta Merge 技术简介 - 封面图
SAPHANADelta Merge 技术简介 - 封面图

** Auto Merge **

是HANA的标准触发Merge方式,HANA中的"Mergedog"系统进程会定期检查列式存储的数据库表的Delta内存区域,如果满足需要Merge的配置条件,会自动触发完成Delta

Merge。

** Smart Merge ** 是SAP

HANA提供的一种可以更直接控制Merge过程的方法。用户能够在系统中灵活定义一些触发条件,一但条件满足就开始执行Merge过程 。例如:Delta

Merge的容量超过100M大小就触发Merge操作。

** Hard Merge ** 是SAP HANA 提供手工SQL语句触发并且不设定任何条件的Merge 方式 ,SQL语法如下:MERGE DELTA

OF "< _table_name_ >"。

** Force Merge ** 和Hard merge类似,它会强制执行手动Merge操作。

** Critical Merge ** 这是SAP HANA为了保持系统稳定性能而设定的Merge 方式,例如Auto

Merge关闭了,也没有Smart Merge满足条件被触发,当Delta Store增长非常大的时候,会触发Critical Merge。

** 3\. SAP HANA Delta Merge的过程 **

SAPHANADelta Merge 技术简介 - 封面图
SAPHANADelta Merge 技术简介 - 封面图

上面的图总结了整个Delta Merge的过程:

Before Merge

1)Main 中存放原始数据,Delta 中存放增量数据;

2)所有写操作在 Delta 中进行;

3)读操作可读取 Main 和 Delta 中的数据。

During Merge

1)合并操作从 Main 中数据和 Delta 中已提交的数据进行合并,放入 Main New 中;

2)Delta 中未提交的数据复制到 Delta New 中;

3)所有写操作在 Delta New 中进行;

4)读操作可读取 Main,Delta 和 Delta New 中数据;

5)Delta New 中若有新提交的数据也通过合并操作合并到 Main New 中。

After Merge

1)删除 Main 和 Delta,留下 Main New 和 Delta New;

2)所有写操作在 Delta New 中进行;

3)读操作可读取 Main New 和 Delta New 中的数据;

4)此时的 Main New 和 Delta New 即为下次 Merge 的 Main 和 Delta。

** 4\. SAP HANA Delta Merge的监控 **

通过检索视图M_DELTA_MERGE_STATISTICS,可以查看所有历史Merge操作记录。

SAPHANADelta Merge 技术简介 - 封面图
SAPHANADelta Merge 技术简介 - 封面图
SAPHANADelta Merge 技术简介 - 封面图
SAPHANADelta Merge 技术简介 - 封面图

作者:贾栋才

审核:贾栋才

编辑:王 锐

郑德鼎

关于作者:郑德鼎

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「SAPHANADeltaMerge技术简介.md」整理生成,仅用于内部技术分享与学习交流。