和不太安静聊关联数据
2011/6/27 点击数:324
[作者] 雨禅
[单位] 带着把破伞云游四方的孤僧
[摘要] 不太安静同志发了篇博文讨论关联数据。前几天不同志还发了句牢骚,说关联数据是美国人炒概念,今天不同志开始思考关联数据,这是件可喜可贺的事情。对于关联数据这样的新鲜事物,不要轻易下结论但也不要轻易相信,认真思考悉心了解努力实验是最好的态度。
不太安静同志发了篇博文讨论关联数据。前几天不同志还发了句牢骚,说关联数据是美国人炒概念,今天不同志开始思考关联数据,这是件可喜可贺的事情。对于关联数据这样的新鲜事物,不要轻易下结论但也不要轻易相信,认真思考悉心了解努力实验是最好的态度。
在不同志的博文下,我留了一个言, 认为不同志谈的是联想数据不是关联数据, 虽然联想数据也可以看作是关联数据的一种形式,但不是主要的关联数据形式.至于很么是关联数据, K师正在准备教案,值得期待。这里我提一点自己的个人观点,仅供参考。
应该把关联数据方在Web服务这样一个大环境下理解,或者说将其放在数据网络下来理解,所谓数据网络,就是网络中的数据都是相互关联着,构成一个大的数据库。那么数据如何关联起来? 首先需要一个指针,这个指针就是URI,这就满足了关联数据的第一原则,需要特别注意的是,这个原则也是REST的第一原则。可以说关联数据和REST是一个家族的,血缘很近,两个创始人都是搞Http出身。我曾经说关联数据是REST的子集,有人不同意,但我就是这样理解的。当你将关联数据和REST联系起来,你自然会联想到关联数据本质上是一种数据服务。一说到数据服务,就存在一个语义问题,即机器如何理解。这是自然引伸到语义的描述框架,RDF啦,OWL啦都是一种语义描述框架。所以关联数据一定是一种语义数据。数据服务的最重要应用领域是数据整合,即将不同数据源的结构迥异的数据整合在一起,这种应用可能是关联数据最大的应用领域。关联数据发挥出了巨大的潜力。前些时候搞资源导航系统,试验了一下这样的数据整合,很爽,你不妨试一下。
另一个方面,既然数据都关联起来了,即他们都通过指针系统互相可以访问,同时通过语义系统使得各种数据源都是机器可理解的,那么关联数据的一个很直接应用就出现了,那就是通过现有的数据源利用关联机制去发现新的数据源,这就是你提出的联想数据。举个例子说,你找到K师的FOAF就会得到他有一个朋友叫赵亮,通过K师Foaf文件中的指示,你可以连接到赵亮的Foaf,在通过赵亮的 Foaf你会发现赵亮有个朋友姓孙名吾空,这样你就能挖掘到一个信息,即孙悟空是K师朋友的朋友,这样孙悟空和K师又关联起来了。显然这种联想型关联对搜索引擎是很常有利的。但是,如果你进一步想下去,你会发现事情不是那么简单,如果 K师友10个朋友,赵亮师也有10个朋友,那么要发现孙悟空和K师之间的关系需要扫描多少次,这是一个几何级数的数学模型,是不是?实现起来是比较复杂的。这就出现了一个架构问题,这个问题应该是关联数据实现的关键问题。
以上不系统的讨论只是个人的一些想法,K师会有权威的论述即将出来,敬请期待。最后需要说明的是,关联数据总的说来还是一个新鲜事物,正因为是新鲜事物,大家都在同一个起跑线上,大家只要投入关注就会有收获,特别是书社会的社员们更是有得天独厚的优势,因为有远洋师K师这样世界领先级专家引领,大家可以少走很多弯路。