有關網格環境下的數據庫系統的探究
2024-07-21 02:32:34
供稿:網友
數據庫技術和其他計算機技術相結合,能夠產生新的研究領域。例如,數據庫技術和面向對象技術相結合就產生了面向對象數據庫;數據庫技術和網格技術相結合也就產生一個新的研究內容,稱之為網格數據庫。 網格數據庫當前的主要研究內容包括三個方面:網格數據庫治理系統、網格數據庫集成和支持新的網格應用。
網格數據庫治理系統
網格提供一個平臺,這個平臺支持系統化的身份鑒別和授權、資源發現、數據傳輸、進程創建和調度,以及跨異構平臺的動態綁定。在網格提供的這些功能的基礎上,可以構造一個安全可靠、具有自主計算能力的高性能網格數據庫治理系統。網格數據庫治理系統最終將成為網格上的一種重要資源,提供數據治理服務。
在構建網格數據庫治理系統方面,第一步的工作是提供一個中間件,將數據庫治理系統包裝成為網格服務,以便網格應用存取網格數據庫。這種做法的好處是,對已有的數據庫治理系統基本上不需要做什么改動。
進一步的工作是擴展已有的數據庫治理系統,讓它直接利用網格提供的功能來實現分布式的數據庫和相關的網格服務。下面是一些擴展已有數據庫治理系統時可做的工作:
●在網格上,用戶只需要登錄一次,就可以使用網格上所有可用的資源。網格數據庫治理系統需要支持網格中這種一致性的身份鑒別和授權機制。
●很多網格應用程序在提交任務給數據庫治理系統后,需要收到一個任務完成的通知,解決這種訂閱/發布問題需要結合網格數據庫治理系統的觸發器機制和網格中的通知服務。
●在網格中,查詢結果可以被緩存以便傳送給第三方,這意味著,在一個不確定的時間內,網格數據庫治理系統必須保留結果,然后利用網格數據傳輸機制傳送查詢結果到第三方。
●在網格中,分布式查詢處理可以利用網格的資源發現機制了解網絡的狀態、獲得合適的資源來運行分布式查詢或存儲中間結果。
●網格數據庫治理系統應提供資源預留功能,以便參與網格中的進程調度。
●網格數據庫治理系統應該能為網格記賬和支付標準提供必要的信息,以便用戶為資源的使用付費。
有些網格問題不是通過簡單地擴展已有的數據庫治理系統就能夠解決的。下面舉幾個例子來說明這一點:
●網格當中計算和數據資源之間耦合得很緊密,這對于數據庫的查詢優化是一個挑戰。計算任務在哪里執行、需不需要遷移、數據怎樣存放、存放在哪里、如何調度在數據上的操作和計算任務、短期優化還是長期優化等等,都需要在查詢優化時給予一個整體的、多角度的考慮。
●在網格中,當數據的規模增長到一定的程度時,傳輸在這些數據上的計算代碼會比傳輸所有數據更為經濟。數據上的計算比數據庫支持的數據查詢要復雜,它可以生成大量的中間結果,需要大量的處理器和在多個網格結點間傳輸大量的數據。對于數據上的計算還需要進行監控。當前的數據庫治理系統并未預備好成為這種大型計算的宿主,也不支持所需要的監控接口。
●傳統的數據庫治理系統是一個復雜的系統,運行時作為一個整體消耗大量的資源。網格數據庫治理系統最好能由一些組件構成,這些組件可以根據需要來組合完成數據庫治理系統的部分或者全部功能。這樣做的好處除了可以降低資源消耗,更重要的是,使得在整個系統規模的基礎上優化使用數據庫資源成為可能。
●在網格中使用注冊的方法來發布和查找資源。數據庫里面存儲有大量的元數據,手工注冊這么多元數據是不可行的,但是又如何來完成自動注冊呢?自動注冊的問題不在于注冊這些元數據到網格中,而在于注冊時如何保證這些元數據能為第三方所理解。這個問題也是網格數據庫集成時需要解決的問題。
網格數據庫集成
因為網格的主要目標是支持在共享資源上的協同工作,所以網格數據庫集成是目前網格數據治理的研究熱點。網格數據庫集成就是使用兩個或多個網格數據庫中的信息,并使用這些信息構建一個大的數據庫。
目前有三種網格數據庫集成策略:
●虛擬數據庫 虛擬數據庫是一個聯邦數據庫,它只有一個聯邦模式,所有的用戶都無法覺察到多個獨立的數據庫存在的事實。虛擬數據庫在概念上是受歡迎的,但是難以實現。在構造虛擬數據庫時,需要考慮以下幾種透明性:異構透明性、命名透明性、屬主和費用透明性、并行透明性和分布透明性。
●定制集成 這種方式是指由應用程序自己完成數據庫集成。例如,在有的科學應用程序中,開發人員自己找到相關的數據源,然后將集成任務劃分為查詢、要執行的程序、中間數據源的構建、顯式的數據傳輸和數據變換,以及存儲結果等等。網格數據庫治理系統應該提供對這種集成方式的支持,使之降低成本、減少時間耗費和錯誤的發生。
●增量集成 虛擬數據庫是一個理想目標,定制集成又過于注重細節,增量集成居于兩者之間。在增量集成中,開發人員無須完成集成的每一個細節,高級的數據存取和集成組件可以自動完成一些后期的集成步驟。
元數據治理在網格數據庫集成時扮演著要害的角色。網格數據庫中與集成有關的元數據包括這樣幾類:技術元數據定義數據源所在的位置、物理數據的結構和組織形式、數據的存取方法和傳輸方式、以及數據的歷史和屬主等等;上下文元數據定義命名方式、術語和本體,它遵循約定的語法和語義,可以提高數據的質量和可靠性;派生元數據定義由其他數據派生的數據的含義和上下文組成;映射元數據定義上下文元數據定義間以及上下文元數據和技術元數據間的等價性。
元數據在數據庫集成時引發了很多問題。例如,不同的數據庫系統具有不同的元數據模型,標準的元數據定義方法肯定有利于網格數據庫集成。目前,全球網格論壇數據領域的DFDL(Data Format Description Language)工作組在做的一件事,就是定義一種基于xml的語言來給出數據庫中元數據的標準表示。而正在研究中的語義網格,也將能有助于解決涉及元數據語義方面的問題。
支持新的網格應用
應用能有力地推動技術的發展。研究對于數據庫領域來說相對比較新的網格應用可以有力地推動數據庫技術的發展。數據流處理、信息檢索和科學數據分析等都是網格應用。其他的網格應用還有網格數據挖掘、網格計算機集成制造系統、網格數字圖書館等。目前國內外開展的大部分的網格項目都是網格應用項目,而且多數是服務于科學研究的需要。網格應用會給傳統的數據庫技術帶來一些新的問題,下面以網格上的科學研究(也被稱為e-Science)來說明這一點。
在網格上的科學研究中,對數據的使用有兩個重要的方面:一方面,數據是數據挖掘和假設檢驗的信息源;另一方面,共享數據是科學家們協作的基礎。網格環境下的數據庫治理系統要想成功地服務于科學研究,就必須充分考慮科學研究活動中數據治理的非凡需求。以下是一些例子:
●歸檔 科學研究中的研究結論是在特定時間、特定狀態的科學數據庫的基礎上得到的。假如要驗證一個科學結論,就需要將科學數據庫的狀態恢復到得出結論時的特定狀態。因此,需要研究支持快速恢復所有先前狀態的歸檔方法。
●注解 注解關聯新的數據和已有的數據,它可以自動產生,例如自動記錄數據的派生關系,也可以由科研人員手工添加以記載他們對數據的理解。無論以哪種方式生成注解,帶來的問題都是注解需要以合適的方式進行治理以便共享。
●新的存儲結構和索引 科學研究中要處理海量的科學數據,而且在檢索數據時多使用近似匹配,需要研究能夠充分利用網格優點的新的科學數據存儲和索引方法。一個簡單的例子是,在計算能力大的網格結點上構造索引,然后將這些索引分發到計算能力較小的網格結點上以便做并行分布式數據查詢。
四個重點研究趨勢
分析國內外所做的與網格環境下數據庫系統有關的研究,有以下幾個研究趨勢值得引起關注:
● 將制定數據庫存取與集成的標準。網格非常強調遵循標準。做與網格相關的研究,也應該樹立標準先行的觀念。雖然網格數據庫集成所涉及的問題并未完全解決,但是目前已經有了網格數據庫存取與集成的標準草案,而且根據這個草案實現了實際可用的軟件系統。雖然不排除標準草案不能最終成為標準的可能性,但是很多相關的研究已經以這個標準草案為基礎展開了。
● 將更多地研究網格數據庫治理系統。目前實現網格數據庫存取和集成采用的是中間件的方法,這是一種簡捷的方法,預計未來數據庫治理系統將會更直接地支持網格。我們認為,將來的網格數據庫治理系統有三個特點:高性能、全共享和零治理。高性能是基于網格強大的并行計算能力。全共享是指不僅要共享網格數據庫治理系統治理的數據資源,還要共享網格數據庫治理系統本身,即網格數據庫治理系統本身也成為具有良好互操作性的網格資源。零治理也就是自主計算,網格數據庫治理系統將充分適應網格動態和自治的特點,無需人工干預安全可靠地運行。
●繼續發掘網格應用的新需求。網格上的科學研究有很多的數據治理問題需要解決,其中有的問題不是簡單地將數據裝入數據庫就能解決,它們是新的問題,能夠推動數據庫技術的發展。另外,將原來非網格的應用移植到網格環境下時,也會出現一些新的問題,對于這些問題也應該去分析和研究。
●在網格環境下開展數據庫新技術的研究。有一些數據庫新技術的研究,假如放到網格環境下來做,會激發新的問題解決思路。中國人民大學數據庫與知識工程研究所展開了網格環境下數據庫信息檢索新技術的研究,目前已經取得了部分研究成果。他們的這種研究工作具有很強的創新性。