一、如何创建数据模型
建立数据模型
1、建立实体联系模型
1.1、实体联系模型的基本构成
实体联系(ER)数据模型所采用的三个主要概念是:实体集、联系集和属性。
实体集是具有相同类型及相同性质(属性)的实体集合。联系集是指同类联系的集合。
在ER模型中,用矩形框表示实体集(矩形框中写上实体名),用椭圆表示属性(椭圆中标上属性名),实体的主码用下划线表示。实体集之间的联系集用菱形表示,并用无向边与相关实体集连接,菱形中写上联系名,无向边上写上联系集的类型。
实体集之间的联系类型有一对一,一对多,多对多
1.2、多元联系
在ER模型中,可以表示两个以上实体集之间的联系,称为多元联系。
一个多元联系集总可以用多个不同的二元联系集来替代。考虑一个抽象的三元联系集R,它联系了实体集A、B、C。可引进一实体集E替代联系R,然后,为实体集E和A、B、C建立三个新的二元联系集,分别命名为RA、RB、RC。可以将这一过程直接推广到n元联系集的情况。所以,理论上可以限制E R模型中只包含二元联系集。
1.3、联系的属性
联系也可以具有单独的属性。
1.4、自身联系
在一个联系中,一个实体集可以出现两次或多次,扮演多个不同角色,此种情况称为实体集的自身联系。一个实体集在联系中出现多少次我们就从联系到这个实体集画多少条线,到实体集的每条线代表该实体集所扮演的不同角色。
1.5、子类和Is-a层次联系
在信息世界中,常常需要描述这样的实体集A,A属于另一实体集B。A中的实体都有特殊的属性需要描述,并且这些特殊属性对B中其他的实体无意义。在ER模型中,称A是B的子类,或B是A的父类。两类实体之间存在一种层次联系——Is-a(属于)。
如果A和B存在Is-a联系,则A中的每个实体a只和B中的一个实体b相联系,而B中的每一个实体最多和A中的一个实体相联系。从这个意义上说,A和B存在一对一的联系。但事实上,a和b是同一事物。A可以继承B中的所有属性,又可以有自己特殊的属性说明。用来区分A的主码也就是B的主码。
2、ER模型向关系模型的转化
ER模型是概念模型的表示。要使计算机能处理模型中的信息,首先必须将它转化为具体的DBMS能处理的数据模型。ER模型可以向现有的各种数据模型转换,而目前市场上的DBMS大部分是基于关系数据模型的, ER模型向关系数据模型的转换方法
关系模型的逻辑结构是一系列关系模式(表)的集合。将ER模型转化为关系模式主要需解决的问题是:如何用关系表达实体集以及实体集间的联系。
ER模型向关系模型转换的一般规则和步骤:
(1)将每一个实体集转换为一个关系模式,实体集的属性转换成关系的属性,实体集的码即对应关系的码。
(2)将每个联系集转换成关系模式。对于给定的联系R,由它所转换的关系具有以下属性:
联系R单独的属性都转换为该关系的属性;
联系R涉及到的每个实体集的码属性(集)转换为该关系的属性。转换后关系的码有以下几种情况:
· 若联系R为1∶1联系,则每个相关实体的码均可作为关系的候选码;
· 若联系R为1∶ n联系,则关系的码为n端实体的码;
· 若联系R为m∶ n联系,则关系的码为相关实体码的集合。
有时,联系本身的一些属性也必须是结果关系的码属性。
(3)根据具体情况,把具有相同码的多个关系模式合并成一个关系模式。
二、如何解析大数据
1、要有大数据;
2、数据必须是在线的,可分析的;
3、数据必须与具体行业的业务数据打通;
4、数据模型必须是高于传统业务数据模型又能和传统数据模型兼容的;
5、数据挖掘出的结果对具体行业是有指导甚至很多效果提升意义的。
具体可以参见TalkingData Mobile DMP的一些在银行、零售、证券行业的应用案例。
三、为什么非结构化和半结构化数据的增长速率大于结构化的数据?
通常用大数据(Bigdata)来形容数字化时代下创造出的大量非结构化和半结构化数据。大数据无疑是未来影响各行各业发展的最受瞩目的技术之一。在2009年,全世界关于大数据的研究项目还非常有限,二从2011年开始,越来越多的管理者开始意识到,大数据将是未来发展不可规避的问题,到了2012年年底,世界财富500强企业中90%的企业都开展了大数据的项目。
那么,大数据为什么成为所有人关注的焦点?大数据带来了什么样的本质性改变?为此,我们与中国计算机学会大数据学术带头人、中国人民大学信息学院院长杜小勇教授进行了访谈。
大数据带来了三大根本改变:第一、大数据让人们脱离了对算法和模型的依赖,数据本身即可帮助人们贴近事情的真相;第二、大数据弱化了因果关系。大数据分析可以挖掘出不同要素之间的相关关系。人们不需要知道这些要素为什么相关就可以利用其结果,在信息复杂错综的现代社会,这样的应用将大大提高效率;第三、与之前的数据库相关技术相比,大数据可以处理半结构化或非结构化的数据。这将使计算机能够分析的数据范围迅速扩大。
计算机科学在大数据出现之前,非常依赖模型以及算法。人们如果想要得到精准的结论,需要建立模型来描述问题,同时,需要理顺逻辑,理解因果,设计精妙的算法来得出接近现实的结论。因此,一个问题,能否得到最好的解决,取决于建模是否合理,各种算法的比拼成为决定成败的关键。然而,大数据的出现彻底改变了人们对于建模和算法的依赖。举例来说,假设解决某一问题有算法A和算法B.在小量数据中运行时,算法A的结果明显优于算法B.也就是说,就算法本身而言,算法A能够带来更好的结果;然而,人们发现,当数据量不断增大时,算法B在大量数据中运行的结果优于算法A在小量数据中运行的结果。这一发现给计算机学科及计算机衍生学科都带来了里程碑式的启示:当数据越来越大时,数据本身(而不是研究数据所使用的算法和模型)保证了数据分析结果的有效性。即便缺乏精准的算法,只要拥有足够多的数据,也能得到接近事实的结论。数据因此而被誉为新的生产力。
由于能够处理多种数据结构,大数据能够在最大程度上利用互联网上记录的人类行为数据进行分析。大数据出现之前,计算机所能够处理的数据都需要前期进行结构化处理,并记录在相应的数据库中。但大数据技术对于数据的结构的要求大大降低,互联网上人们留下的社交信息、地理位置信息、行为习惯信息、偏好信息等各种维度的信息都可以实时处理,立体完整地勾勒出每一个个体的各种特征。
当数据足够多的时候,不需要了解具体的因果关系就能够得出结论。例如,Google在帮助用户翻译时,并不是设定各种语法和翻译规则。而是利用Google数据库中收集的所有用户的用词习惯进行比较推荐。Google检查所有用户的写作习惯,将最常用、出现频率最高的翻译方式推荐给用户。在这一过程中,计算机可以并不了解问题的逻辑,但是当用户行为的记录数据越来越多时,计算机就可以在不了解问题逻辑的情况之下,提供最为可靠的结果。可见,海量数据和处理这些数据的分析工具,为理解世界提供了一条完整的新途径。