亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

本源XML數據庫Xindice 介紹 (1.0版)

2019-11-18 11:29:05
字體:
來源:轉載
供稿:網友

    (Xindice當前的版本是1.1b4,已經做了較大改動,本文是1.0版的說明文檔譯文,僅供參考。部分改動在文中略做說明。

————譯者:ksu99)

什么是Xindice

Xindice核心服務器完全是一個設計來存儲xml數據的數據庫服務器。用術語來說,Xindice服務器正是所謂的Native XML Database(NXD)。也可以說成是無縫XML數據庫,這樣的描述可能會輕易理解一些。

這意味著使用這個服務器,你可以最大可能的使用XML工具和技術。進出服務器的所有數據都是XML。使用的查詢語言是XPath,編程API支持DOM和SAX。所有這些對于一個曾經在他們的應用中使用過XML的開發者來說,應該非常熟悉。當與XML數據和Xindice打交道時,沒有不同數據模式之間的映射。你只需要簡單的以XML設計數據,以XML存儲。

所有賦予你的可以總結為一個詞:靈活性。XML提供一種極端的靈活機制,來對應用數據建模,并在很多情況下答應你建造那些在多數傳統系統中難以建造甚至不可能建造的模型構造。這就是半結構化模型,在某些應用程序中是基本構件。通過使用一個像Xindice這樣的本源XML數據庫(NXD)存儲半結構化數據,你可以專注于構建應用而不需要擔心復雜的XML結構如何映射到底層數據存儲,或者試圖用一套嚴格的模式強制約束靈活的數據模型。

終究,Xindice是一個工具。它對某些工作來說,是合適的而對其它的就完全錯誤。它最擅長的只是存儲XML數據。實際上,這就是全部。假如你有大量的XML數據,那么Xindice也許剛好是你需要的工具。然而,假如你的數據不是XML或者你需要精確控制數據的結構,那你最好還是去使用其他的數據庫解決方案。

(譯者注:1.1版中,服務器端的安裝現在是在java servlet引擎(Tomcat)內部署一個WAR檔案。而數據庫部署在一個servlet引擎內,并答應網絡訪問。這和1.0版不同,因為1.0版有自己的服務器框架。這樣做是因為原來的服務器框架重復了servlet引擎的很多功能,而分開后使部署選項更加靈活。)

當前狀態

Native XML數據庫技術是一個非常新的領域,而Xindice更多的是一個仍在開發中的項目。服務器當前支持對格式良好的(well formed)XML文檔的存儲。這意味著對可以放進文檔集合的文檔沒有任何模式來約束。這使Xindice成為一個半結構化數據庫,并在如何存儲數據方面提供極大的靈活性,但是也意味著放棄一些通用數據庫功能,比如數據類型。[1] 在當前狀態下,Xindice已經是一個治理XML數據的強大工具。但是需要做的還很多。

本文試圖描述這些當前起作用并可以被使用的特性。請檢查README文檔,它包含許多關于工程當前狀態的信息。

注重:Xindice服務器和這個文檔都在改進中。歡迎和鼓勵任何意見。

特性摘要

文檔集合(Document Collections):文檔被存儲在可以被作為整體來查詢的集合中。你可以創建只包含相同類型文檔的集合,也可以創建一個集合來存儲所有的文檔。數據庫不介意。

XPath查詢引擎:要查詢文檔集合,你可以使用W3C定義的XPath。這提供了相當的靈活性機制,通過定位和限制返回結果樹來查詢文檔。

XML索引:為了提高大量文檔上查詢的性能,可以定義關于元素和屬性值的索引。這可以極大的加速查詢響應時間。

XML:DB XUpdate實現:當存儲XML到數據庫時,或許需要能夠在不檢索整個文檔的情況下改變數據。XUpdate是當你需要做服務器端的數據更新時使用的機制。這是一種基于XML的語言,確定XML修改并答應這些修改像應用到單個文檔一樣應用于整個文檔集合。

Java XML:DB API實現:對于Java程序員Xindice提供了一個XML:DB API實現。這個API將給XML數據庫應用帶來可移植性,就像JDBC相對于關系數據庫一樣。大部分為Xindice開發的應用將使用XML:DB API。(譯者注:在1.1版中,有一個嵌入式版本的XML:DB API,可以在不使用網絡的情況下訪問數據庫構件Xindice應用程序。這個與啟用網絡的XML:DB API實現完全兼容。)

