《数据架构设计指导书.docx》由会员分享,可在线阅读,更多相关《数据架构设计指导书.docx(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上数据架构设计指导书(版本号 V1.0)朗新科技(中国)有限公司2013年06月更改履历版本号修改编号更改时间更改的图表和章节号更改简要描述更改人批准人V1.02013-6-15王全义郑德炳注:更改人除形成初稿,以后每次修改在未批准确认前均需采用修订的方式进行修改。专心-专注-专业目录1 编写目的为了提高数据架构设计能力、规范软件设计流程、加强架构管控力度,提高软件安全特制定本规范。此文档描述了数据架构设计等。2 适用范围适用于数据架构设计人员。3 数据架构设计原则数据资产化原则:将数据作为公司具有价值的无形资产来管理,统一认识,加强数据资产认责管理,保障数据资产的价值
2、发挥。数据共享性原则:避免数据孤岛的建设和数据私有化,加强数据在公司各级单位、各个业务领域间的共享。营造及时、准确的共享数据环境,完善数据管控机制,确保数据共享符合信息安全要求。数据可用性原则:建立标准化、多样化的数据资产获取渠道和访问方式。加强数据质量管理,增强用户使用数据的信心,有效支撑各类分析应用建设。数据认责原则:针对不同的数据资产指定权威的数据拥有者、质量责任者、日常管理维护者等角色,建立配套的数据管控机制和评价考核体系,确保数据认责工作的有效开展。数据标准化原则:在公司全局范围内建立通用的数据标准,包括业务数据标准,主数据标准,元数据标准等,避免数据的二义性,促进数据共享和利用。数
3、据安全性原则:定义数据安全级别,建立数据安全控制过程,保证数据被合理的访问、共享和发布,避免未经授权的数据操作,满足监管单位和公司业务经营对数据安全的要求。4 数据架构设计数据架构设计主要解决:存在哪些数据资源、如何管理数据资源、解析业务信息的数据模型是什么、面向交易、交换和分析的数据模型是什么、信息在流程间、数据在功能间如何流转等问题。数据架构设计主要内容:数据主题域设计、概念数据模型设计、逻辑数据模型设计、物理数据模型设计等。4.1 企业业务数据分类4.1.1 按数据格式划分结构化数据:方便用数据库的二维表结构来逻辑表达实现的数据,数据结构字段含义确定,清晰。例如:客户信息、用电记录等。是
4、挖掘数据价值的主要对象。非结构化数据:很难按照一个概念去处理的无结构性的数据。例如文本、多媒体数据等。其数据利用技术相对于结构化数据起步晚,是未来数据应用的一个发展方向。4.1.2 按数据参照程度划分主数据:用于描述企业核心业务实体/对象的基本业务数据,它在企业内长期存在并且被重复应用于多个业务部门和信息系统,是最容易产生数据一致性问题的一类数据,需要单独的管控机制对其进行管理。非主数据:相对于主数据,其它的参照度低的、存在周期短的非核心实体/对象数据可认为是非主数据。4.1.3 按数据采集频道划分非实时数据:相对于实时数据,其它的企业经营过程中产生的,由业务人员通过应用系统输入的数据都可认为
5、是非实时数据实时数据:主要是由一些传感器设备以自动化的方式采集的秒级、毫秒级的数据,例如电网运行数据、设备状态数据等。这些数据的特点是数据内容简单,但数据量很大。4.1.4 按使用性质划分分析性数据:用于支持日常报表、查询、分析等决策需求的数据。共享数据:来自某个业务系统,在业务部门之间、业务系统之间重复使用的数据4.2 数据主题域数据主题域由业务信息按照其业务耦合程度聚合而成的高阶数据主题群,一般与业务域有着紧密的对应关系。例如:财务、物资、生产等。数据主题域通过数据主题域视图和数据主题域关系视图来体现。4.2.1 数据主题域视图展现数据域和数据主题,并定义数据主题对业务域的支撑关系。例图如
6、下:4.2.2 数据主题域关系视图展现数据主题域之间的逻辑关系。一般分为一级数据主题域关系视图和二级数据主题域关系视图,二级是一级的细化。一级数据主题域关系视图如下:二级数据主题域关系视图如下:4.3 概念数据模型 概念数据模型主要由最佳实践和业务需求作为驱动因素高阶的数据模型,定义了重要的业务领域概念(即数据主题域)和彼此的关系,由核心的数据实体或其集合,以及实体间的关联关系组成。概念数据模型独立于信息系统存在,不涉及信息在系统中的表示。概念模型应该抓住一个重点,即表达重要业务概念及业务概念之间的关系;解决并只解决需要在全国范围内统一规范的核心的业务问题;只是反映了业务对数据的需求,包容多种
7、物理实现方式,除非该种物理实现方式不满足业务的需求。概念数据模型一般由概念数据模型视图和数据流转视图组成。4.3.1 概念模型视图展现数据主题域之下的数据实体,并展现数据实体之间的关联关系。4.3.2 数据流转视图展现数据实体所分布到的应用,并展示数据在应用间的流转。例图如下:4.4 逻辑数据模型逻辑数据模型对概念数据模型的进一步分解和细化,描述实体、属性以及实体关系,通用的字段类型、长度和主外键关系等做了定义,设计时一般遵从“第三范式”以达到最小的数据冗余。逻辑模型的设计由最佳实践和业务需求、数据资源规划、现有业务应用数据模型等作为驱动因素逻辑数据模型由逻辑数据模型视图和数据分布视图组成4.
8、4.1 逻辑数据模型视图对数据实体的分解细化,对数据实体的属性、属性类型、长度和主外键关系等做了定义,遵从“第三范式”以达到最小的数据冗余。 4.4.2 数据分布视图展现数据实体所分布到的功能,并定义在功能中的操作(CRUD) 数据分布视图如下:CRUD如下:4.5 物理数据模型物理数据模型描述数据模型的细节,需要考虑所使用的数据库产品、对应的字段类型、长度、索引等因素,并对数据冗余与性能进行平衡,必须确定数据库平台和应用程序的架构。物理数据模型的设计由数据库/数据仓库系统平台和性能调整优化要求作为驱动因素。4.5.1 物理模型视图描述数据模型的细节,需要考虑所使用的数据库产品、对应的字段类型
9、、长度、索引等因素,并对数据冗余与性能进行平衡。 物理模型视图例图如下:4.6 数据库详细设计4.6.1 数据基础设计数据库类型:Oracle数据库SID:sqadb1、sqadb2数据库名: sqldb语言:AMERICAN_AMERICA数据库字符集(NLS_CHARACTERSET):UTF8国家区域字符集(NLS_NCHAR_CHARACTERSET):UTF84.6.2 常用参数NLS_LENGTH_SEMANTICS = CHAR说明:此参数需要设置后重启方可生效。4.6.3 主要模式设计规划数据库schemas,主要用于客户端或外部系统访问数据库。具体设计例子如下: 模式名英文内
10、容描述权限需求对象类型默认空间默认索引表空间工作流用户sotower用于保存工作流数据由普华提供由普华提供DATA_SOTOWERIDX_SOTOWER权限、组织bpm用于保存权限组织由普华提供由普华提供DATA_BMPIDX_BPM4.6.4 表空间规划及存储容量估算根据业务情况与各物理表设计字段长度,评估运行周期1年内产生的数据量。数据域数据表空间容量估算(GB)索引表空间容量估算(GB)客户档案DATA_CUS70280IDX_CUS105-420服务体系/用能分析/营销市场/系统支持DATA_EESMP40IDX_ EESMP60用能采集DATA_EIC7300IDX_EIC14600
11、工作流DATA_SOTOWER0.5IDX_SOTOWER0.5组织、权限DATA_BPM0.5IDX_BPM0.5接口用户DATA_API0.5IDX_API0.54.6.5 历史表所有非档案数据表在系统设计之初就需要考滤历史数据的使用。历史表设计必须在需求分析阶段确定下来,并在数据模型设计得以体现。在线数据保留在在线系统中的当前表中,保留业务经常使用的数据。历史数据保留在历史系统中的历史表中,保留当前业务不被使用的数据,将这部数据从在线系统中迁出可以在线系统库维持在稳定的大小,提高在线库的性能和可靠性,提高当前表中的查询速度。对于有时间特征的流水业务数据必须进行归档,归档周期由具体业务需求
12、决定。如果数据量巨大,可根据业务需求缩短归档时间周期。对于没有明显时间特征的旧数据,可按业务需要标准进行判断之后加以归档,如果数据状态、标识等,归档实体表中尽可能增加时间属性。本系统中对于流程已走完的工单数据,在呼叫接入平台、呼叫服务业务支持系统数据库中,咨询、报修类数据保留3个月,其它数据保留6个月,咨询、报修类数据保留3个月以前的数据和其它个月以前的数据将迁移历史库中。呼叫接入平台与呼叫服务业务支持系统共用同一个历史库。历史表结构必须为时间分区结构(特殊情况除外),字段结构与在线表相同,历史表名与在线表名保持一致。序号主题域历史表实体名称历史表表名(与基表表名相同)历史表分区方案历史表数模
13、变更需求4.6.6 表分区尽可能不采用二级分区;每个分区的记录数应对于数据量较大的表,为提高系统性能,方便业务数据管理必须进行相应的分区处理,分区策略可选择一级、二级分区,分区字段由相应的数据分布特征或业务需求来定。1.分区的依据记录数超过2000万的表需要考滤为该表做分区;2.分区字段的选择分区字段优先考滤最有可能作为查询条件的字段; 尽可能不要使用TIMESTAMP类型的字段,这在我们当前的营销业务的其它系统中最常出现,并且已经被证明,非常影响性能,如果需要这类字段作为分区条件,那么需要在表中添加一个新的字段,作为前面的TIMESTAMP类型的字段的冗余,字段类型为varchar2型,并以
14、这个新的字段作为分区字段;3.分区数量的考滤表的分区数据不宜太多,以住在营销系统中我们常采用二级分区的方法,导致表的分区数据太多,一保持在100-500万之间;4.禁止使用pmax分区在创建分区表时不可以创建pmax分区,创建pmax分区将导致后续分区扩展变得非常困难,在营销系统中我们吃尽了这方面的苦头,不能再犯这类的错;5.数据归档或迁移的考滤表分区的创建还要充份考滤便于后续数据的归档和迁移,如某张表在线数据只保留6个月,归档表只保留6个月前至1年前之间的数据,历史表保留1年以前的数据。那么在表分区规划时就要考滤这张表的数据归档迁移方式,要能以最快速度,最小代价,最低影响在线系统的方式将数据
15、归当、迁移出去。6.对于数据量巨大且无明显数据分布特征可采用HASH分区。7.制定分区表需要开发设计与开发DBA共同讨论,分区命名遵循P+分区值的原则。子分区遵循P+主分区值+_+P+子分区值的原则。如:单位分区 P、 年月分区P、 单位年月组合分区P _ P注意:范围分区时分区名应大于分区值上界。 在总部系统中由于数据较小暂不考虑分区。4.6.7 DBLINK由于目标客户使用的硬件资源各不相同,要求我们在设计之时,不得不考虑未来多种部署模式,多种部署模式中,有存在跨数据库访问的情况,因此规划数据链。注意:尽量不要使用DBLINK来访问外部数据库。主库目标库数据库链名用途属主连接帐号权限说明9
16、5598服务业务系统库95598服务业务系统历史库DL_TO_EESMPH_API历史数据迁移EESMPAPI待定4.6.8 同义词引入同义词是为了解决程序部署灵活性的要求。 将开发人员程序调整工作量降到最低的情况下,来满足程序的灵活部署。同意义与表同名同义词类型同义词命名规则源端(for)目标端展现类同义词SY_ED_XXXXERMDERMA、SGPM、SGPM_OUT、KMAC营销管理类同义词SY_AD_XXXXSGPMSGPM_OUTAMBERWF_AMBERERMA、ERMD风险流程类同义词SY_WF_XXXX最小化平台、稽查流程ERMD4.6.9 主键1.尽可能采用具有实际意义的列去
17、创建主键;2.如果需要采用多列来创建主键,那么列应控制在2个以内;3.尽可能不采用序列去生成主键列值的方法,通过序列生成的列值,在我们应用中很少有实际用途,而且实践证明这种方法在极端情况下很容易引发性能问题;4.6.10 索引对于表中常用于作为查询关键字、关联条件,且数据离散度较高的字段,必须创建索引。原则上一张表的索引:1、选择性较高的字段2、作为数据访问条件与关联条件4.6.11 约束本文所提及的约束通常只主键约束,系统中禁止利用数据库底层约束机制来处理或代替业务层面的业务数据一致性、完整性、规范性约束,包括使用触发器进行处理。禁止ID字段及作为主键约束。4.6.12 修改标志时间戳除业务
18、中间表和过程表之外,每个表都须设计数据更新记录字段(DML_STAT),比如“U”表示本条记录做过UPDATE操作。4.6.13 LOB字段尽量弃用LOB字段定义,LOB字段在后续使用中非常不便,并且性能不佳。序号主题域原实体名称表名LOB字段名数模变更需求1业务受理95598工作单S_95598_WKSTATTACH工作单有关附件(BLOB)删除该字段4.6.14 冗余字段设计尽可增加表的冗余字段,从营销系统的运行情况来看,在没有冗余的情况下,查询某些记录需要关联更多的表,关联的表越多,SQL的执行计划就越差,引起争用的可能就越高。从营销系统的运行情况来看,在表缺少冗余的情况下,性能下降非常严重。在本项目中,尽可能增加必要冗余字段的思想已在数模设计中一直灌输,因此数模设计中已有效实施了字段冗余,后续无需调整。序号主题域实体名称表名数模变更需求