您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > OracleXMLDB统一数据和内容
1097:OracleXMLDB简化XML管理MarkD.Drake高级产品经理讲座id:如果您想使用XML……您将需要下面的工具包–解析器–DOM实施–XSL处理器您将需要决定存储方式–文件系统–本地XML数据库–CLOB您需要新的技能……利用DOM处理XMLDOM编程复杂而冗长–每行代码花费50美元–每天只编写15行–开发人员调试和编写文档更多的编码工作意味着低质量–50%的工作放在修补bug上–即使这样—还有25%的bug永远修补不了!!!publicvoidprocessDOM(Readerreader,Writerwriter)throwsException{org.apache.xerces.parsers.DOMParserparser;org.w3c.dom.Documentdoc;org.w3c.dom.NodeListnodeList;parser=neworg.apache.xerces.parsers.DOMParser();parser.parse(newInputSource(reader));doc=parser.getDocument();nodeList=doc.getElementsByTagName(SomeNode);for(i=0;inodeList.getLength()){/*...*/}利用XMLDB处理XMLOracleXMLDB–为XML提供的简化的API–要编写的代码更少–要维护的代码更少–成本更低当必要时仍可使用更底层的API易于学习–成本更低且不失灵活性selectextractValue(object_value,'/PurchaseOrder/Reference'),extractValue(value(l),'/LineItem/@ItemNumber')fromPURCHASEORDERp,table(xmlsequence(extract(object_value,'/PurchaseOrder/LineItems/LineItem[Part/@Id=‘||:PARTNO||']')))l/OracleXMLDB概述XML类型SQLXMLXMLDB信息库XML模式OracleXMLDBOracleXMLDB概述XML支持Oracle数据库–支持主要的XML标准–本地XML数据类型–W3CXML模式数据模型–高性能XML信息库–SQL/XML操作符–XML特有的内存和性能优化支持的主要XML标准XML、命名空间DOMXPathXML模式XSL和XSLTWebDAVSQL/XML本地XML数据类型用于存储XML的抽象数据类型–本地服务器数据类型–作为表、列、PL/SQL变量使用–支持约束和引用完整性–结构化和非结构化的存储选项XML特有的方法支持–基于XPath的导航和XML内容的搜索–基于XPath的操作和XML内容的更新–基于服务器的XSLT转换–XML模式验证XML模式实例文档的验证XML类型结构化存储的基础–XML被碎片化和存储为SQL对象–DOM保真–优化的集合管理–集合上的B-Tree索引–XPath表达式的查询重写–局部更新–按需加载的虚拟DOM–从XML模式中自动导出的对象模型OracleXMLDB信息库基于IETFDAV规范的XML信息库–与文件/文件夹类似的存储和管理内容的方法–基于ACL的访问控制–基本的版本控制支持支持WebDAV、HTTP和FTP协议–利用标准工具访问和更新内容全面的SQL访问和更新可使用多种API进行编程分层索引–拥有专利的、高性能的文件夹遍历操作和查询SQL/XML互操作性从SQL查询中生成XML–从SELECT语句中生成XML文档–支持生成复杂的文档–XML类型视图提供对关系内容的XML访问XML内容的SQL查询和更新–XML内容的基于XPath的提取(SELECT列表)–XML内容的基于XPath的查询(WHERE子句)–XML内容的基于XPath的更新–XML内容上的基于XPath的关系视图XMLDB特性与XML一起使用的更高层的API,全面支持下列功能:–生成–存储和读取–创建索引、搜索–查询和更新–转换XMLDB的优点降低了应用程序开发成本–更快的开发周期–降低了编码和维护成本提供高质量代码–代码更少等同于错误更少XMLDB的优点将XML仅作为XML存储–XML和存储模型之间的自动双向映射–文档作为单个数据库对象出现–将I/O缩短为单次网络回程–按需加载的虚拟DOM,在适当的时候自动准备数据XMLDB的优点强健的开发平台简单的部署平台–消除复杂性–减少组件数集成的安全性Oracle数据库可靠性、可用性和可伸缩性XMLDB的优点提高的应用程序性能用于稀疏转换的高性能XSLT引擎XPath重写和基于文本的索引提供了高性能的查询功能XML信息库为以内容为中心和以数据为中心的应用程序提供了单个平台生成XMLSQLXML操作符使得从关系数据中生成XML更容易–SQL查询的结果集是XML文档XML类型视图允许对关系数据进行持续的XML访问XML类型视图的内容可以作为一个虚拟文档提供–通过HTTP/WebDAV或FTP直接进行访问处理XML内容目前的函数–ExistsNode()在文档内或文档间进行搜索–Extract()检索部分文档(节点集nodeSet)–ExtractValue()提取标量值–UpdateXML()更新一个已有的节点集或标量值–XMLTransform()利用XSLT进行转换–SchemaValidate()对照W3CXML模式进行验证10g新增的新功能用于修改XML内容的改进的功能–InsertXML()—在节点前增加一个节点–AppendXML()—在最后一个节点后增加一个节点–DeleteXML()—删除一个节点I18N支持–协议服务器现在对字符集敏感–客户端和数据库字符集之间的双向转换–满足日本和其它亚洲市场的需求10g新增的XPath重写XPath重写增强–为更多的XPath表达式提供了XPath重写–进一步优化已有的XPath重写–在增加或删除集合成员时提供XPath重写–响应时间显著改善–一些功能在9.2.0.4.0中得到支持10g新增的SQL/XML为XML类型视图提供的XPath重写–基于SQL/XML的视图上的重写查询–比9.2.x快1000倍XMLParse()操作符显著的性能提高–客户测试案例表明比9.2.0.1.0快100倍–不需要进行整齐打印–一些功能在9.2.0.4.0中得到支持10g新增的加载XML成功获取750M-1G范围内的基于模式的XML文档–32位Solaris—将能够进一步与64位结构一起使用–您能这么做并不意味着您应当这么做SQL加载器改善–现在支持基于模式的XMLType的直接加载10g新增的模式的发展帮助推动XML模式的发展过程基于复制的方法–将卸载数据和重新加载数据–可以使用XSL来转换数据,以使其和新的模式兼容–将保留信息库引用在以后的版本中将提供适当的改进10g新增的统一的‘C’API为XDK和XMLDB提供的统一的‘C’XMLAPI–函数处理基于文件的DOM和基于XMLType的DOM–当处理基于XMLType的DOM时使用XMLType特性10g新增的展望XQuery改善的信息库功能替代的存储模型适当的改进—需要您的的实际应用进一步提高性能利用XML的能力XML对于现有的应用程序更加高效–更廉价的开发人员–更廉价和更容易的部署–更高的性能新的应用程序类别–结合文档和数据的类似方法–充分利用数据驱动的图形—SVG–基于标记的更好的搜索ReedElsevierReedElsevier是世界领先的出版商和信息提供商–1880年创立于鹿特丹–主要的业务在欧洲和北美–全球有37000名员工ElsevierScience是技术、科学、健康领域出版物的全球市场领袖–1700多种杂志–5900万篇摘要–全球数百万用户的主要专业信息来源ElsevierScience从SGML/DTD移植到XML/XML模式将内容和元数据存储为XML利用OracleXMLDB存储和管理XML–XMLType存储–模式验证–结合SQL和基于XPath的查询确保具有可伸缩和强健的平台–数据库的优势与将XML存储在文件中Temenos打包的银行系统–GLOBUS集成财务和银行系统–在过去的三年中销售排名第一的系统–全球主要的银行关键任务–高性能–实时在线–可伸缩的结构Temenos内部基准测试HPSuper-Dome–32个CPU,168GB内存每秒800次银行操作1次银行操作–1次插入,紧接着2次更新01002003004005006007008009009:33:009:35:359:38:109:40:449:43:199:45:549:48:289:51:039:53:379:56:129:58:4710:01:2210:03:5810:06:3310:09:0810:11:4410:14:1910:16:5510:19:3110:22:0710:24:4210:27:1810:29:5410:32:3010:35:0610:37:4110:40:1710:42:5310:45:2910:48:0510:50:41Timetxns/sec05101520253035TxnspersecondActiveInjectorsdeCODEGenetics关于decodeGenetics–创立于1996年–位于冰岛Reykjavik业务焦点–医疗遗传学研究–基于人口的基因组研究–药物研发–药物开发基础架构–一流的基因型分析和生物信息学工具deCodeGenetics:应用程序GeneticSurveyServer–广泛使用调查来收集数据目标–从纸张转变为在线收集–支持编辑和数据捕获–使用XML来确保灵活性–更廉价、更快速、更准确从关系存储器向XMLDB移植–表的数量减少8倍–代码数量减少4倍–简化的查询deCODEGeneticsXMLDB简化了基于XML的应用程序数据模型之前之后纯关系型数据OracleXMLDB演示OracleXMLDB性能什么是集合集合是一组拥有相同名称和类似结构的元素LineItemItemNumber=1DescriptionDuelatIchijojiTemple/DescriptionPartId=37429125526UnitPrice=29.95Quantity=3//LineItemLineItemItemNumber=2DescriptionTheRedShoes/DescriptionPartId=37429128220UnitPrice=39.95Quantity=4//LineItem定义集合在XML模式中,集合使用maxOccurs属性来定义xs:complexTypename=LineItemsType“xs:sequencexs:elementname=LineItem“type=LineItemType“maxOccurs=unbounded//xs:sequence/xs:complexType使用集合一个典型的XML文档包含一个或更多的集合集合可能是嵌套的–集合中可能包含集合查询和更新集合提出了最大的挑战查询集合一个集合上的示例查询获取包含对“717951002372“部分的引用的每个行项目的引用和项目编号XPATH:='/PurchaseOrder/LineItems/LineItem[Part/@Id=717951002372]';selectextractValue(p.object_value,'/PurchaseOrder/Reference')extractValue(val
本文标题:OracleXMLDB统一数据和内容
链接地址:https://www.777doc.com/doc-10395 .html