大数据的“拦路虎”,信息孤岛能否解决?

信息孤岛是大数据的“拦路虎”,要根除信息孤岛,必须认识到当前的信息孤岛是不治之症。


大数据的“拦路虎”,信息孤岛能否解决?


到目前为止,全球无数事实已表明凡是用关系数据库理论所开发出的信息系统肯定全是孤岛型的,还无人能用关系数据库理论根除信息孤岛。关系数据库产生信息孤岛的根本原因在于关系数据库的“关系”,由于关系数据库中的数据与表结构、应用程序“关系”密切、紧密耦合,因此,当关系数据库中的数据脱离了原来的生存环境而发送到其它信息系统之后,由于接收数据的信息系统中与接收到的数据之间没有相应的表结构,也没有相应的耦合“关系”,数据就成了无意义的。关系数据库理论是信息孤岛的发源地,要根除信息孤岛的就必须根除“关系”,让数据不依靠任何“关系”而在各个系统中都能独立地表达出完整的含义。


要根除信息孤岛,首先要搞清楚为什么到目前为止信息孤岛得不到根治


为了解决信息孤岛问题,人们发明了EDI、ETL、ESB、EAI、BI等技术,然而全球的无数事实表明,用这些技术也不能从根本上解决信息孤岛问题。


从技术上而言,当前的信息孤岛是由于各个信息系统的数据结构各不相同而引起的,当系统A把结构化数据D发送给系统B时,由于系统B中没有结构化数据D的数据结构,系统B需要采用转换数据结构和数据内容的方式,或重新设计新的数据结构表的方式,才能把结构化数据D存贮到自己的系统中。


全球信息系统的数量超过千万,全球所产生的数据超过数万亿条,这些数据的结构各不相同。


两个系统之间的互联互通约需要1个人月的工程量。


三个系统之间的互联互通约需要:(3-1)*(3-2)=3个人月。


四个系统之间的互联互通约需要:(4-1)*(4-2)*(4-3)=6个人月。


N个系统之间的互联互通约需要:(N-1)*(N-2)*(N-3)*……*3*2*1个人月。


上述计算表明,随着信息系统的数量的增加,要实现各个信息系统之间的数据的互联互通,所付出的代价非常高,不可承受!这也表明,当前的信息孤岛是不治之症。EDI、ETL、ESB、EAI、BI这类技术只能在局部缓解信息孤岛问题,却不能从整体上根除信息孤岛问题。


铁路钢轨的标准化对根除信息孤岛的启示


由于我国的钢轨与前苏联国家的钢轨的标准不一样,我国的火车到了前苏联国家就要花80分钟的时间换车轮。我国铁路交通通过钢轨的标准化而使得火车在全国各地运行而不必换车轮。


信息孤岛犹如火车在宽度各不相同的钢轨上运行,钢轨的标准化从根本上避免了“铁路孤岛”问题的产生。要根除信息孤岛,也应该从数据结构化的标准化方面着手,下文中所到的万能数据结构化就可以成为信息系统的“标准的钢轨”,可用来根除信息孤岛。


当前的EDI、ETL、ESB、EAI、BI这类技术都是通过“换车轮(转换数据结构、转换数据内容)”的方式来解决信息孤岛问题。众所周知的是“换车轮”的方式在铁路交通中是不可行的,问题是到目前为止,IT行业还是用“换车轮”这种非常笨的方式解决“数据交通”问题。


当前的问题是:凡是用关系数据库理论所设计出的信息系统,其中的数据肯定是异构的,犹如不同的火车需要运行在不同宽度的钢轨上。


当前的情况:先利用关系数据库理论设计出众多的信息孤岛,然后再去解决孤岛问题。犹如先设计出车轮各不相同的火车及钢轨,然后再通过换车轮的方式让火车在宽度不同的钢轨上行驶。


当前的误区是:“换车轮”可解决孤岛问题。


值得深思的问题是:为什么机械行业的工程师很容易地就想到用钢轨标准化的方式来实现火车的互联互通,IT行业的工程师为什么死死地抱着“换车轮”的方案不放?IT行业为什么不走数据结构标准化的道路?


结论:凡是“换车轮”的方案,只能在局部上缓解信息孤岛问题,肯定不能从根本上消除信息孤岛。数据结构的标准化才是解决信息孤岛的最佳方法。


关系数据库的“关系”是产生信息孤岛问题的根源


关系数据库理论诞生于单机时代,只适用于孤岛型系统中的数据处理。关系数据库理论的创始人在创立关系数据库时根本就未考虑如何处理众多的信息系统中的数据问题。关系数据库理论中没有数据共享交换的概念,也没有数据接口的概念,也没有通信协议。TCP/IP协议产生于关系数据库理论之后。因此,关系数据库理论在大数据时代就暴露出了其致命的缺陷。关系数据库理论之所以称作是关系数据库,就是因为关系数据库是以“关系”为基础的,“关系”是关系数据库最为自豪的。然而正是因为“关系”才导致信息系统产生信息孤岛!这是因为,如果数据与表结构、数据库中的其它表及应用程序有密切的耦合关系,那么相应的数据就只能在这个特定的环境中依靠特定的关系才是有意义的,一旦脱离了原来的环境,把数据发送到其它信息系统中,数据肯定会失真。


