SAP HANA SDI ECC 源与 HANA table 增量

SAP HANA SDI ECC Source vs HANA table delta

在我们当前的系统中,我们有很多 ECC table 通过 SDI(智能数据集成)复制到 SAP HANA。复制任务可以是实时的或按需的,但有时复制任务来得太晚,复制的 table 中的数据与源 table 中的数据有很大不同。

在 SAP HANA 中检查这些增量值的最佳方法是什么?

这里没有 easy/straightforward 到 "check" 增量值的方法。 260个复制任务相互独立处理;无论源系统中的交易复合如何。
这意味着,如果 table A 和 B 在同一事务中更新,但在不同的任务中复制到 HANA,则数据将在不同的事务中写入 HANA。 HANA中的数据会滞后于源系统。

通常,这种差异只会持续相对较短的时间(可能是几秒),但是,当然,如果您进行聚合查询并希望看到 current 有效总和等。这会导致错误的数据。

处理这个问题的一种方法是以考虑到这一点的方式实现查询,例如过滤半小时前(或更长时间)更改的数据,并排除较新的数据。

请注意,由于通过 LogReader 进行的复制与源系统的事务处理分离,因此 "lagging data" 这个问题在概念上是内置的,通常无法避免。
只能减少延迟的延长,应对上游处理的差异。

这个问题正是为什么在运营报告等情况下,远程数据访问通常优于复制的原因之一。 如果您确实需要数据加载(例如,避免源系统上的额外负载),那么 ETL/ELT 数据存储方法 (DWH/BW-like) 会使情况变得更好。

事实上,当前的 S/4 HANA 和 BW/4 HANA 设置通常结合使用计划数据加载和通过 操作增量队列临时获取新数据 来自源系统。

拉尔斯, 如果我们需要将数据从 Oracle 上的 ECC 复制到 HANA 实例,我们应该使用 SLT(例如因为集群表)还是 SDI 已经涵盖了 SLT 提供的所有功能? 此致,克里斯