最近,我的一位客户询问我实施实时报告的可能方法。在准备过程中,我的研究还涵盖了“流式处理链”,结果令人惊讶

版本适用:SAP BW 7.5 和 SAP BW/4HANA(任何版本)

一般来说,尽可能快地获取数据不应被视为首选。相反,SAP 建议尽可能利用虚拟化和数据联合。BW结合SAP HANA提供多种合适的建模选项,主要基于SAP HANA集成服务(SDA、SDI)、SAP HANA建模选项(Calculation Views),以及作为BW应用端虚拟InfoProvider的Open ODS Views或CompositeProviders。

只有当这些方法不能满足您的业务需求时,才应将“实时”数据加载到 SAP BW 中作为一种重要的替代方案进行评估。早在 2006 年与 NetWeaver 7.0 一起引入的“实时数据采集 (RDA) ”是 InfoCube 和 DSO(经典)的相关概念。然而,随着 ADSO 的引入,SAP 决定淘汰 RDA,转而增强现有的流程链框架。

Streaming是BW流程链的一种运行方式,可以在每个流程链的属性中设置。当一个流程链运行时,每一步都需要一定的时间;有趣的问题是实际发生了什么,当在此期间再次启动链时(甚至可能多次),并且执行到达先前执行中已经处于活动状态的进程:

  • 一个经典的流程链在后台调度。然后第二次执行等待 10 分钟,等待前一次执行完成。如果在这段时间内没有完成上一次运行,则取消第二次执行,进程链中断并失败并报错。
  • 流模式下的流程链使用新的 队列任务管理器框架执行。这允许灵活数量的“工作”作业从队列中获取下一个进程。如果第二次、第三次和进一步执行到达当前活动进程,则这些再次启动该进程的请求仅写入队列。不再使用资源,系统也不会等待。当前进程完成后,worker 作业接收给定进程的所有这些启动请求并仅重新启动进程一次:它从队列中获取最近的链执行并执行它。这意味着第二个和第三个链执行被丢弃,只继续最近的链执行。

简而言之,Streaming 模式的主要增值之处在于它促进了从源系统到 SAP BW 的频繁数据传输,而不会出现调度错误,也不会造成资源的不合理浪费。因此,可以在 SAP BW 中几乎实时地获取数据。它不是 100% 实时的,因为在最佳情况下,实际延迟以分钟为单位来衡量。因此,不要期望在 SAP SLT 复制场景中常见的毫秒到秒的延迟时间。

一般来说,有不同的运行模式需要区分:一种Push和两种Pull运行模式。它们之间的主要区别在于是消费系统还是源系统触发了数据传输。

A) PUSH 运行模式

主要特征:SAP BW 非常频繁地检查(每 60 秒)是否在源中生成新记录。如果此检查成功,则立即启动流程链以将新数据传输到目标 InfoProvider。流程链在流模式下调度一次,不需要定义周期性重复。

这是 HANA 源的首选模式,因为进程链仅在源系统中有新数据可用时运行。

前提条件:

  1. 此模式仅适用于 HANA 数据源。
  2. 数据源需要支持 Delta。
  3. 如果源系统类型是 HANA_LOCAL 或 HANA_MDC (BW/4HANA) / HANA,连接类型为“本地 SAP HANA 数据库架构” (BW 7.5),请查看 SAP note 2372534中的其他要求。
  4. 如果源系统类型是 HANA_SDA (BW/4HANA) / HANA,连接类型为“ SAP HANA 智能数据访问”(BW 7.5),那么使用哪种远程连接类型很重要:
    • SAP HANA 智能数据访问(SDA) 通常不支持此运行模式。
    • SAP HANA 智能数据集成(SDI):智能 PULL 模式仅适用于支持“实时变更数据捕获”的适配器,如 SAP HANA SDI 2.0 的PAM 功能概述(第 20-22 页)中所述。目前这些是:ASEAdapter、ASEECCAdapter、DB2ECCAdapter、DB2ECCLogReaderAdapter、MssqlECCAdapter、MssqlLogReaderAdapter、OracleECCAdapter、OracleLogReaderAdapter、PostgresSQLLogReaderAdapter、HanaAdapter、TeradataAdapter、AbapAdapter、CloudDataIntegrationAdapter 和 TwitterAdapter。

简而言之,SDI 适配器将每个更改实时复制到生成的 BW 表 (/BIC/CMT*)。您可以在 BW DataSource 定义中识别此表,其中有一个名为SAP HANA objects的按钮。这是流处理链定期检查新数据的位置。

注意:对于与源系统 HANA_* 相关的 BW 数据源,Streaming属性始终处于关闭状态(“ Streaming cannot be triggered by this DataSource ”)。不要混淆——我自己混淆了很长时间……似乎这个属性只涉及 PUSH 模式,因此也涉及 ODP 源。

C) Scheduled PULL Run Mode主要特点:SAP BW 执行一个利用流框架的流程链,无论源中是否有新数据。流式处理链被安排为定​​期作业,如果需要,它可以非常频繁地执行(最多每分钟)。如果有可用更新,它们将立即加载到 SAP BW。另一方面,如果没有新数据,则在目标 InfoProvider 中创建一个空请求。

如果源正在接收流数据,例如每秒一条记录,则这是首选模式。在这种情况下,PUSH 或智能 PULL 将无法以与 SAP BW 相同的速度处理新数据。所以这种简单的频繁调度可能是最有效的方法。

前提条件:

  1. 此模式适用于未启用流式传输的 ODP 数据源。
  2. 此模式也适用于依赖 SAP HANA SDA 的 HANA 数据源,或者它们基于不支持“实时更改数据捕获”的 SAP HANA SDI 连接(上面未列出的所有适配器)。
  3. 另一个先决条件是 DataSource 具有 Delta 功能。

注意:不满足 PUSH 模式 (A) 或 Intelligent PULL 模式 (B) 的前提条件并不意味着您不能在流模式下运行流程链。您仍然可以利用队列任务管理器框架为支持 Delta 的数据源以高频率运行它们。在这种情况下,需要将流程链安排为定期作业,以最多 1 分钟的频率从源中提取数据,而不是仅在新的源数据可用时才触发流程链。

D) 附录:启用写接口的 ADSO 的特殊模式

主要特点:正如我在另一篇博客中所述,有一个新的 SAP BW/4HANA 写入接口,它使 SAP 和非 SAP 工具能够将数据直接供应到 ADSO 中,与 BW 7.x 中的 Web 服务源系统相当。从技术上讲,数据被推送到 ADSO 入站表中,并且可以通过 BW/4HANA 标准方式从那里处理数据。

如果此 ADSO 需要激活过程,则可以通过“流”模式下的流程链自动触发此活动,因为只要入站队列中的请求关闭,就可以触发(启动)该流程链。

前提条件:

  1. 发布 SAP BW/4HANA 2.0 或更高版本
  2. 具有建模属性的 ADSO已启用写入接口
  3. 流模式中的流程链包含指定 ADSO 名称的流程变体“激活 DSO 数据”

