数联网:大数据如何互联
上QQ阅读APP看书,第一时间看更新

|1.4 数联网的概念和架构|

参照互联网的定义,数联网可作如下定义:数联网以各种数据系统互通和计算为主要目的被构建在基础网络之上(如互联网),通过定义一组通用的数据协议相连,形成逻辑上互联互通的数据网络。其中数据协议包括格式标准、接口标准、传输标准、使用标准等方面。

数联网概念中几个基础定义如下。

定义1:数联网节点是承载数据的载体,如各个企业建立的大数据中心即为数联网的一个节点。

定义2:数联网网络是指由若干承载数据的载体通过数据交互和通信而形成的网络。

定义3:数联网通信协议是指数联网中不同节点之间数据交互和通信的准则共同语言。

例如,阮小二要装修房子,他就可以将自己房间的各种尺寸数据,包括房间户型和尺寸,每间房间的三维分析数据(长、宽、高等),甚至每堵墙的强度等提出要求,放在数联网中的某台服务器上。如此,卫浴的设计师就不用自己跑去测量,而是可以直接获取相关数据,然后给出有关的设计方案,并将这些设计方案的各种数据列到该网页上。铺磁砖的厂家,可以根据卫浴设计师的这些数据,计算出所需的各种瓷砖的数量。灯具厂家根据这些数据,可以计算出阮小二家的卫生间的灯光底座的大小等。

在这个过程中,阮小二要将自己房间的尺寸等数据,以标准的数据格式、标准的单位格式等进行数据表述后,如卫生间的尺寸是长5m、宽3m、高4m,其中,排水管道的直径是0.23m等,再放到数联网上。

这些数据放到数联网上之后,铺瓷砖的厂家可以了解到尺寸的标准单位是“m”,以及卫生间的大小、管道的位置等信息,然后据此计算自己需要提供的瓷砖数目,并根据卫生间形状切割瓷砖。灯具厂家则可据此计算好所需的灯具的尺寸和位置等。

1.4.1 数据的标准化

数联网要想能够互通,首先要解决数据的标准化问题。只有建立了标准化的环境,数据才能够被理解、被使用。

1.4.1.1 数据的标准化过程

数据如何进行标准化呢?阿拉伯人在经商的过程中,把数字带到了世界各地,最终印度人将其改进后使其成为目前世界通用的阿拉伯数字。同时,阿拉伯数字的标准化也促进了十进制数的发展。

此外,数据的标准化还要解决计量单位的标准化、数据结构的标准化、数据访问的标准化、数据解释的标准化等问题。

1.4.1.2 二维码识别数据主体

二维码可以标识很多内容,如一辆汽车或一栋建筑等。那么二维码能否标识一个数据或一个数据库呢?

答案当然是可以的。我们借助二维码,可以大大解决数据的标识难题。例如,张博士的所有数据,都可以用一个二维码进行标识,这样,谁需要张博士的个人数据,只要扫一下这个二维码就可以获取。

1.4.1.3 数据内容的标准标识

如何对数据的内容进行标准化呢?例如,张博士的身高是1.8m,体重是80kg,读者就可以大致想象出张博士的身体轮廓。这是因为,读者对于单位的认知是标准的,对于数字的认知也是一样的。故此,数据内容要想被正确解读,首先要解决数值的标准化(阿拉伯数字)问题,其次要解决数值单位的标准化(如m和kg)问题。

在数联网中,这些标准类的内容,可以通过数据随身携带的“元数据”被解读。这些元数据表示了数据的内容、计算口径的产生、相关表述单位等信息。

数联网在传输的过程中,首先要解决元数据的标准表述问题,然后才能解决内容的标准标识问题。

1.4.1.4 数据结构的标准化

我们在表述数据时,同样要表述数据的格式和结构。例如,数据的格式是二进制、十进制,还是十六进制?数据的格式类型有很多种,例如其在数据库里被表示为字符型、数值型或者数组等形式。

对于大数据中的非结构化数据(这些数据是一段语音,还是一段视频),通过不同的解码方式,我们可以解读出不同的结果。

在视频类型里,也有不同的种类,如有的视频是MP4格式的,有的是AVI格式。只有用相应的解码算法,我们才能对数据进行正确的解读和重现。

而数据结构还涉及数据间彼此关系的描述。例如,如何在数据结构中表示张博士与其父亲的关系呢?这个就会涉及数据建模的过程。

1.4.2 数据访问的标准化

在数联网中,数据的访问方式也要实现标准化。例如,互联网是通过HTTP和浏览器,展现出用户可以读懂的网页信息。同样地,数联网也要提供标准的数据访问协议,让用户通过标准的工具,直接读取数据。在单点数据库中,用户通过标准的SQL语句,访问数据库里的内容,获取数据值。

1.4.2.1 数据访问(接口)的标准

数据访问的接口要建立在标准的协议上,数据库之间通过ODBC接口或者JDBC接口能够互访。这个接口是点对点的标准协议,而数联网则要提供一种类似总线一样的标准访问协议。