问题的根源之一:异构数据是信息孤岛的根源,二维表是异构数据的根源


异构数据是信息孤岛的根源,关系数据库中的二维表则是异构数据的根源。关系数据库是利用二维表来存贮数据,要存贮不同的数据,要用不同结构的表,其结果就是随着信息系统的数量的增加,会产生无穷无尽的结构各不相同的表,也会产生无穷无尽的异构数据。下图就说明了关系数据库中的二维表是如何产生信息孤岛的。


大数据的“拦路虎”,信息孤岛能否解决?


关系数据库中的二维表虽说具有很多的优点,然而二维表却会产生致命的无穷无尽的异构数据问题,也会因此而产生信息孤岛问题。


关系数据库中的数据必须以特定的数据结构表为基础才能生存,即数据必须依靠特定的表的“关系”才是有意义的。这种数据与表的密切耦合关系在众多的信息系统之间进行数据共享、交换、挖掘时就会产生严重的问题。


结论:只要利用关系数据库理论设计信息系统,肯定会用到结构各不相同的二维表,并因此而不可避免地产生异构数据问题、信息孤岛问题。


问题的根源之二:数据与表结构及应用程序密切耦合


关系数据库理论之所以称作是关系数据库,就是因为关系数据库是以“关系”为基础的,“关系”是关系数据库最为自豪的。然而由于关系数据库中的每一条数据都是与特定的数据结构密切耦合的,而且与信息系统也是密切耦合的,因此,当关系数据库中的某条数据一旦脱离了原来的生存环境而发送到其它的信息系统之后,由于接收数据的信息系统中没有相应的数据结构,也没有相应的应用程序来解读接收到的数据,数据就变成了无意义的数据。


结论:关系数据库中的数据与表结构及应用程序密切耦合是导致数据在众多的系统之间难以共享交换的一个根本原因。


问题的根源之三:关系数据库中大量使用代码而导致数据在共享交换时失真


在利用关系数据库理论设计信息系统时大量使用代码也是产生信息孤岛的一个重要原因。例如,对关系数据库而言,下面的两张表是合格的,然而由于这两张表的表头使用的是代码,除了设计人员外,人们就看不懂表中内容的实际含义。

大数据的“拦路虎”,信息孤岛能否解决?


上述形式的数据是小数据时代的经典结构形式。其实“字段名”也是很重要的信息,用代码来表示字段名会导致数据失真,这样的数据在数据共享、交换、挖掘时就会出问题,需要编写大量的程序来解读表中的数据的实际含义。上述两张表的实际含义为:

大数据的“拦路虎”,信息孤岛能否解决?

关系数据库的技术人员已习惯用代码来表达数据库中的数据,例如有的用“1”表示男性,“0”表示女性,有的用“M”表未男性,用“W”表示女性。在单个信息系统中,可以通过程序来解读数据。然而在大数据时代,所面临的是数百万个信息系统中的数千万个结构各不相同的表,相应的数据量超过数千亿条,要对如此之多的数据进行查询、挖掘,需要编写海量的程序才能解读关系数据库中的每一条数据的含义。


关系数据库理论诞生于1970年的单机时代。关系数据库的创始人在创立关系数据库理论时所考虑的只是如何让自己的系统存贮、识别数据,没有考虑如何让他人的系统也能存贮、识别数据,未考虑结构化数据在各个系统中的互联互通的问题。凡是用关系数据库理论所设计出的信息系统,其中的数据肯定都是与系统密切耦合的,只有自己的数据库系统、只有自己的应用系统才能存贮、识别。关系数据库理论的创始人在创立关系数据库理论时没有考虑数据脱离了原系统之后如何让其它系统也能存贮、识别的问题。这就是用关系数据库理论所设计出的信息系统都是信息孤岛的根本原因。然而在大数据时代,人们更希望数据能够在各个系统之间互联互通、共享交换,希望结构化数据成为大家的系统都可以存贮、识别的数据。


问题的根源之四:没有数据标准,没有可遵守的标准


到目前为止,国际上还没有为数据制订标准,国内也未给数据制订标准。因没有标准,各个系统中的数据不统一,完全由系统的设计人员自己确定,不标准的数据在数据共享交换、挖掘时就会出现问题。例如,对于同一个人,在不同的系统中有的用“秦始皇”,有的用“赢政”,有的用“赵正”。


在大数据时代,关系数据理论不能适应众多系统之间的数据共享交换


