数据建模与DB设计

发布日期:2017-09-06

作者:[韩] 金范 主编  出版社:上海科学技术出版社  出版时间:2016年10月


编辑推荐

《数据建模与DB设计》重点介绍数据建模与数据库设计的理论及应用。从数据模型的发展历程及其必要性引入,基于作者在研究和项目实践中积累的经验,让读者理解数据建模是业务负责人与数据设计者之间沟通的工具,数据模型决定数据处理性能与数据管理便利性。


内容简介

《数据建模与DB设计》重点介绍数据建模与数据库设计的理论及应用。从数据模型的发展历程及其必要性引入,基于作者在研究和项目实践中积累的经验,让读者理解数据建模是业务负责人与数据设计者之间沟通的工具,数据模型决定数据处理性能与数据管理便利性。书中首先将数据建模划分为概念建模、逻辑建模、物理建模以及最后的数据库设计四个阶段,明确了导出实体、设定实体的重要关系、设定唯一键的数据建模流程。为了提高数据整合性和业务流程性能,先后提出了范式化和反范式化过程,在构建最容易理解的数据结构的同时兼顾数据库的访问成本,寻找盈亏平衡点。《数据建模与DB设计》无论对数据分析设计领域的初学者还是实际业务的实践者,都很有启发和指导作用。


作者简介

金范,韩国居民,专攻数据库,曾就职(株)KISANTELECOM,拥有CDMA等核心通信软件开发经验,后在(株)WAREVALLEY担任软件开发人员及研究所长(CTO)。拥有数据库相关专利7项,自2011年连续三年与韩国数据库振兴院携手开发了数据库安全框架V1,V2,并编著了数据库安全指南,参与了数据库振兴院进行的认证程序研发,为国内外各种公共机关提供咨询。现作为上海产业技术研究院首席数据科学家、中国大数据标准专家委员积极活跃在数据库领域。


目  录

第1章数据建模概述1

1.1数据模型的概念2

1.2数据模型的必要性3

1.3业务理解的重要性4

1.4建模的基本规则5

1.4.1没有100分的数据模型5

1.4.2端正数据建模员的作用6

1.4.3改善数据处理性能的建模6

1.5数据结构与业务流程的验证7

1.6建模的不同阶段8

1.6.1概念数据建模(conceptual data modeling)9

1.6.2逻辑数据建模(logical data modeling)9

1.6.3物理数据建模(physical data modeling)10

1.6.4数据库设计(database design and architecture)11

1.7自上而下式(top down)建模与自下而上式(bottom up)建模11

1.8结构化查询语言(SQL)11

1.9数据库构建阶段12

第2章数据建模流程13

2.1导出实体(entity)14

2.1.1实体的定义14

2.1.2选定实体候选15

2.1.3实体分析方法18

2.2设定关系(relationship)19

2.2.1关系图式的解释20

2.2.2设定关系时的原则21

2.2.3个体创建与关系的关联性24

2.2.4关系M的范围25

2.2.5关系与数据的完整性25

2.3选定唯一键(unique identifier)26

2.3.1业务中有意义的复合属性27

2.3.2人造键(artificial key)的使用27

2.3.3唯一键属性的顺序30

2.3.4唯一键的继承32

2.4导出属性(attribute)32

2.4.1属性的种类33

2.4.2属性的验证35

第3章范式化(normalization)和反范式化(de normalization)37

3.1范式化38

3.1.1第1范式38

3.1.2第2范式39

3.1.3第3范式40

3.2反范式化40

3.2.1属性的重复40

3.2.2实体的合并与分离41

3.2.3分布式环境的实体重复43

第4章实体种类与特性45

4.1主实体(primary entity)46

4.2关联实体(associative entity)48

4.3历史记录实体(historical entity)51

4.4父型/子型(super/sub type)实体52

4.5排他(arc)关系实体54

4.6递归(recursive)关系实体55

4.71∶1关系实体57

4.8M∶M关系实体58

4.9各种角色(role)60

4.10列优先和行优先62

第5章数据建模实例63

5.1上位实体的设定64

5.2客户实体67

5.3商品实体71

5.4关系实体的唯一代码设定77

5.5派生属性的生成80

5.6属性的分离和重复82

5.7历史记录实体和关系实体的选择83

5.8递归(recursive)结构的实体86

5.9会员管理90

5.10历史记录变更管理94

5.111∶M中M的范围(1)100

5.121∶M中M的范围(2)104

5.13为业务流程改变数据结构106

5.14维持阶层结构的一贯性109

5.15分布式环境中的注意事项113

第6章数据建模习题117

6.1习题1118

6.2习题2119

6.3习题3119

参考文献121


前  言

进入大数据时代,各行业界的数据生产急速增长,数据成为重要的资产,围绕数据的ICT环境也正发生着巨大的变化。

与数据处理速度的增加或存储空间的大容量化等相比,通过数据库创造新价值显得更趋重要,而随着数据库的使用形式渐渐多样化、复杂化,执行相关项目的机关或企业的难度也在逐渐加大。

人们开始更加强调数据中心系统构建方式的重要性,大规模业务系统也正式对数据建模提出要求,人们对数据的认识发生了巨大的变化。近来,即使不用强调,大家也都承认数据建模的重要性;然而,令人遗憾的是,拥有数据建模相关专业知识的人并不多,虽然在数据分析与建模、数据结构设计、数据库构建、数据处理的性能管理等各个细分领域的专家人数正逐渐增多,但对此有着综合洞察力、能够统领行业的专家却为数不多。

数据建模业务作为一个将现实业务抽象化、单纯化、明确化的过程,需要在考虑到复杂ICT环境、数据增加、安全及性能相关问题,以及系统修护等全方位的情况下进行操作;因此,积累这方面的知识并不容易。错误的数据设计会给整个系统带来消极影响,可能造成无法构建正常系统的致命后果。

本书根据作者在操作现场的各种经历编写而成,无论是对于刚刚开始接触建模的初学者,还是已有多次建模经验的专业人士,都有一定的参考价值。作者希望读者们能够以本书的数据建模知识为基础,让大数据时代中最核心的数据建模在信息化系统建构中充分发挥其重要作用。

本书由金范编写,曹艳珺、张青对本书进行了认真校对,周兆明、王一帆、邱雯等参与了资料的收集、整理、录入等工作。此外,本书的编写得到了上海产业技术研究院大数据专家委员会等相关单位的大力支持和指导,上海产业技术研究院的组织协调也使本书得以顺利出版,在此一并表示衷心感谢。