EDW-(DM数据仓库数据建模)模型设计.pptx

上传人:啊飒飒 文档编号:13574644 上传时间:2022-01-17 格式:PPTX 页数:60 大小:2.17MB
返回 下载 相关 举报
EDW-(DM数据仓库数据建模)模型设计.pptx_第1页
第1页 / 共60页
EDW-(DM数据仓库数据建模)模型设计.pptx_第2页
第2页 / 共60页
EDW-(DM数据仓库数据建模)模型设计.pptx_第3页
第3页 / 共60页
EDW-(DM数据仓库数据建模)模型设计.pptx_第4页
第4页 / 共60页
EDW-(DM数据仓库数据建模)模型设计.pptx_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《EDW-(DM数据仓库数据建模)模型设计.pptx》由会员分享,可在线阅读,更多相关《EDW-(DM数据仓库数据建模)模型设计.pptx(60页珍藏版)》请在三一文库上搜索。

1、BI.Insurance i.DWM for P&C 模型设计说明,张海彪,日程,为什么需要模型模型的组织结构模型实施方法模型设计策略Q & A,|,日程,为什么需要模型模型的组织结构模型实施方法模型设计策略Q & A,|,EDW体系架构,源系统层,ETL层,数据仓库层,ETL层,数据集市层,应用层,展现层,手工数据,外部数据,数据仓库,保险数据模型,核心业务,财务系统,再保险系统,人意险系统,精算系统,客户关系管理OCRM,客户讯息ECIF,业务量分析数据集市,业务持续性分析数据集市,ALM数据集市,财务分析数据集市,车险承保分析通用承保分析,风险管理应用,ALM应用,财务分析应用,aCRM

2、 数据集市,aCRM报告,大客户分析管理系统,aCRM引擎,数据挖掘引擎,数据挖掘应用,企业信息门户,企业统一分析平台,元数据库,监管报表,管理报表,运营报表,仪表盘,随机查询,多维分析,“数据和信息集成平台”“统一的分析平台”“唯一的信息出口”,为什么需要企业模型?,EDW 数据模型在项目实施中的作用,DWM数据仓库模型,BAM业务分析模型,运营型业务系统,数据仓库,数据集市,报表分析型应用,BSA业务模版应用,日程,为什么需要模型模型的组织结构模型实施方法模型设计策略Q & A,|,模型总体结构EM & DataMarts,核心原子数据,事实表和维度,企业模型,营销管理快速入门,客户细分和

3、管理,保险盈利性分析,潜在客户管理,数据集市,导出,业务数据模型,映射,指标要素,需求模型,财务报表数据集市,中介绩效分析数据集市,健康险盈利性管理数据集市,DWM 数据模型逻辑结构,BI.Insurance i.DWM for P&C,底层数据模型主题域说明:Agreement:保单、批单申请及管理;Claim:理赔Financial Transaction:应收应付、实收实付以及交易关联Party:当事方,包括当事方的组织结构、角色结构及类型Money Provision:资金管理Specification And Product:规范及产品管理Place:地点Code:标准代码Activ

4、ity:活动管理Physical Object:实物、标的管理,BI.Insurance i.DWM-Agreement,BI.Insurance i.DWM-Claim,BI.Insurance i.DWM-Physical Object,日程,为什么需要模型模型的组织结构模型实施方法模型设计策略Q & A,|,步骤:,流程:,产出:,原则:,需求文档:1.报表需求2.功能需求3. 非功能需求,1.目前的报表2.想做的报表3.想做的功能,1.数据筛选清单2.数据源报告:3.数据质量分析报告4.代码清单,Mapping文档: 源-模型对应关系,A筛选:去掉ETL需要而模型不需要的字段,1.逻辑

5、模型2.物理模型3 逻辑物理数据元素对照表,设计文档:1.Mapping流程图2.数据元素Mapping文档,A:数据源报告:1.主要功能2.历史数据情况3.与其它系统关系4.联系人,B:数据质量报告:1.数据类型2.值分布3.关联情况,B映射:1.映射到EM2.结合性能考虑3.结合实现考虑,数据筛选:1.程序控制,计算,通讯,安全控制配置,日志2.汇总类结果一般不要3.可以由其它字段算出的字段一般不要4.从其它系统导入的数据不要.5.代码表不要。6.单纯的险种定义信息不要,但是具体保单中涉及的险种定义信息可以要。,1.多维模型设计文档:维度指标派生指标2.需求-模型映射文档3.报表样张4.操