XMLObjects:XMLObject提供一個服務器擴展機制,來為服務器增加額外的功能。它們可以用來在數據庫引擎內執行復雜的操作,以減少網絡帶寬,或者增加當前服務器上沒有的功能。(譯者注:1.1版中XMLObjects已經被刪除。)

命令行治理工具:為了幫助系統治理員,Xindice提供了一全套命令行驅動的治理工具。所有可以通過XML:DB API做的事情,也可以從命令行搞定。(譯者注:xindiceadmin工具已經被刪除。以前只可以通過xindiceadmin訪問的命令現在都通過xindice命令完成。這使服務器操作更簡單一些。命令行工具加入一個選項,答應XPath查詢使用命名空間(namespaces)規范。)

CORBA Network API:對于那些樂于使用Java語言的開發者,Xindice提供了一個CORBA API,可以用來構建應用程序。所有通過XML:DB API可用的功能,都可以通過CORBA API實現。事實上,XML:DB API是建造在CORBA API之上的。盡管多數Java開發者將永遠不需要知道CORBA API的存在。(譯者注:1.1版中,網絡訪問API是基于XML-RPC而不是CORBA。所有與CORBA相關的代碼已經從系統中刪除。系統現在完全支持UTF-8編碼。)

模塊體系結構:Xindice服務器以非常模塊化的方式構成。這使其易于增減構件以裁剪服務器,使其成為一個非凡工作平臺,或者將它嵌入到另一個應用程序中去。

數據庫結構

Xindice服務器是設計來存儲XML文檔集合的。集合可以按照層次結構來安排,與典型的UNIX或Windows文件系統相似。

在Xindice中,數據存儲基于一個亦可當文檔集合使用的數據庫實例。此數據庫實例可以包含任意數目的子集合。在Xindice的缺省安裝情況下,此數據庫實例稱為“db”,而所有的集合路徑以 /db 開始。假如想要重命名這個數據庫實例也是可以的,雖然沒有必要這樣做。

引用集合(Collections)的方式與層次式文件系統的引用相同。

1.1. 集合路徑實例

假如你在“db”下創建了一個名為my-collection的集合,其下還有一個名為my-child-collection的集合,則訪問my-child-collection集合的路徑將會是:

/db/my-collection/my-child-collection

在集合之內可以存儲若干類型的對象。你可以存儲XML文檔、XMLObject和其他集合。這些對象也分別可以通過路徑引用。

1.2. 集合路徑指定一個文檔

擴展前面的例子,在my-child-collection中增加一個名為my-document的文檔,這個文檔可以通過下面路徑引用:

/db/my-collection/my-child-collection/my-document

然而這個路徑只可以得到一個。因為你有可能在一個集合中有多于一個的同名對象[2] ,當計算一個路徑時就有個優先級次序問題。優先性依次是集合、XMLObject、文檔。這就是說,假如有一個文檔和一個集合同名,你將沒法檢索到文檔。[3]

你還可以通過指定主機和服務器端口號,來在遠程計算機上訪問集合。

1.3. 集合路徑指定一個遠程文檔

假如前面的例子在一個遠程計算機上,則路徑會是這樣子:

myhost.domain.com:4080/db/my-collection/my-child-collection/my-document

這也可以用以下的Xindice URI形式:

xindice://myhost.domain.com:4080/db/my-collection/my-child-collection/my-document

 

[1] XML模式支持將在Xindice稍后的版本中加入。模式總是可選的,但是它可以用來強制一個集合存儲特定的文檔類型,并答應數據類型支持

[2] 舉例來說,一個子集合和一個文檔