1.4.2.2 数据可读性标准

用户如何读懂数据的结构,即如何为用户提供一种标准的解读模式,确保读写双方都可以正确地解读这段数据?

这很像加密和解密的过程,目前业界采用比较广的是JSON(JavaScript Object Notation,JS对象标记)和XML(eXtensible Markup Language,可扩展标记语言)。JSON是一种轻量级的数据交换格式。它基于ECMAScript规范的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得JSON成为理想的数据交换语言。其易于阅读和编写,同时也易于机器解析和生成,并可有效地提升网络传输效率。

1.4.3 数据解释的标准化

数据都带有结构信息(例如人具有年龄、性别、身高等属性),如何对这些结构信息进行正确的理解?这就需要对这些数据结构进行标准化。

数联网中流动着各种数据,这些数据间的关系,也需要通过标准的方式被表述,避免歧义。

1.4.3.1 数据模型的标准

传统的数据库由于要满足第三范式(每个非关键字列都独立于其他非关键字列,并依赖于关键字,第三范式指数据库中不能存在传递函数依赖关系),因此可以建立标准的数据模型。

在数据库或者数据仓库的建设过程中,我们的首要任务是建立数据模型,解释清楚数据结构和彼此间的数据联系等,如图1-10所示。

图1-10 数据模型描述举例

而在大数据领域,出现了非结构化数据,甚至NoSQL数据,因此数据间无法建立传统的数据模型。如何表述这些非结构化(含NoSQL)数据间的关系,需要我们进行新的探索和研究。

1.4.3.2 数据解释的语言

在传统的数据库中,用户可以借助标准的SQL,进行数据的读写,同时利用元数据解释数据的含义。元数据也称数据的数据,完成对某个数据的(口径)解释工作。

对于电信企业中的“通话用户数”,其业务元数据可以描述为:统计周期内使用语音业务的用户数,不包含仅拨打免费特服电话的用户和测试卡用户。

有了这些元数据,用户就可以对某个数据指标形成比较清晰的定义,了解其统计口径,降低产生歧义的概率。因此,在数联网中,在数据应该自带这种元数据完成解释,也就相当于自带了语义。

1.4.4 数据质量的标准化

如何对数据质量进行标准化呢?数联网能否提供更加准确的数据,而不是一堆垃圾数据呢?

1.4.4.1 数据质量表示标准

传统的工业制造领域,是靠工业误差参照值来评估产品质量的,这些误差参照值有一个上下波动的范围。数据质量如何被表述呢?一般地,在实践中,我们也要根据管理要求,从数据产生及时性、数据波动范围、数据准确性等多个角度进行数据质量判断。

例如,张博士的身高如果被表述成为3.7m,那就是数据质量有问题,因为正常人的身高无法达到3.7m。所以,我们可以设定一个波动区间,在这个区间之外的数据就被认为是有质量问题的数据。

1.4.4.2 质量衡量标准

在数据质量管理过程中,由于不同的数据处于生产线的不同阶段,因此我们可以借鉴工业中产品质量管控的方法,进行数据质量管控。

在现代汽车制造中,厂商普遍采用车身制造综合误差指数CII(Continuous Improvement Indicator)来控制车身的制造质量,即“2mm工程”,如图1-11所示。这一误差指数不是车身制造质量丈量数据的实际偏差,而是对车身制造尺寸稳定性指标的综合评价,不但可以应用于整车制造,而且可以应用于零部件制造。

“2mm工程”的本质是建立以数据为基础的制造质量控制体系,通过对制造数据建模分析来识别车身制造尺寸偏差源,保证车身制造工艺的稳定性。其核心是采用先进的车身丈量技术,建立从冲压工艺、加工装备到装配过程协调、一致、高效的丈量系统,通过数据分析和积累,将人为的经验治理上升到科学治理水平。

图1-11 汽车“2mm工程”中尺寸偏差影响因素

由此,模仿汽车的制造过程,我们可以知道数据在产生过程中,哪些因素影响了数据质量,然后反向逆推,对每个环节的质量进行把控,降低“叠加”影响,从而保障数据质量最终可控。

1.4.5 数联网的架构分享

互联网强调底层的网络连接功能,而数联网强调数据的连通功能。互联网解决的是信息通信问题,借助TCP/IP,实现寻址、访问等功能。

传统的网络都是建立在ISO的七层协议之上的,如图1-12所示。数联网应该在表示层增加更多的数据信息,包括数据的格式、数据的标准,甚至数据的语义。数联网需要扩展这些协议的内容,增加一些关键的属性。

数联网是建立在互联网的TCP/IP基础之上的,是互联网之上的叠加网,如图1-13所示。

从图1-13可以看出,用户的数据可以借助TCP/IP进行传送。

数联网将在上述的应用层数据报之上,加入新的功能,包括数据的寻址、数据的语义解析、数据的标准等。

图1-12 ISO的七层网络模型

