您的位置:首页 > 其它

鼠鼠百科--半结构化数据

2013-10-04 12:31 183 查看
一、半结构化数据
半结构化数据有不用的定义:
1.,所谓半结构化数据是指信息和描述信息用的模式(SCHEMA)一并出现的数据,所以很多时候也称为具有自描述特征(Self-deseribing)的数据结构。
2.是一种非完全结构化的数据,称为半结构化数据.所谓半结构化是相对于完全结构化的传统数据库的数据而言。
3.每个Web站点的数据都各自独立存在没有特定的模型对其进行描述数据本身存在一定的自述性、动态可变性和一定的层次性Web的这种数据特点称为半结构化数据。






二、半结构化数据格式

1.XML
可扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML是标准通用标记语言 (SGML) 的子集,非常适合 Web 传输。XML 提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。
2.JSON
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript,
Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。

3.XML、JSON比较

可读性

JSON和XML的可读性可谓不相上下,一边是简易的语法,一边是规范的标签形式,很难分出胜负。
可扩展性

XML天生有很好的扩展性,JSON当然也有,没有什么是XML能扩展,JSON不能的。不过JSON在Javascript主场作战,可以存储Javascript复合对象,有着xml不可比拟的优势。
编码难度

XML有丰富的编码工具,比如Dom4j、JDom等,JSON也有提供的工具。无工具的情况下,相信熟练的开发人员一样能很快的写出想要的xml文档和JSON字符串,不过,xml文档要多很多结构上的字符。
解码难度

JSON只提供整体解析方案,而这种方法只在解析较少的数据时才能起到良好的效果;而XML提供了对大规模数据的逐步解析方案,这种方案很适合于对大量数据的处理,所以JSON比较适合于轻量级数据,XML比较适合重量级数据。

安全性

JSON本来是JavaScript的一个安全的子集,不会含有赋值和调用,因此在将JSON数据转换成为JavaScript对象的时候,我们包括许多Javascript库都使用Eval函数。这意味着获取的JSON数据将被解析并执行,注意是执行,尤其有一些数据是来自用户输入的话,可能会带来意想不到的安全性问题。攻击者也可以利用这点发送畸形、恶意的JSON数据,这样Eval函数就会执行这些恶意代码。而XML则相对来讲更安全一些。
流行度

XML已经被业界广泛的使用,而JSON才刚刚开始,但是在Ajax这个特定的领域,未来的发展一定是XML让位于JSON。

三、半结构化数据存储

化解为结构化数据
这种方法通常是对现有的简历中的信息进行粗略的统计整理,总结出简历中信息所有的类别同时考虑系统真正关心的信息。对每一类别建立一个子表,比如上例中我们可以建立教育情况子表、工作情况子表、党籍情况子表等等,并在主表中加入一个备注字段,将其它系统不关心的信息和已开始没有考虑到的信息保存在备注中。 优点:查询统计比较方便。 缺点:不能适应数据的扩展,不能对扩展的信息进行检索,对项目设计阶段没有考虑到的同时又是系统关心的信息的存储不能很好的处理。
用XML格式来组织并保存到CLOB字段中
XML可能是最适合存储半结构化的数据了。将不同类别的信息保存在XML的不同的节点中就可以了。 优点:能够灵活的进行扩展,信息进行扩展式只要更改对应的DTD或者XSD就可以了。 缺点:查询效率比较低,要借助XPATH来完成查询统计,随着数据库对XML的支持的提升性能问题有望能够很好的解决。

四、半结构化数据应用

数据交换与信息共享

数据交换与信息共享是半结构化数据的最重要的用途之一,半结构化数据使得不同计算机应用系统之间交换数据变得容易起来,这是因为它的可扩展特性和文档中的元数据。半结构化数据在下列领域有重要应用:EDI、Agent、软件设计元素的交换、CRM。
web应用

半结构文档无疑将成为web资源的重要组成部分,而且基于半结构化数据的文档资源使web搜索引擎的只能化变得容易起来。除此之外,半结构化数据能够用来建立HTML所不能达到的多层web应用,特别的,半结构化数据在web应用中有下列用途:集成不同数据源、本地计算、数据的多种显示、支持web应用的互操作和集成、基于语义的DataMining。

Ajax应用

Ajax技术的核心是XMLHttpRequest对象(简称XHR),可以通过使用XHR对象获取到服务器的数据,然后再通过DOM将数据插入到页面中呈现。虽然名字中包含XML,但Ajax通讯与数据格式无关,所以我们的数据格式可以是XML或JSON等格式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: