SAP Data Intelligence Graph json源代码的结构分析

举报
汪子熙 发表于 2022/03/31 22:26:05 2022/03/31
【摘要】 以SAP Data Intelligence标准的示例Graph com.sap.demo.http.server为例,将其json代码保存到本地,使用json编辑器查看:operator之间有8条线连接,对应json文件里connections数组里的8个元素:每个元素包含source和target两个对象。以下图为例:src对象代表图中的get port:target代表名为reques...

以SAP Data Intelligence标准的示例Graph com.sap.demo.http.server为例,将其json代码保存到本地,使用json编辑器查看:

operator之间有8条线连接,对应json文件里connections数组里的8个元素:

每个元素包含source和target两个对象。以下图为例:

src对象代表图中的get port:

target代表名为request的message:

id blankjavascriptoperator2可以在GET handler的configuration页面看见:

图里的6个节点,即6个Operator,就是json里Processes对象里的六个子对象:

其route路径为/objects/:id, 三个output:



三个outport:

首先看标签为object store的jsOperator:

根据三种不同类型的HTTP请求,get,post和delete,分别从object store里读取,插入和删除数据:

了解了这个思路后,再理解http get handler就容易了:从http请求里提取出参数,构造消息发送给outport.

从31multiplexer的源代码能看出,它本身并没有包含什么配置:

仅仅只是简单的把三个http JavaScript handler的输出接收起来,并重新输出到最终的object handler上。

初始导入到Model中的数据,一共8行:


准备导入增量数据:

在本地csv文件新建一条增量记录(2020-3-13):

重命名为formatted2-delta1.csv, 导入系统:

点击这个draft sources,确保Model Requirements没有issue出现。

Import Method选择Update,如果选成Append,仅仅会简单的将第二次上传的csv文件里所有的内容添加到model的尾部。

从提示信息看,model里旧的8条记录被删除,新的9条记录进来了,算是实现了增量导入功能。


再打开基于这个model创建的story,其中Bar chart里显示的数据已经自动刷新了,我已经能够看到3月13日的数据了:

但是line chart和pie chart仍然没有自动刷新:


没有自动刷新的图都和LeadNumber这个measure相关,值一直都为model初始化时加载的第一个版本的csv文件。

我认为是LeadNumber这个measure,每次导入后没有自动刷新。

因此我用了一个workaround:在未能自动刷新的图标里,手动创建一个Calculation measure,类型为aggregation,operation为count dimension, aggregation dimensions选择为leadID:

Line chart的自动刷新生效了:

选择成LeadNumber,没有任何反应。

改成用Count dimensions:

增量导入的数据也生效了:

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。