SAP BW实施实时报表的方法(流式处理链)相关推荐

  1. SAP BW介绍(zt)

    SAP BW介绍与咨询 随着近几年信息技术的日益成熟和ERP软件供应商对市场的大力培育,ERP系统已逐渐被企业界广泛接受,并成为不少成功企业提高经营管理效益的关键事务处理系统.ERP的成功实施和应用, ...

  2. xbox360链接pc_如何将实时电视从Xbox One流式传输到Windows PC,iPhone或Android Phone

    xbox360链接pc Set up your Xbox One's TV integration and you can do more than just watch TV on your Xbo ...

  3. Flink SQL 功能解密系列 —— 流式 TopN 挑战与实现

    TopN 是统计报表和大屏非常常见的功能,主要用来实时计算排行榜.流式的 TopN 不同于批处理的 TopN,它的特点是持续的在内存中按照某个统计指标(如出现次数)计算 TopN 排行榜,然后当排行榜 ...

  4. SAP BW 学习笔记(一)

    SAP BW 全称 Business Information Warehouse,在版本3.5之后又称SAP Business Intelligence.         处于SAP Netweave ...

  5. SAP BW顾问如何保持市场竞争力?

    跟大部分电工一样,SAP顾问也经常有迷茫的时候.因为,这个世界变化实在太快了.每一个电工,总是在担心自己会不会被飞速发展的技术所淘汰.那 么,作为 一个BW顾问,应该如何保持市场竞争力呢?我觉得需要两 ...

  6. SAP BW/4HANA学习笔记2

    2.Data Modeling BW/4HANA Data Modeling简介 Data Quality:数据质量问题: silos(桶仓):大量重复冗余的主数据,独立计算统计: 数据silos缺点 ...

  7. SAP BW/4 HANA亮点解析

    SAP BW/4 HANA亮点解析 http://mp.weixin.qq.com/s/SIPSWDo95pXKGjG66z6iHw 2016 年 8 月 31 日SAP正式向全球推出了新一代的数据仓 ...

  8. linux流式访问日志,流式实时日志分析系统的实现原理

    我们知道网站用户访问流量是不间断的,基于网站的访问日志,即 Web log 分析是典型的流式实时计算应用场景.比如百度统计,它可以做流量分析.来源分析.网站分析.转化分析.另外还有特定场景分析,比如安 ...

  9. tcp实时传输kafka数据_将物联网数据和MQTT消息流式传输到Apache Kafka

    Apache Kafka是一个实时流媒体平台,在大型和小型组织中得到广泛采用.Kafka的分布式微服务架构和发布/订阅协议使其成为在企业系统和应用程序之间移动实时数据的理想选择.据一些人称,超过三分之 ...

最新文章

  1. mysql connect 500_MySQL连接问题【mysql_connect和mysql_pconnect区别】
  2. Oracle 原理: 数据类型
  3. Memcached Client 使用手册
  4. python索引 自定义_python – 使用多个自定义索引范围构建numpy数组,而不显式循环...
  5. 不要再纠结卷积的公式啦!0公式深度解析全连接前馈网络与卷积神经网络!
  6. 放大镜_屏幕放大镜怎么样使用方法
  7. Linux---多线程
  8. 不断被刷新的未来——读文档有感
  9. led闪烁和流水灯代码
  10. Windows 10 20H2 微软MSDN官方正式版ISO镜像下载
  11. 论文润色软件Stylewriter,whitesmoke,1check使用
  12. 分段三次hermite插值python
  13. CPU0704报错处理
  14. QQ群发精灵V3.2
  15. ERROR Deployer not found: git
  16. win10蓝屏提示重新启动_电脑蓝屏五大要素,秒判蓝屏问题及处理!
  17. 使用HttpClient下载网页
  18. 如何实现上传图片并显示图片?
  19. 企业数字化转型困难的这个锅必须得IT行业自己来背
  20. 如何成为一名优秀的软件测试人员,如何成为一名杰出的软件测试人员

热门文章

  1. 覃小龙课堂:小白如何影视剪辑月入10W,24小时全天带你
  2. 微信JSAPI支付 - 服务商模式下子商户 统一下单的注意事项
  3. 戴尔 DELL 游戏笔记本电脑 - Windows 10 关闭或开启功能键 (Fn key)
  4. 【Unity+MySQL】实现简单的注册登录系统
  5. 数字197可以被称为循环素数,因为197的三个数位循环移位后的数字:197,971,719均为素数。100以内这样的数字包括13个,2,3,5,7,11,13,17,31,37,71,73,79,97
  6. Spring Bean到底是什么?有什么用?
  7. Python Tkinter Radiobutton控件
  8. 【开源WebGIS】07-Openlayers+Vue 测量功能-02
  9. ubuntu系统服务器网速测试方法
  10. 冯诺依曼体系结构 概要