6、作说明,EDW具体实施流程,日程,为什么需要模型模型的组织结构模型实施方法模型设计策略Q & A,|,Hash code,问题的提出: 进行增量加载时无法快速判断对表的原有记录是否新插入。例如:1. 理赔案件发生的时候,增量文件会把保单数据也传来 2. 保单增量过来,可能只是投保人的信息改了,而目标保单表所需信息并没有改变 解决方案:使用增量的比较字段生成 Hash code。在对表进行增量加载时,对增量文件中的每一条记录生成 Hash code将生成完的 Hash code 与原表中同一anchor id并且最新的记录的 Hash code 进行比较如果一致的话,即不动作;如果不一致的话,即

7、新插入。使用示例:在 individual agreement 表中使用各个需要保留历史信息的字段生成 hash code。在增量加载时,使用业务增量文件中的字段生成 hash code。与 Individual agreement 表中同一agreement id的最新记录的hash code 进行比较。如果一致,即不动作如果不一致,则插入新记录。备注:relationship表是要根据业务去判断是否关系已经存在,然后,如果有其他属性(如:Role player - Physical object Rlship.Usage),才需要用hashcode判别是否重复。,|,Hash code字段

8、组成规则,带anchor的实体带status表的实体(Commercial agreement、Group agreement、Individual agreement、Claim folder、Elementary claim)除表的主键、type id、Partition key、Status、Status date、Status reason、 Valid from date、Valid to date、Effective from date、Effective to date、 Population timestamp之外的所有字段不带status表的实体除表的主键、 type id、

9、 Partition key、 Valid from date、Valid to date、Effective from date、Effective to date、 Population timestamp之外的所有字段不带anchor的实体原则上不需要保留历史,一般执行Update操作。如果有需要的,ETL Mapping特别指明关联实体对于需要保留历史的关联类型,除Identifier、Partition key、Nature id、 Left anchor identifier、 Right anchor identifier、 Left entity identifier、Left

10、 entity type id、Right entity identifier、Right entity type id、Valid from date、Valid to date、Effective from date、Effective to date、Population timestamp之外的所有字段,|,Partition key,问题的提出: 在进行多表关联时,所涉及的关联表行数巨大,关联速度达不到要求。解决方案:在所有大表中建立 Partition key, 按照该键的键值对表进行物理分区。Partition key 从Partition config 表中获得。分区策略是按照

11、分公司进行分区。使用示例:表 A 与表 B 进行关联时,如下进行select A.column1, B.column2 from A, B where A.foreign_key=B.Primary_key and A.partition_key in (select Storage partition from Partition config where Branch company id=xxxx) and B.partition_key in (select Storage partition from Partition config where Branch company id=

12、xxxxxxx),|,|,对保单和理赔状态的特殊处理,问题的提出:保单在承保和保全的整个过程中状态变化比较多,如按照 IIW 的原有设计,保单表中的会有巨量的历史记录;理赔在报案、立案和估损的整个过程中状态变化较多,如按照 IIW 的原有设计,理赔表中会有很多的历史记录。解决方案:将保单的状态变化过程剥离出来单独建表,在该表中保留与保单的关联;当有新状态插入时,更新对应的保单表中的状态。将理赔的状态变化过程剥离出来单独建表,在该表中保留与理赔的关联;当有新状态插入时,更新对应的理赔表中的状态。使用示例:增加Commercial agreement status,Group agreement

13、status,Individual agreement status表,分别记录 Commercial agreement , Group agreement ,Individual agreement 的状态变化历史。当前面状态发生该变时,在status表中插入新记录,更新对于原表中的状态字段。,对保单和理赔状态的特殊处理示例,|,Individual agreement,Individual agreement status,Left/Right Entity ID in Relationship or Role Entity,问题的提出在IIW中的不同subject area的实体关联通

14、常是走关联实体的,例如:Physical object - Agreement Rlship。在关联实体中是以anchor id进行连接的。在分析的时候,通常是应该按照当时的状况进行分析才有意义。由于EDW是保留历史信息的,同一个Physical object或Agreement会有多条记录,如何找到当时的记录,必须通过effective from/to date的比对才能实现,这非常影响效率。解决方案在关联实体中增加Left/Right entity identifier,Left/Right entity type idLeft/Right entity type id是指具体基础表的id

15、号例如:Road vehicle(2001260001)Left/Right entity identifier是指具体基础表中记录的主键id值例如: Road vehicle中牌照号沪A000001车辆的第一条记录的Road vehicle id值适用范围:FS RolePhysical object - Agreement Rlship,|,Sample of Left/Right Entity ID in Relationship or Role Entity,|,Road vehicle,Individual agreement,Agreement,Physical object,Ph

