BW培训第四课
时间:2011年9月4号
内容:主要介绍了数据源的增量处理
这节课讲的东西很多,需要和前面讲的知识结合起来去理解记忆,理解起来难度很大,而且没有一个整体的建模和创建处理链的经验,对理解增量处理有一定的难度。现在就把课堂上的点滴知识点记录一下:
1:增量更新有【增量队列】和【时间戳】两种方式,通常FI模块的数据源是通过时间戳的方式增量提取的,只能抽取到前一天的数据,当天的数据抽取不到。
2:SAP的数据源的数据提取方式有三种:
数据库/视图:SAP提供的这种提取方式,系统为你定义好了提取程序,通过在数据库中,设置增量相关字段(如:时间戳、日期、数字),来轻松实现DELTA(增量)抽取,是BW中最常用的自定义数据源,一般是通过程序将数据写入表中。
信息集:即:SAP QUERY。可以设置表间相关的逻辑,相当于JOIN语句,把关联的字段作为数据源。
FUNCTION MODULE:通过程序控制数据的提取,可以设置增量字段,也可以不设置,通过一定逻辑将数据抽取,可以实现前两种方式的自定义开发。这是最灵活的自定义数据源。
3:什么叫V3 Update Mode?
V1 同步更新模式,即凭证产生就更新增量,与业务数据同步更新;
V2 异步更新模式,就如一个两步的操作一样,第一步业务凭证更新了,然后再更新第二步的数据源增量表(就好比是推的模式:PUll MODE,主动进行的)
V3 异步更新模式,与V2的区别在于他的更新时通过后台事件来触发的,即定一个任务定是收集增量并更新至增量表(就好比是拉的模式:PUSH MODE,被动进行的)
3:LO(后勤模块)数据的抽取
full/init数据包:
1. 先删除setup table (tcode: sbiw / lbwg), 应用程序:11
2. 填充setuptable (tcode:sbiw)rsa3 模拟抽取setup table 数据。
3. 建立 full/init 的inpackage 进行抽取。(full/init的数据抽取来自于setup table).
Init 信息包建立以后,delta机制就已经建立,rsa7 查看带有增量机制的数据源。
(rsa7 /smq1 查看 增量的数据 smq1 是rsa7 的后台)。
Delta (更新时 数据来自于delta queue):
建立delta 增量infopackage之前,须先创建init 初始化 infopackage。初始化之前先删除setup table,填充setuptable中的数据。
1. 维护提取结构 tcode:lbwe (可以维护提取结构,修改更新方式)
更新方式:
直接更新(Direct Delta):r3应用中产生一张新的凭证后,会直接更新到delta queue。若在更新过程中出现了错误的,r3端凭证也会保存失败。
对服务器负载的压力大。
队列化更新(Queued Delta):r3端产生新的凭证后,数据会先进入到抓取队列 extractor queue中( tcode:lbwq 查看抓取队列数据),然后等待一个job执行后,数据会从抓取队列进入到delta queue。
使用较多。
不连续v3更新(Unsterilized V3 Update):r3端产生新的凭证后,数据会先进入到update table(tcode:sm13 查看update table中的数据)中,然后等待 job调用执行后,数据从update table 中进入到delta queue中。
这种更新方式数据在更新时是无顺序性的。一般会用在库存中。使用的比较少。
2. 订单进入delta queue以后,可以通过delta的信息包抽取到psa.