图1-13 TCP/IP封装过程

1.4.5.1 从互联网架构拓展

互联网是基础层的网络,物联网是在互联网之上的叠加网。物联网的功能结构如图1-14所示,它强调了感知层的内容。而数联网将强调网络层和应用层之间的数据层,即通过数据层,解决数据的标准化、访问的标准化、解释的标准化、质量的标准化等功能的管控问题。

物联网的架构中突出了感知层的特色,即如何感知各种事物的各种状态,并将这些感知信息传给上层应用。

数联网将突出数据层的特色。数联网在数据层阐述数据的语法(标准)、语义(内容),完成数据标准化的各种转换工作;阐述数据的访问寻址及各种协议,完成数据传输的协议转换、组装等工作;描述数据质量的一些量化信息,丰富元数据的内容,完成数据质量量化信息的传递。

1.4.5.2 数联网的数据层的独特功能

数联网的数据层要增加一些独特的功能,包括以下几方面。

●数据的标准化:解决数据的唯一标识问题,并给出具体的量化单位和量化基础(如十进制)。

图1-14 物联网的功能架构

●数据访问:解决数据的寻址问题,构建在IP地址之上的标识能力;同时,构筑数据的访问协议和标准接口,提供数据访问所需的解释口径等信息。

●数据解释:提供数据的建模情况,表述数据之间的连接关系,供使用者理解数据的内容和关联,同时给出数据计算的口径等元数据信息。

●数据质量:给出数据质量的描述数据,供使用者参考。

●数据传输:数据传输的网络层内容,仍然借鉴互联网的底层协议,会在应用侧进行数据传输的应用解构。

●数据安全:由于很多数据涉及用户隐私,因此要考虑数据安全管理要求。

基于数联网的基本功能,上层应用中也会产生一些独特的应用需求,如算法的标准化、人工智能的结合、数据浏览器等。

1.4.6 计算的标准化

大数据的本质是进行计算,我们能否对其中的数据挖掘类算法进行标准化描述,积累别人在算法领域的经验和教训,快速部署新的数据挖掘应用呢?

1.4.6.1 算法的标准化

基于大数据的要求,我们可以进行数据挖掘类的应用。这些算法需要进行标准化工作,即将算法进行标准化描述,让别人可以看懂算法内容,并在此基础上进行优化。

笔者曾对PMML(Predictive Model Markup Language,预言模型标记语言)进行探索,PMML利用XML描述和存储数据挖掘模型,是一个已经被W3C所接受的标准。MML是一种基于XML的语言,用来定义预言模型,它为各个公司定义预言模型和在不同的应用程序之间共享模型提供了一种快速并且简单的方式。通过使用标准的XML解析器对PMML进行解析,应用程序能够决定模型输入和输出的数据类型、模型详细的格式,并且按照标准的数据挖掘术语来解释模型的结果。PMML提供了一个灵活机制来定义预言模型的模式,同时支持涉及多个预言模型的模型选择和模型平衡。对于那些需要全部学习、部分学习和分布式学习的应用程序,这种语言被证明是非常有用的。另外,它使得在不同的应用程序和系统之间移动的预言模型变得简单、方便。

还有一种开源的模式,即将算法的描述源码完全开放,可以供第三方进行查询、调用,如此增加数据的复用程度,降低工作量。

1.4.6.2 云计算的延伸

云计算借用“分布”“并行”的理念,将计算进行分解。同样的,解决了计算的标准化描述问题后,我们可以在应用层进行计算的分布。这种数联网的计算模式,将以未来“边缘计算”为计算基础。

例如,要计算全国的GDP,我们可以借助数联网,通过标准的算法描述,先对每个地市、每个乡的GDP数据进行计算,进行本地汇总,然后将结果在上一级逐级汇总,形成最终结果。整个计算过程体现了分布计算的理念,也体现了传统云计算的延伸。

在这个计算的过程中,数据是标准化的,计算是标准化的,结果的表述也是标准化的,而传统的云计算仅提供计算资源,并不涉及上层的标准化工作。这种数联网的计算方式将大大提升工作的效率,云计算也将旧貌换新颜,获得本质提升。

1.4.6.3 数据仓库的“旧貌换新颜”

数据仓库是建立在传统的数据库基础上的,是单点结构的。如果有了数联网,数据仓库将被连接起来,变成数据仓库“群”。数据仓库间将可以彼此交换数据,根据需要分布计算资源,引入云计算的一些思维方法,去掉彼此隔离的围墙。

例如,在法规允许范围内,中国移动如果将自己的数据仓库和工商银行的数据仓库通过数联网互通,将可以更深刻地了解用户的情况。中国移动给出了用户的行为数据,工商银行给出了用户的金融消费数据,两者结合,将丰富双方对用户的分析维度。

如此,数据仓库将不再是传统的封闭、单一的,而是数据仓库群的一个节点,原有数据仓库中封闭的数据将被打通,产生倍增的商业价值。