Hlepoallciry
OiicTioriairi^s甘O^rwclorliafl
dlBitile
Server
DHltiStsrviueH:
nervltce
ManagementConso:
管理控制台是网页版DS管理工具,可以进行一些系统配置和定义Job执行
Designer:
Designer是一个具有易于使用的图形用户界面的开发工具。
它允许开发人员定义包括
数据映射,转换和控制逻辑的数据管理应用程序,创建包含工作流(作业执行定义)和数据
流(数据转换定义)的应用程序
RepositorP
应用程序设计器使用的本地资源库用来存储DataServices对象(如项目,作业,工作流,
和数据流)的定义和源和目标的元数据
Jobserve:
作业服务器启动数据移动的从多个不同种类的源集成数据的引擎,执行复杂的数据转换,
并管理从ERP系统和其他源的抽取和事务
DS数据加载方式
全量加载
增量上载
a)基于表比较
作业在执行时读取数据源和目标中的全部数据,在服务器的内存中进行比较,计算数据
差异
b)时间戳增量
需要在数据源中添加时间戳字段,一般为创建时间和最后修改时间,在抽取作业中定义
对两个时间戳字段进行对比,符合条件的创建时间条目进行插入,符合条件的修改时间条目
进行更新
c)利用数据库CDC(changeddatacapture)
首先需要开启数据库的CDC服务,为数据库实例启用CDC功能,为源表启用CDC功能。
在这种模式下,DS的增量更新不再直接访问源表,而是在与源表相关的变更记录表中读取增量
三、DS进行数据抽取模型开发的基本过程
为数据源创建数据存储
导入源表的元数据到资源库
为SAPHANA目标系统创建数据存储
新建DS项目和批量作业
新建DS数据流:
定义源表和目标表,定义变量、编辑QuerP和Map_CDC_Operation
执行批量作业
Source
Data
HANA
加
四、DS创建数据源系统和目标系统的数据存储
1、Oracle数据库作为数据源系统
登录DataServicesDesigner,在本地对象库的数据存储页签中单击鼠标右键,选择新建菜单
pLaejallLlbraSry]血>€
&twy.R*p®_SATDST1ST
DaLit—ja’iajr.|[1)・・匚¥匚p电ion]
D■!
.■鼻
ECQSOO
ECT_P■丸•折t^r<
HAD.DS
HAD_tZLJLHAHA_R电tit■
M54_DATASTOMWtjK^D■軋t«ir«
1-iok.&»-Irf-■■J't--I►JTia门0at”i[_回I-■■■ti
创建数据存储“EAMTEST,在弹出的对话框中输入EAM数据库的连接信息
2、ECC作为数据源系统
同样在创建DataStore时,输入ECC的连接信息
3、HANA数据库作为目标系统
在创建DataStore时,输入HANA数据库的连接信息
五、全量加载过程
1、创建Project和Job
General
PwchaseOrier
P11VaKaAEt
在本地对象库的project页签中单击鼠标右键,选择新建菜单,创建项目“ERP_DS。
双击该
项目,在"ProjectArea”,可以在该项目下创建Job
2、导入源表的元数据到资源库
在本地对象库的数据存储页签中,选择源系统的数据存储,单击鼠标邮件,选择“ImportBPName”,输入需要导入到资源库的表名称。
导入成功后,在数据存储的table目
录下可以看到导入的表
LocalObjectLibra>ry
lepoisitory:
Repo^SJkFDSTEST
NOTEXTAVjMLABLEFDRTADiLEDDO7T
Fur口卜t乩伍aReei~tian
FurchaweKrgxiiwitionAccount
NDTEXTftmLABLEFOBTA£LEEEFE
WOTEXTAVAILABLEFORTtBLE
MDTEXTAVAILABLEFOETA3LZ
3、创建DataFlow
单击"General”Job,在右边空白区域单击鼠标邮件,选择"AddNew”-“DataFlow
4、设置源表和目标表
单击创建的DataFlow,将需要导入到HANA数据库中的源表拖入到DataFlow区域中,将
DataFlow区域右侧的工具条中的模版表拖入DataFlow区域创建模版表
Quotenames
输入模版表名称、HANA目标系统的数据存储、HANA数据库存放DS抽取数据表的用户名。
连接源表和目标表
T151T(E^5Q0.)
T161T(HAD_B3,ERPD...
B>|-—>
——2J
双击模版表,设置“Options”中的“UseNVARCHARforVARCHA”
TsrDjiiliijjts.|EiilkLa.MirDp和闭s:
|Ttie|Pt*-!
*a3lC|F*EL*L*id
0XI-Hff«riTfc1|1UUU
L<
1.eEi»7h.£iisbl-ebtfirp二口上d讣绻;IT
])■ifendr-cr-si?
lalsl*F7
鉀
eICoiLurriLStflrs
3
TpIAp-^>1j.Cakle
■」
Aatocorrectload
In
ntrgs«r可
V&tApplisalla
withvalue
ifetAp-pJiE-sliJe
Ignorerfll>jTIfniApjilieaile
E
Tr*n!
£aeti«n卫■mlr*toIL
IzkclniaintrknE-Lction.
Jd
'Jrsb.2adtjdeicrlex
BuiAp-pllE-3i^.E
B
■■Sc^ll
Uc*HfYMTlttF.fisr梆肝昭逵彳“宅町严严胡Ifhi■'砒
III
■
5、手工执行Job
选择Job,单击鼠标右键,选择"EGecute”
Pt创“IArrd9X
I一卜「IiLW-_ns
0enti-al
Fijireha.E&Urde-r
Fnru^-^KaA
执行成功之后,在HANA数据库中的ERPDSUSE下可以看到“T161T”,可以查看数据表的内容。
执行过程信息和结果可以在监控器中查看。
-sd
Iri.
time主arp
Meis-ige
•参
IBilUE-
3"©0
IhiOE:
j&lOB
】"口已]BiaD谢ORibioejfiioe]时叫]47C4
1!
fJft4
347S4
]4?
O43时酹]47C4
J帀JI輛]斗盲B斗】"口己
bn-R-B&BDDBn-
2日
JOE
D*T*?
LOW□AT斗LOWDftt/VLO**DATJ^LOWELU>'LOAP>EO:
:
Li>iM:
>D.2LEDATArlCWJZ-E-
£*UL*:
JJZfJJW:
57:
ZV7QL4/]^3fliHT7s3■&?
0L眄门抄2^957PE
丹1址」】商盘“m-JdL±./]Z^229:
£7:
34.JXILa/]Z/J!
S锻皿冲妙盐仙日旧叫a0t«/12/22^lE?
l33苛诒冲2/经专刊55?
QL4/]2/22^l!
I7:
>4mL£/]Z^2Z■?
:
S7:
3-T•14/j2/2Z3加5创個話啣57料mH百门自煜2qE~73=7PLGhglZ!
宁E;2»1L4/]X^£34IS7O3!
?
OL£/3Z^22P:
ST:
3-TSO14応军全刽R1盘>
RFi4l30LS/]^2?
*aF7"-|i|ZtlL5/3Z/JZ0:
=7:
4I.
thaIhtlri■iiMru-ti■-iL"i£ha_【cn.H|iQO>haataHincuratc^dEa>^ILJ-iIcdem£L
冋3呻話口wb莓|.%0-品:
1=工JlibG。
-.雷〜」!
】?
"i范ifr«r^jblw•■日加a.j
ul斗2,7-OMO-
Q^reritdractcr*oflob■MeiSii5e_ciSc_ifbcD_acflB_p3JMWfcSeoB~s
31arb^-gmbanjtdb■■「■/■i3hoiBh■:
5fl^D5TE5T^crl<:
3SDO.
Mb>ofriJ-ikd<£1114L]3^9ZJIC1DB>■limH^aidfa>^unarrJ^Ardn
Rb工・.巴氏1:
>SSl.-Bltff-di
Pia»4lIs■diAt«ffciw.b^rttkalrriigitrianflcac^FFca・Th-・hinr・r^E*Z^5l33j>bafc^an^BQdahstwri,fljngmak・q■士<3LiTF-E>
flow・tn右]i_RjLl»Is蓟也传cl
C3>:
h4>轧•曲乱S«■希tetmEl曲md-sfr-sri-Mcnualto>3?
S>F片■FbOCbT*t™-a^-liabcForcoJiwii^rt-.alrmwrwnryt?
d:
aPIdwr$lo-ki曲di艸^lair-FULL*u«Miaineeedp*
ntAPgtalh■斗"T*巴LTA』typ・^CiJutti-j・lrcr・h、cornrrft:
■h・]□□口口>■』m_>Je3ccmkI:
dW5-='I>Z'■*i
Mb»H4M^liJT^RJlLXIfCiOmcMtdMC4MhjlV
Pi-oressfoe・pqss于atefla»*istorwplfd□niavl:
■吐i>■cmTiEd«tKdhuechhaFiJiv-.
|T3ElQJ
六、基于表比较的增量加载
1、在Job下定义工作流
EKEOTab1eCempax穿
OQo
2、在工作流中定义数据流
EKKO_TsbleC(jiiLpaxe
Otfo
在数据流中定义源表和模版表,执行Job,执行成功之后,在目标系统数据存储的
TemplateTable目录下可以看到创建的模版表
LocalOEuertlibrary
1ejj93i.1«>ry:
R亡jp口CATUCTEST
Da.t.a.3t*ore
o,[+}!
甲
■■"■■■■■ubiiisi■■■>■jiiimminuiamm
EBKKCHMHJISIEF]
TOOl(XADJS.EBP.r,1
TDO1WCHOD5.ER...1
TOOGACH/LD.DS,ER.,1
TQZ4(KAD.IS.EET..B1
1024E(HLD.DS,ER..・・1
T1&1TOttll^DS.ER-■2
1.cn
FiiErehsLseRaqii!
5iti031.Acconikt百
WOTEXTAVAILABLEFORTABUTOOl
Flwts/Eraiiches
si5Inicmol<0t
FwrchasinrOroups
HOTEXTAVAILABLEFORTABUTD24E
TttXtsforr~ux'Qhji±ingDocwitEit『灯•石
3、加入Table_Comparison控件
选择模版表,单击鼠标邮件,选择"ImportTable”模版表会更新为Tables目录下的数据表。
通过将转换-数据集成中的“Table_Comparison”控件拖入到数据流中的方式添力口
EKKO(ECQSOO.)
Tat>le_Co]tpaxiscn.
EKKO(HAP_DS.EEPDS.…
柳||〕
——SJ
“Table_Comparison"控件
将源表连接"Table_Comparison"控件,“Table_Comparison"控件连接目标表。
4、设置Table_Comparison控件
双击"Table_Comparison"控件,设置相关参数:
比较的目标表、表的主键,需要比较的字段。
当需要比较的字段为空时,会比较所有字段。
建议按照需要填写需要比较的字段,可以
加快处理速度。
保存后执行Job。
Guivvirat专dkv*c*[qnGt「
Iuo劭屯dixvnd^pliua七蠹Ltav's
LDaloctCom'purison.math<*d.:
焙Row^by-raw
吝聒i蜀ul
MurIli厂Bctectalli~aw=
拧LsgtrYfiill1ar£e%tceiicr«Lev
广¥囂*7ro^iulson厂氐"ud.
工处口5,»曰护eBdueai.髭
NhHTlT
I£EU?
直血b_l已ziame
站.£J?
LEilSUSl£K.EKKU
在工作流中定义Script控件,读取数据抽取后最新的创建时间和更改时间,定义一个处理新
增数据的数据流和一个处理更新数据的数据流
七、基于时间戳的增量加载
1、在Job下定义工作流
ED^_TIIE5T^W
OO
2、定义Script控件
在Script控件中需要使用变量存放读取的最新的创建时间和最新的更改时间。
选择Job,在工具栏选择"Variables”按钮,创建全局变量