在大数据时代,人们不只是关注单个系统中的数据,更关注由数百万个信息系统所组成的系统群之间的数据共享交换、互联互通,相关数据多达数万亿条以上,数据来自数百万个以上的、不同行业、不同单位、不同信息系统。如果各个系统中的数据都是与系统密切耦合的,脱离了原系统之后就变成了无意义的数据,那么要对由数百万个系统所组成的系统群中的数万亿条数据进行交换、查询、挖掘,工程量将是非常大的,不可承受!由于关系数据库中的数据与数据库中表表结构及应用程序密切相关,因此而导致数据只能某个特定的环境中才是有意义的,一旦脱离了原来的生存环境,就成了无意义的数据,在数据共享、交换、挖掘时就需要编写大量的程序。每一张表中的数据都要编写100行左右的应用程序才能解读其中的数据。当面临数百万以上的表时,就要编写数亿行的应用程序。


用独立数据库根除信息孤岛的整体构思


独立数据库中只有一种表,即万能数据结构表。独立数据库解决信息孤岛、实现数据互联互通的方法犹如铁路运输系统通过钢轨的标准化而实现了火车在全国各地不用换车轮即可行驶,独立数据库是利用万能数据结构表(犹如标准的钢轨)实现数据结构的标准化,通过数据结构化的标准化而根除信息孤岛。万能数据结构表是一种通用的表、万能的表,可以用一张表即可存贮各种各样的结构化数据,例如下表只用一张万能数据结构表就存贮了“销售订单表、销售订单明细表、患者基本情况表、住院病历表”的数据。

大数据的“拦路虎”,信息孤岛能否解决?

我国的铁路运输系统通过钢轨的标准化而从根本上避免了“换车轮”。


独立数据库的整体构思:把万能数据结构表当作各种信息系统的“标准钢轨”,各种信息系统只要全部以事物信息表这种“标准钢轨”为基础而设计,那么这些信息系统中的结构化数据就可以象火车运行在全国各地的标准钢轨上那样顺利地实现互联互通而不用换车轮(转换数据结构和内容、建立新的数据结构)。独立数据库是通过万能数据结构表而实现数据结构的标准化,以数据结构的标准化来预防信息孤岛问题的产生,实现数据的互联互通。独立数据库是预防信息孤岛疾病产生的“预防疾病”的方法,而不是治疗现有信息孤岛疾病的“治疗疾病”的方法。


独立数据库彻底颠覆了关系数据库理论,可预防信息系统产生信息孤岛


独立数据库彻底颠覆了现有的关系数据库理论。关系数据库理论最为自豪的就是“关系”,然而大量的信息孤岛问题表明“关系”是产生信息孤岛的根源!因为,如果数据与数据库系统中的其它表及应用程序之间存在耦合关系,那么该数据就只能在某个特定的系统中才是有意义的,该数据一旦脱离了原系统,发送到其它系统之后,就会因为原有的耦合关系不存在而引起数据失真,这就是关系数据库中的数据难以互联互通的根本原因,也是关系数据库系统产生信息孤岛的根本原因。


针对此问题,“独立数据库”采取了与关系数据库完全相反的策略,想尽一切办法,彻底根除“关系”,彻底根除“数据与数据库系统中的其它表及应用程序之间的耦合关系”,“让数据独立地表达出完整的含义”,严禁数据与数据库中的其它表及应用程序存在耦合关系,让数据成为大家的系统都可以识别的数据。只有当数据是独立的、完整的,那么数据在各个信息系统之间的互联互通才会顺利,否则,在数据交换时,就要花费大量的投资,编写大量的程序来解除数据的耦合关系、解读数据的含义,犹如换车轮。


现有技术在实现结构化数据互联互通时,需要先转换数据结构、转换数据内容,或再建立新的表结构,然后才能把接收到的数据存贮到数据接收方的数据库中,这需要编写大量的程序才能实现。利用现有技术,编写不出通用的结构化数据接口软件,因为要接收100万条结构各不相同的数据时,需要在数据的接收方的数据库中再建立大量的表,甚至需要建立100万个相应的数据结构表才可以接收这100万条结构化数据并存贮到数据库中。如果这100万条结构化数据全部以万能数据结构表的形式存贮,那么,数据发送方只要利用通用的数据接口即可把数据发送到数据接收方的数据接口中,并把这100万条数据直接存贮到数据接口中的事物信息表中。


利用独立数据库所设计出的各种信息系统中的数据与数据库中的其它表及应用程序的耦合度为零,因此,当系统中的数据脱离了原来的信息系统之后,还能保持原来的含义不变,不会失真。


大数据的“拦路虎”,信息孤岛能否解决?

大数据周刊

邮箱:[email protected]

电话:010-57524293


大数据的“拦路虎”,信息孤岛能否解决?

众论大数据 引领大时代

长按二维码关注