xml 数据库测试

22
XML 数数数数数 报报报 报报报 2011-11-26 报报报报报报报报报报报报

Upload: jael-mccarty

Post on 31-Dec-2015

32 views

Category:

Documents


4 download

DESCRIPTION

XML 数据库测试. 报告人:霍江涛 2011-11-26 网络与移动数据管理实验室. XML 数据库简介. XML 数据库是一种支持对 XML 格式文档进行存储和查询等操作的数据管理系统。 XML 管理系统主要有两种类型: ( 1 )支持 XML 的数据库。如 ORACLE , DB2 , SQL Server ( 2 ) Native XML 数据库。 MarkLogic,DBDOM,OrientX 等. XML 数据库概述. ( 1 ) MarkLogic - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: XML 数据库测试

XML数据库测试报告人:霍江涛

2011-11-26网络与移动数据管理实验室

Page 2: XML 数据库测试

XML 数据库简介XML 数据库是一种支持对 XML 格式文档进行存储

和查询等操作的数据管理系统。XML 管理系统主要有两种类型:( 1 )支持 XML 的数据库。如

ORACLE , DB2 , SQL Server( 2 ) Native XML 数据

库。 MarkLogic,DBDOM,OrientX 等

Page 3: XML 数据库测试

XML 数据库概述( 1 ) MarkLogicNative XML Database 的代表,该数据库广泛应用于出版行业。例如:

BusinessWeek (商业周刊)、 McGraw-Hill Education 、约翰威立父子出版公司等等。

(2)Oracle XML DBXML-Enabled Database 的代表。该数据库已经成功应用于以下企业: Northern California Power

Agency ( NCPA ) , 加州立法顾问局 ,Warner Music Group ( WMG ) (3)Sedna 开源的 XML 数据库的代表。 Sedna DBMS 是一个原生的 XML 数据库 (NXD) 管理系统 , 最早由俄罗斯科学院

系统程序研究所 MODIS 小组开发的。 Sedna 实现了 XQuery ,并且专门为这个语言开发了他的数据模型拓展技术。

(4)OrientXOrientX 是国内具有独立知识产权的 XML 数据库的代表。

Page 4: XML 数据库测试

XML 数据库测试概述通过采用一套评测基准,对 XML 数据库的基础功能进行测试。XML 数据库测试分类:文档的导入导出: 通过测试不同大小文档的导入导出时间,

分析各系统数据存取的效率及其伸缩性。功能测试:设计大约 1000 个用例,(包括: XPath,

XQurey, XQurey/Update )测试各系统对这些语言的支持程度

性能测试:设计专门的测试用例,来比较系统特定点上的性能。 事务并发测试:根据 TPox 测试基准,通过多个用户同时不

断的对数据库进行查询、插入、删除、更改来模拟并发。

Page 5: XML 数据库测试

XML 评测基准1 、 X007 基准测试2 、 Xmach-1 基准测试3 、 Xmark 基准测试4 、 TPoX 基准测试5 、 XPathMark 基准测试6 、 Michigan 基准测试

Page 6: XML 数据库测试

测试基准的比较

Page 7: XML 数据库测试

测试环境配置

Page 8: XML 数据库测试

基础功能测试概述测试选用 XMark 测试基准,测试的数据均由 XMark 数据生成

工具自动生成,数据大小有两种 33KB 和 10MB 。小数据主要用于简单功能测试,其好处是容易分析结果是否和预期一致。大数据主要用于复杂的 XQuery 查询,如连接、分组、排序等功能,大数据在一定程度上可以保证复杂查询结果不为空。

基础功能测试主要测试的是数据库系统的基本操作和对 W3C标准的支持程度。基础功能测试共有 1200 多个测试用例,基本上涵盖了 W3C 中 XPath , XQuery , XQuery/Update三方面所有的功能。通过测试用例的总体通过率,可以基本了解四种数据库对 W3C 标准的支持程度。然后通过对 XPath 、XQuery 、函数分别进行分析,了解四种数据库对各部分的支持程度。由于 XQuery/Update 是推荐标准,在此不单独分析。

Page 9: XML 数据库测试

基础功能测试用例

Page 10: XML 数据库测试

基础功能测试用例

Page 11: XML 数据库测试

总体测试结果

Page 12: XML 数据库测试

总体测试结果分析从整体状况上来看,测试项目共分为 43 类, 1210

个测试点,包含了作为 XML 数据库所应该支持的基本操作和 W3C 标准的测试点

从结果上看, Sedna 的正确结果最多达到 1156 个,整体通过率为 95.54% ,其次是 MarkLogic Server达到 1145 个,整体通过率为94.63% , Oracle XML DB达到 1079 个,整体通过率为 89.17% ,最后是 OrientX 为 81 个,整体通过率为 6.69%

Page 13: XML 数据库测试

Xpath 测试结果

Page 14: XML 数据库测试

Xpath 测试结果

Page 15: XML 数据库测试

Xpath 测试结果分析在 XPath 支持情况中,支持最好的依次是 Sedna ,

MarkLogic Server , Oracle XML DB , OrientX 。可以看出 Sedna 和 MarkLogic Server 支持率为 100% 的大类的比例要高于Oracle XML DB 。这可能是因为前两者是专门针对xml 的数据库系统,而Oracle XML DB 要建立在其复杂的关系数据库基础之上,难免会有包袱。

Page 16: XML 数据库测试

Xquery 测试结果及分析

Page 17: XML 数据库测试

Xquery 测试结果及分析在 XQuery 支持情况中,支持最好的依次是

Sedna , MarkLogic Server , Oracle XML DB , OrientX 。

XQuery 查询引擎是 XML 数据库系统的核心部分,但由于 XQuery 语言本身比较复杂, xml 数据库系统技术也没有关系数据库那么成熟,所以各个数据库对 XQuery 的支持并不完美。

Page 18: XML 数据库测试

函数处理测试结果及分析

Page 19: XML 数据库测试

函数处理测试结果及分析

Page 20: XML 数据库测试

函数处理测试结果及分析XQuery 包含 100 多个内置函数,它们主要针对字符串、数值、日期和时间的比较和相互转化,对node 和 QName 的操作,序列操作,布尔值等等。

在函数处理支持情况中,支持最好的依次是MarkLogic Server , Sedna , Oracle XML DB , OrientX 。

Page 21: XML 数据库测试

总结1 、各个 XML 数据库都有自己的优势和不足。2 、测试是一项有技术性和技巧性的工作。2 、搞研究重在做精的基础上求博。3 、要动手多实践。

Page 22: XML 数据库测试

Thank you very much!