16、ysical object Agreement Rlship,被保标的,Party role in operation/Internal person,问题的提出在业务中有很多操作员角色,只有工号、姓名信息,没有身份证等其他信息;一个操作员在一个业务流程中会同时扮演不同角色,如在A保单核保中他是录入人,在B保单核保中他是复核人或者可能出现在A保单核保中他既是录入人又是复核人解决方案建立Internal person表保存业务员、公司管理人员的个人信息,这些信息质量较差建立Party role in operation表保存操作员角色信息,每次都生成新记录。录单员冗余到保单中,理赔的操作员也冗余

17、到claim folder中,|,关联实体的版本问题,由于关联实体本身没有对应的anchor实体,不存在版本问题,但是关联存在有以下两种变化情况。人“王五”拥有一栋房屋,在2007/1/1卖掉了。更新原有的Role player physical object Rlship记录的valid to date:if 源系统有系统更新日期,则更新日期1;else,则“2006/12/31”effective to date: “2006/12/31”人“王五”拥有一栋房屋,在2007/1/1卖掉50的产权。更新原有的Role player physical object Rlship记录的valid

18、 to date:if 源系统有系统更新日期,则更新日期1;else,则“2006/12/31”effective to date: “2006/12/31”(Ownership percentage: 100)插入新的Role player physical object Rlship记录valid from date:if 源系统有系统更新日期,则更新日期1;else,则“2007/1/1”effective from date: “2007/1/1”Ownership percentage: 50,|,Financial Services Role,问题的提出Person存放人的基本信息

19、,External organisation和Internal organisation存放机构的基本信息一个人和机构在不同环境下分别扮演不同角色,所以Financial Services Role存放与保单(各种协议)相关的金融服务角色,如保单持有人,被保险人,受益人等。Channel role存放中介渠道角色信息,如营销员、收展员在分析集市中需要获取保单与业务员的关联信息,IIW原连接方式如图:,|,Financial Services Role(Financial services role player id),Person(Role player id),Channel role(C

20、hannel role player id),优点:结构清晰统一缺点:渠道角色信息关联的太远,需要Financial Services Role+Channel role+Person,影响效率,Person(Role player id),External organisation(Role player id),Financial Services Role,解决方案Financial Services Role用把basis role player type id确定应连接Person 还是External organisationFinancial Services Role用把bas

21、is role player id确定Person或External organisation中记录的role player idFinancial Services Role用把basis role player entity identifier确定Person或External organisation中记录的person id或External organisation id使用示例,|,Financial Services Role(Financial services role player id),Person(Role player id),Channel role( Role

22、 player idChannel role player id),Person(Role player id),External organisation(Role player id),Currency code,问题的提出:在 CPIC 的实际业务中,可能出现多币种,在统计中需要进行多币种的转换。解决方案:在 IIW 模型中凡出现金额字段的表,都增加金额的币种及对应的 RMB 金额两类字段。原字段存放原币中金额, RMB 金额存放折算成RMB的金额使用示例:Elementary claim 表中增加 Total cost currency 和 Total cost RMB 字段备注:由于

23、CPIC对多币种金额的统计有多种统计方式,不全部是按照发生制来折算RMB的。因此,统计转换金额到RMB的工作,留给统计部分执行,在原子层不计算。币种一定要填。,|,维度表的snapshot,问题的提出在分析层中,常用的维度表如:保单、立案。分析常用的属性是分散在各个表中的,如:保费、保额在Particular Money Provision中。分析时如果再通过关联来找到这些信息,效率非常低。解决方案建立维度的snapshot表,将这些信息冗余存放在这些表中,每个月全量刷新一次。使用示例:Claim folder dimensionPolicy dimensionElementary claim

24、 dimensionEvent dimension,|,Commercial agreement/Group agreement/Individual agreement的边界区分,Commercial agreement存放保险公司和机构投保人签订的关于承保要素约束的框架性协议;不是具体的保单。具体的保单要遵循该协议。Group agreement团单单位和保险公司签订的保一组成员的保单,如:寿险团单、雇主责任险、旅游责任险。如果源系统提供了每个被保人的投保情况,这些记录在individual agreement(type id个人凭证)中的。如:雇主责任险下每个人的投保份数。Individ

25、ual agreement个单/个人凭证备注:根据国内系统的情况做了些调整,和机构投保人(非个人)签订的个单也存放在此。投保单按保单处理,只是状态是投保状态,|,Group agreement/Individual agreement在ETL时处理,车险系统保单进入Individual agreement寿险保单根据来源表,决定进入group agreement还是individual agreementCIBS(包括老系统)和人意险保单根据Financial services product中的Individual insurance flag判断个险,进入Individual agreem

26、ent团险、个团皆可,进入group agreement,|,最新记录标志,Effective to date = 9999/12/31 00:00:00,|,公司的拆分合并,partition key的处理 1/4,分公司的拆分合并,不需要程序考虑,发生后手工处理。公司合并举例:原来有分公司A,分公司B,在2006/1/1分公司B合并到分公司A。,|,合并前,Partition config,External organisation,Individual agreement,公司的拆分合并,partition key的处理 2/4,公司合并举例:原来有分公司A,分公司B,在2006/1/1

27、分公司B合并到分公司A。,|,合并后,Partition config,External organisation,Individual agreement,Role player Rlship,公司的拆分合并,partition key的处理 3/4,公司合并举例:原来有分公司A, 在2006/1/1分公司A,拆分成分公司A和分公司B。,|,拆分前,Partition config,External organisation,Individual agreement,公司的拆分合并,partition key的处理 4/4,公司合并举例:原来有分公司A, 在2006/1/1分公司A,拆分成分

28、公司A和分公司B。,|,拆分后,Partition config,External organisation,Individual agreement,Role player Rlship,按照type id分表,将有些大表按照 Type id 进行拆分举例:Individual agreement 表按照保单和投保单拆成两张表,|,历史信息的处理,对含有历史记录的大表,应考虑将历史记录剥离出来单独建表,即原表保留最新的信息,而在剥离出来的表中包含这些信息的变化历史。举例:Individual agreement 原来保留有保单的最新信息及这些信息的历史变化记录。这样这张表就将很大,记录数数以

29、亿计。目前将它拆成 2 个表:表一,存放保单的最新信息,如最新状态,最新确认的起保日期等,同时保留每条记录最新的刷新时间表二,存放保单经常变化的值的变化历史,如:保单状态的变化历史表三,存放保单所有历史变化的信息,|,增加表的冗余字段,问题的提出:原有设计中,一条业务上具有完整意义的信息被拆分在多个表中,在生成分析层(或进行分析时)又要将被拆分的信息通过多表关联的方式关联起来。解决方案:在表中尽量增加冗余字段。要注意的是,冗余字段并非任意增加,而是要增加:冗余关联类型为m:1 的字段,如:保单的所属分公司。从业务上说,基本不变化的冗余字段,|,增加表与表之间的外键,减少走关联表,问题的提出:原

30、有设计中,一条业务上具有完整意义的信息被拆分在多个表中,在生成分析层(或进行分析时)又要将被拆分的信息通过多表关联的方式关联起来。而这样的关联可能要跨多个表。解决方案:增加有业务含义的信息之间的直接关联。即如两表的信息如果有业务关联,而在原有设计中这两表之间的关联要借助其他中间表的,应在此两表之间建立直接的关联。例如:selling channel role id在individual agreement表中的冗余。否则,要走FS Role连接channel role。尽可能减少关联的层级。即减少不必要的关联中间表例如:如保单的操作员直接建立到保单中,保单和理赔的科室、部门直接建立到保单和理赔

31、中。备注:m:m的关系必须走关联表。,|,模型优化任务分配,Jeffrey: Activity, Reinsurance, Claim, Goal and need, Legal action, Physical object, Place, Registration, Specification and product, Standard text and communication, Technical entity, Type王正茂: Account and fund, Actuarial statistics and index, Assessment and condition, C

32、ategory, Contact point and preferences, Event, Financial account, Goal and needBen: Agreement, Financial transaction, Money provision, Party,|,EDW和ODS的关系,Person、External organisation 、FS Role(投保人/被保人)通过ODS产生由于加载顺序的关系,保单表由业务系统产生,产生保单信息时,ODS数据还没有加载。因此, Individual agreement中的Policyholder id、Group agree

33、ment中的Policyholder organisation id不冗余产生,而是通过FS Role走。,|,Id产生规则,每个表单独使用id序列建id序列表,|,Anchor表是否需要物理产生,建物理产生Anchor表所有和Anchor直接外键关联的type id冗余,|,Person归并决策,Person,external organisation在EDW不再进行归并,|,Boolean,0 false1 true,|,Atomic derived data,Atomic层表中,有部分字段保存的是从其他表或字段中导出的数据,如:claim folder中total cost,是从inte

34、rnal claim cost中统计来的。对于这部分字段,分为两部分:目前analytical层或data mart用到的,需要处理暂时没用的字段,暂不处理这部分字段的处理,在atomic产生完成后,产生analytical层前处理。,|,Atomic,Analytical,1,2,物理分表,|,备注:没特别注明的其他类型的在原Entity中,Money scheduler,Money in scheduler用于连接对于保险公司来说是进来的钱的particular money provision/Financial transaction,如:保费、储金(包括批增、批减)Money out

35、scheduler用于连接对于保险公司来说是出去的钱的particular money provision/Financial transaction,如:赔款、支付的养老金(包括摊回赔款)每个保单签单产生一个Money in scheduler,保单不含批单的保额、保费挂在该Money in scheduler下;每个批单单产生一个Money in scheduler,该批单对应的保额、保费变化挂在该Money in scheduler下。每个赔案产生一个Money out scheduler,该赔案对应的Particular money provision挂在该Money out sche

36、duler下。,|,关联表冗余进实体表中 1/2,|,关联表冗余进实体表中 2/2,|,Anchor的type id冗余到外键关联的表中 -1/2,|,Anchor的type id冗余到外键关联的表中 -2/2,|,Claim中涉及的各种金额存放规则 1/2,|,Claim中涉及的各种金额存放规则 2/2,Particular money provision对应赔案级,其中不存放金额,起关联作用(Agreement id,Agreement type id,Money scheduler id,(Money payee id,Money payee type id,Money payer id

37、,Money payer type id有则产生)。Money scheduler一个赔案产生一条记录,该赔案下的Particular money provision都挂在这个Money scheduler下。Claim offer可以存放多种offer,可以为服务、物品或金钱(包括状态是未决的)Internal claim cost用于存放理算后的公司内部发生的各种理赔费用,如查勘费、施救费、律师费等。Internal claim cost通过Internal claim cost - Claim Rlship 与claim folder关联查勘表中记录的明细费用(如查勘费、施救费、律师费等

38、)放在Money provision part,通过Money provision cash flow到 Particular money provision中的activity id连接到查勘活动中Money provision part用于存放赔给客户的赔款明细(包括状态是未决的)、到赔付项目代码级别。Money provision cash flow用于存放子险级合计的赔款金额,和claim offer对应放在Money provision cash flow和Money provision part中赔款的钱金额变化、 Money provision cash flow /Money

39、provision part中赔款金额不保留版本,当出现修改时直接修改这些表中的记录Claim Offer 中的赔款金额不保留历史,将来如果业务需要,再做保留历史处理立案的估损/定损都放在Financial valuation中估损/定损明细单独建表,|,核保核赔在EDW模型中的处理,核保核赔本身是一个工作流程的活动,每个核保核赔又细分成不同的步骤,如:收集单证,复核等活动步骤。类似于IIW中的campaign,campaign cell和campaign step的关系。在EDW中产险使用underwriting check/claim check来存放核保核赔信息,主活动和活动步骤通过不同

40、的type来区分。主活动和活动步骤通过underwriting check/claim check的自关联实现。每个主活动只需要保留一条记录,有变化update;因为每个具体的步骤包括了该活动变化的信息。对于一个投保单多次核保的情况,每个核保一个主活动。,|,投保单/协议申请单的处理,以下投保单指:投保单或协议申请单投保单作为保单的一个历史状态处理。全量数据:即使投保单已成为保单,也要插入一条投保单的记录。Valid from date录入日期,valid to date签单日期。 Effective from date投保日期(如果没有投保日期,同valid from date),Effec

41、tive to date签单日期。如果该投保单记录的目标表是individual agreement,则投保单的记录直接插入individual agreement history。如果投保单还没有成为保单,投保单的Valid from date录入日期,valid to date9999/12/31。 Effective from date投保日期(如果没有投保日期,同valid from date),Effective to date 9999/12/31 。增量数据:如果投保单已经变为保单了,就作为保单的历史记录,新插入保单的记录,如果目标表是individual agreement,则

42、投保单的记录挪到individual agreement history中。如果目标表是不是individual agreement,则投保单的记录仍然在原表中。如:group agreement,commercial agreement。投保单和保单共用同一个agreement id,type id分别为投保单、保单(团单,个单,个单凭证等)。投保单只保持一条记录,最新状况update该记录。备注:如果将来投保单数据太多,影响执行效率,由其他程序定期执行归档处理,将已成为保单的n年前的投保单数据归档。有的系统投保单和保单是同一条记录,有的系统投保单和保单是不同条记录。在EDW中必须保持一致的处理方式。,|,批改申请单的处理,批改不记录历史,因此,批改申请和批改使用同一条记录,有改变直接Update该记录。在change request中新增一个字段存放批改申请号。,|,日程,为什么需要模型模型的组织结构模型实施方法模型设计策略Q & A,|,日程,Thank you!,|,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1