[3] 這個約束將在Xindice后面的版本得到調整



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产日韩欧美视频在线| 日韩电影免费观看中文字幕| 亚洲激情中文字幕| 欧美日韩人人澡狠狠躁视频| 国产精品久久久久久久美男| 久久精品99久久久久久久久| 日韩精品在线免费播放| 国产精品久久久久久久久久久久久久| 97碰在线观看| 欧美区在线播放| 日韩欧美国产免费播放| 久久久天堂国产精品女人| 麻豆精品精华液| 久久久久国产视频| 岛国av在线不卡| 日韩国产精品视频| 欧美伦理91i| 777午夜精品福利在线观看| 亚洲第一视频网站| 91情侣偷在线精品国产| 免费91麻豆精品国产自产在线观看| 欧美最顶级的aⅴ艳星| 91国内揄拍国内精品对白| 亚洲а∨天堂久久精品9966| 亚洲视频网站在线观看| 亚洲娇小xxxx欧美娇小| 欧美亚洲成人免费| 国产精品高潮视频| 亚洲免费一在线| 色综合影院在线| 日韩国产一区三区| 亚洲精品成人久久电影| 亚洲欧美另类国产| 久久99精品视频一区97| 麻豆乱码国产一区二区三区| 亚洲丝袜av一区| 欧美肥婆姓交大片| 国产精品美女在线| 日韩欧美在线观看| 性色av一区二区三区在线观看| 国产精品入口夜色视频大尺度| 精品一区精品二区| 综合欧美国产视频二区| 欧美在线视频网站| 欧美成人第一页| 欧美高清电影在线看| 91精品视频在线看| 国产亚洲欧洲高清一区| 一区二区三区www| 一二美女精品欧洲| 91精品国产综合久久香蕉最新版| 国精产品一区一区三区有限在线| 97av在线视频免费播放| 中国日韩欧美久久久久久久久| 97色在线视频| 日韩不卡在线观看| 欧美日韩免费在线观看| 亚洲欧美另类自拍| 国产精品av在线| 九九视频这里只有精品| 亚洲欧美福利视频| 国产成+人+综合+亚洲欧美丁香花| 久久天天躁狠狠躁夜夜爽蜜月| 92福利视频午夜1000合集在线观看| 91国产一区在线| 午夜精品久久久久久久久久久久久| 日本高清不卡在线| 国产精品视频区1| 综合欧美国产视频二区| 精品视频久久久| 亚洲经典中文字幕| 久久九九国产精品怡红院| 美女性感视频久久久| 国产成人涩涩涩视频在线观看| 亚洲成人黄色在线观看| 欧美国产一区二区三区| 精品久久久久久亚洲精品| 国产经典一区二区| 精品国产老师黑色丝袜高跟鞋| 欧美xxxx18国产| 亚洲国产91精品在线观看| 日韩国产欧美精品在线| 欧美激情一区二区三区高清视频| 亚洲最大av网站| 激情久久av一区av二区av三区| 91亚洲永久免费精品| 久久免费视频这里只有精品| 97香蕉久久夜色精品国产| 亚洲欧美日韩一区二区三区在线| 亚洲成人1234| 91亚洲精品一区二区| 国产精品91久久| 人九九综合九九宗合| 亚洲人成网站色ww在线| 日本精品视频网站| 91在线免费网站| 亚洲精品一区久久久久久| 亚洲丝袜在线视频| 日韩欧美在线第一页| 久久精品国产亚洲| 亚洲片国产一区一级在线观看| 国产视频观看一区| 久久久精品国产网站| 亚洲成人av资源网| 国产亚洲欧美一区| 亚洲三级免费看| 中文字幕精品视频| 亚洲欧美在线x视频| 日韩精品在线电影| 久久精品2019中文字幕| 少妇高潮久久久久久潘金莲| 丝袜美腿亚洲一区二区| 性视频1819p久久| 亚州av一区二区| 国产成人精品视频在线观看| 国产精品免费视频久久久| 麻豆一区二区在线观看| 成人免费午夜电影| 欧美在线观看网站| 成人国产精品一区二区| 国产精品亚洲综合天堂夜夜| 国产精品中文字幕久久久| 国产精品影片在线观看| 奇门遁甲1982国语版免费观看高清| 日韩在线不卡视频| 91在线观看免费高清完整版在线观看| 国产999精品久久久影片官网| 亚州av一区二区| 法国裸体一区二区| 疯狂做受xxxx高潮欧美日本| 欧美日韩国产综合新一区| 俺去了亚洲欧美日韩| 精品成人国产在线观看男人呻吟| 丰满岳妇乱一区二区三区| 国产精品久久久久久搜索| 精品露脸国产偷人在视频| 久久免费视频这里只有精品| 国产69久久精品成人| 日韩大陆欧美高清视频区| 成人中心免费视频| 欧洲精品久久久| 欧美激情极品视频| 国产97在线视频| 日韩www在线| 国产日韩在线亚洲字幕中文| 国产视频久久久| 亚洲国产一区自拍| 在线精品91av| 精品亚洲一区二区三区| 国产91色在线|| 日韩精品极品视频免费观看| 久久久精品一区二区| 日本精品免费观看| 亚洲天堂av在线播放| 精品久久久香蕉免费精品视频| 欧美激情一级欧美精品| 亚洲国产精品成人av| 国产成人精品免费久久久久| 亚洲欧美中文日韩在线v日本| 欧美—级a级欧美特级ar全黄| 日韩h在线观看| 91精品国产91久久久久久久久| 国产一区二区三区高清在线观看| 国产日产欧美a一级在线|