©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.安邦BI系统数据模型介绍©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.主题维度建模的基本概念模型概述模型介绍模型运用方法与技巧相关技术问题©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.如何建立分析集市模型行业经验BI.InsuranceDWM工作组和建模持续发展业务需求安邦分析集市模型业务驱动根据固定报表和KPI、持续率、承保理赔、执行力、再保五个数据集市的业务需求,结合BI.InsuranceDWM的建模方法,建立TaipingEDW分析集市模型©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.分析集市模型概念维度建模一种非规范化的关系模型由一组属性构成的表所组成表跟表之间的关系通过关键字和外键来定义以良好的可理解性和方便的产生报表来进行数据组织,很少考虑修改的性能通过SQL或者相关的工具实现数据的查询和维护©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.分析集市模型概念事实表(一)每一个事实表通常包含了业务需求所关心的一系列的指标值每一个事实表的行包括具有可加性的数值型的指标值文本事实通常具有不可预见的内容,很难进行分析与维表相连接的外键通常具有两个和两个以上的外键外键之间表示维表之间多对多的关系©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.分析集市模型概念事实表(二)事实表的特征非常的大包含几万、几十万甚至几百几千条的记录内容相对的窄列数较少经常发生变化现实世界中新事件的发生→事实表中增加一条记录典型情况下,仅仅是数据的追加事实表的使用各类指标值的聚集计算©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.分析集市模型概念维表(一)每一张维表对应现实世界中的一个对象或者概念例如:客户、产品、保单、标的、案件维表的特征包含了众多描述性的属性列如保单维表里的销售渠道、保费区间、风险等级等通常情况下,跟事实表相比,行数相对较小通常10万条内容相对固定几乎就是一类查找表©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.分析集市模型概念维表(二)维表的应用基于维属性的过滤(切片、切块等)基于维属性的各种聚集操作报表中各类标签的主要来源事实表通过维表进行引用©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.分析集市模型概念Facts属性个数少(窄)记录行数多(大)数值型指标随着时间的推移,数据增长Dimensions属性个数多(宽)记录行数少(小)描述性属性静态的,很少发生变化事实表与维表的比较©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.分析主题域数据(AnalyticalSubjectAreas)通过事实(Facts)和维度(Dimensions)模型方式表达,为典型保险分析应用提供分析型数据架构,为数据集市提供统一的指标和维度,为数据应用提供统一的数据信息。分析主题域数据,将业务需求阶段定义的分析主题域,按照维度建模方法,格式化成符合维度-事实表的星型模型或雪花模型。其中维度信息由核心原子数据按照定义的层次形成相关的维度视图,事实表数据通过核心原子数据相关主题域数据经过汇总计算得到。核心原子数据和分析数据分别映射到不同的数据集市中。其中,典型的分析主题域如通用承保分析(Universalunderwritinganalysis)如下图:©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.分析集市模型设计步骤需求整理指标维度矩阵设计集市层模型设计分析层模型©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.维度指标矩阵维度指标矩阵是把需求转化为多维模型的重要工具©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.业务分析需求举例与上一年相比,各险种所占的份额有何差异?每个机构在各险种所占份额是多少?机构险种时间2006和2007年度各险种份额对比20062007Thousands2006年度各机构在各险种上的份额车险财产险货运险其它险车险财产险货运险其它险0%20%40%60%80%100%机构1机构2机构3车险财产险货运险其它险©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.维度建模举例时间机构险种客户©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.主题维度建模的基本概念模型概述模型介绍模型运用方法与技巧相关技术问题©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.元数据模型在整个系统架构中的定位AT&TETL过程核心收付车险理赔财务•面向业务应用•数据集市•Cube•最终用户•基本上与业务数据同构•保留详细交易数据数据仓库•面向分析主题•轻度汇总数据•StarSchema建模•中间表财务账户活动理赔事件收付费处理资金供应角色实物地理位置协议产品分析层/数据集市模型源系统模型ODS模型需求模型分析层©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.分析层模型主题域分析层模型每个主题域为同类的业务处理,共享相同的维度承保理赔分析记录安邦保险所关注的主要承保理赔业务指标。收付费分析记录财务收付中应收保费、实收保费、应收率、应付赔款、实付赔款等收付类信息。核赔效率分析记录理赔环节中查勘、定损、核损、缮制过程的相关指标。©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.主题维度建模的基本概念模型概述模型介绍模型运用方法与技巧相关技术问题©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.分析层模型结构©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.收付费分析的星型结构©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.分析层模型介绍“承保理赔分析事实表”、“收付费分析事实表”、“核赔效率分析事实表”都是经轻度汇总生成的表,它们全部都是事务型事实表中间事实表都是经过版本化的历史表,保存最细粒度的数据中间事实表主要用于生成轻度汇总表的过渡,除此之外,通过冗余相关属性,中间事实表的设计也考虑了其它无法从直接从分析层计算的指标的计算©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.事务型事实和快照型事实机构险种日期未决变化201010210112008-9-121000201010210112008-9-13-300201010210112008-9-122200201020120312008-9-12100201020220012008-9-121000201020220012008-9-131200201020220012008-9-14-2200事务型快照型快照型事实表的指标通常包含时点值,随着时间积累,维度组合会越来越细,此类型的事实表通常用于粒度较粗的数据集市或Cube;而事务型事实表的度量都是可累加的,其对于维度较多的轻度汇总表是有利。如果OLAPserver支持在事务型事实表上计算时点值,建议在维度较细的Cube上使用事务型事实。机构险种日期期末未决201010210112008-9-121000201010210112008-9-13700201010210112008-9-142900201020120312008-9-12100201020120312008-9-13100201020120312008-9-14100201020220012008-9-121000201020220012008-9-132200201020220012008-9-140©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.中间层历史数据的版本化数据仓库中的历史数据决不会被删除或覆盖,因此需要加入数据版本特性来区分随时间变化的业务信息,使得在任一给定时间点上都能检索到正确的数据。数据是否需要版本化,首先依赖于实体是否有时变特性,比如“报案信息”通常是在某个时间点上发生,它就没有时变特性,因此就不需要版本化。在实体中加入时间戳属性可以实现数据版本化,这个时间戳可以基于业务涵义,如对保单的某次批改的生效日期;也可以仅仅是技术上的,比如员工某项登记信息被修改,则生成新的员工记录,并指定该记录的有效(Valid)期间,ETL处理需要实现数据相邻版本时间戳的链接。需要为版本化的实体找出一个锚ID来唯一标识每个数据实例,比如保单实体的锚ID可以是保单号,表明该实体中最原子的粒度是保单。©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.时间戳与数据版本业务信息的不同版本的时间链时间戳(start_date/end_date)员工姓名职位离职时间start_dateend_date张三初级核保人2006-5-212007-12-3张三中级核保人2007-12-39999-12-31李四业务员2004-3-122006-10-8李四业务经理2006-10-82008-5-9李四业务经理2008-5-92008-5-99999-12-31以上start_date为红色的是该数据实例被创建时的版本,该值从逻辑上看应该为数据的业务创建日期,比如入职日期,但为了避免受到数据质量的影响,我们通常把每个数据实例的第一个版本的start_date置为1900-01-01©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.承保中间表场景示例保单号批单号保险起期保险金额保费核保日期批改原因startdateenddate0001---2006-3-712000802006-3-4N/A1900-1-12006-5-18000100012006-3-7002006-5-18注销2006-5-189999-12-310002---2006-4-19223001202006-4-7N/A1900-1-12006-5-10000200022006-4-19223001202006-5-10修改2006-5-102006-5-21000200032006-4-19223001382006-5-21加保2006-5-219999-12-310003---2007-1-121200008902007-1-8N/A1900-1-19999-12-310004---2007-5-2570005002007-4-22N/A1900-1-19999-12-310005---2008-3-1440000036002008-3-8N/A1900-1-12008-4-6000500042008-3-1431000030002008-4-6退保2008-4-62008-4-16000500052006-3-1431000030002008-4-16修改2008-4-169999-12-31©2006FEnetSoftwareCo.,Ltd.AllRightsReserved.收付费中间表场景示例单据号type状态应收保费实收保费应付赔款实付赔款应付手续费实付手续费startdateenddate0001保费应收20