首页 > 范文大全 > 正文

当XML存储遭遇SOA挑战

开篇:润墨网以专业的文秘视角,为您筛选了一篇当XML存储遭遇SOA挑战范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

随着ERP、CRM、SCM等信息系统的广泛应用,IT带来的是效率、便利和灵动的同时,也不得不经受企业业务性质的不断变化、各种业务不断地整合的新挑战。

今天,将面向不同业务层面的IT应用端到端地集成起来,把握业务的整体需求趋向,随需应变正在成为满足业务需求的根本要素。

能否让企业从IT应用中真正体验随需应变,将是未来痕量一套信息系统是否能真正胜任企业未来要求的标准!soa也就在当前时代要求下呼之欲出了!

随着SOA在企业IT架构中的重要性日益凸显,xml因其天然的可扩展、与平台无关性和完全兼容Unicode编码方式等特性,已然成为SOA的核心。于是对XML的各种支持的需求也才真正到来。

IT英雄们不禁要问,能否提供一种方式,使我们对于XML的使用就象是传统的SQL数据库一样便捷?能否提供一种方式,使我们对XML的操作,就象是写SQL一样简便?IT英雄们不禁把目光投向了数据库。

数据库系统当前的状态

XML数据库听起来远不像SOA这样前卫,仿佛是一门非常成熟的技术,很多厂商早已宣称对XML做了很好的支持。

但是这些数据库常常提供两种基本的数据库设计选项支持XML――将每个XML文档完整地存储为一个大型对象,或者将它“撕开”,分散存储在多个表的多个列中。同时,管理和共享XML数据的一般方法效果不好,也许文件系统可以应付简单的任务,但是在需要处理大量文档时它们就表现得不好了,并发性、恢复、安全和可用性问题变得难以管理。

很显然,这样的XML数据库是不成熟的,不能过分指望这样的XML数据库解决前现有SOA带来的新挑战

IBM DB2 9的出现

IBM DB2 9代表着26年来信息管理在IBM的技术创新,是IBM持续创新能力的最佳体现!

IBM DB2 9对XML数据提供了深入的、强大的支持,使其包含:

新的存储技术:将XML作为数据库的固有结构,可以高效地管理XML文档中固有的层次结构。

新的索引技术,可以提高在XML文档之间和内部进行搜索的速度。

新的查询语言支持(对于XQuery)、新的图形化查询构建器(对于XQuery)和新的查询优化技术。

新的管理功能,包括对关键数据库工具的扩展。

IBM DB2 9的特性

XML被整合在IBM DB2 9的各个级别上,更核心地支持了SOA/XML。

IBM DB2 9使客户机应用程序能够通过它们选择的查询语言――SQL或XQuery,同时处理表格数据结构和XML数据结构。DB2中的引擎级组件支持用这两种语言指定的查询。

从而对于一个SOA应用而言,操作XML就象是操作SQL一样简便,直接使得前文中所称述的SOA弊端不负存在。

XML固化存储特性

XML文档集合存储在DB2表中,这些表包含一个或多个新的XML数据类型的列。在创建XML列时,无须指定XML数据的内部结构。

这样做的好处是什么?

这种宽松的方式给用户提供了很大的灵活性,更容易存储包含不同属性和内部结构的XML文档集合;从而从容的处理因业务需求或业务情况变化,有时候可能缺少某些信息,导致XML文档的属性和结构不一致的情况。

使管理员能够使用熟悉的SQL数据定义语言(DDL)语句来创建存储XML数据的数据库对象。并且,利用这个熟悉的接口隐藏了一个事实:DB2以不同的方式存储 XML数据。它使用新技术来存储XML数据的层次结构,并支持高效地搜索原始XML数据的所有部分。

为了用户易于集成传统形式的业务数据和XML数据,DB2管理员可以创建同时包含传统SQL数据类型列和新的XML数据类型列的表。

强大的XML索引

基于XML的索引可以建立在该XML文本的任意元素或属性上,或者建立在两者的混合体上。新的具有XML特性的联合与赋值方法,可以有效降低数据库同一时刻下的I/O负载。

另一个与普通关系数据库索引所显著区别的是,IBM DB2 9的任意一张表中的一行可能会产生多个 XML 索引项,因为一个 XML 文档可能包含零个、一个或许多个与指定的 xmlpattern 匹配的 “节点”。与此相反,非 XML 索引对于表中的每一行只包含一项。这样可以为某些检索全文的程序显著的提高效率。

拓宽查询理念,支持XML查询

IBM DB2 9根据对XML支持的强大特性所要求,拓宽了查询理念,包含新的查询语言功能。应用程序可以自由地使用两种语言的语句:SQL或XQuery搜索数据,甚至一个查询语句可以结合使用SQL和 XQuery。这样,XML与传统的关系数据的互操作相互透明,从而对于SOA的支持变的异常突出与简化,真正变成了一款能对SOA核心支持的数据库。

IBM DB2 9还优化这样的查询。DB2有两个查询语言分析器:一个用于XQuery,另一个用于SQL。它们都生成一种通用的与语言无关的内部查询表示。这意味着用这两种语言编写的查询都会从DB2的基于开销的查询优化技术获益,这包括高效地重写查询操作符以及选择低开销的数据访问计划。

另外,DB2可以利用新的查询和联结操作符以及新的索引处理技术,为涉及 XML文档的查询提供更好的运行时性能。

管理支持

提供如此强大的功能,在管理方面肯定是引入了新的挑战,对于一个DB2管理员而言,到底是面对着一个全新的提供着挑战的数据库呢?还是面对着一个更易操作的数据库?

让我们了解一下,就可以对这一疑惑有一个全面的认识:

DB2新的XML支持包括对熟悉的管理工具的扩展,可以帮助管理员管理调整数据库。例如,备份和恢复设施都支持XML 列中存储的文档。同样,对IMPORT和 EXPORT的扩展现在可以同时在传统SQL数据和XML数据上操作。

DB2的图形化管理工具DB2 Control Center使管理员能够浏览包含XML数据的表、创建和管理基于XML的索引、发出 SQL/XML和XQuery语句以及执行许多其他管理任务。

关于性能监测,相应的DB2设施也进行了扩展来适应XML数据。这些设施包括 DB2 Snapshot Monitor,它提供对某一时刻 DB2 活动的汇总(即 “快照”);RUNSTATS,它收集DB2数据库中存储的数据的统计信息;以及EXPLAIN,它报告查询优化器为满足给定请求所选择的访问路径。管理员可以通过研究EXPLAIN的输出来判断使用了哪些XML索引。

结尾

面对当前需要全面支持XML的时代背景,IBM DB2 9版是一个“混合型”(即多结构)数据库管理系统实现。

除了支持表数据模型之外,DB2还支持XML文档和消息中固有的层次化数据模型。用户可以在一个表中自由地混合存储传统SQL数据和 XML数据。还可以使用SQL和XQuery来查询和处理这两种形式的数据。

通过在经过实践检验的数据库管理基础设施上进行扩展,IBM为IBM DB2 9用户提供了同时处理关系数据和XML数据的强大支持,为企业运算的随需应变做出了核心的支持。