發布時間:2023-03-23 15:14:54
序言:寫作是分享個人見解和探索未知領域的橋梁,我們為您精選了8篇的數據庫論文樣本,期待這些樣本能夠為您提供豐富的參考和啟發,請盡情閱讀。
關鍵詞:資源整合異構數據庫互操作聯邦式數據庫
1引言
異構數據庫互操作問題作為數據庫領域的研究熱點和難點課題,在國內外的學術界和工業界都引起了廣泛的關注。自20世紀80年代以來,國外許多公司和科研單位對異構數據庫的集成進行了大量研究,取得了不少成果,但國內對異構數據庫集成的研究還處于開始階段。
2異構數據庫互操作的概念
異構數據庫(HeterogeneousDatabase)集成是數據庫技術從完全集中到邏輯集中、物理分布(傳統分布式數據庫)乃至邏輯分布、物理分布(異構數據庫)這一發展過程的結果,也是兼顧已有系統自治性并實現新的數據共享這一現實需求的有效手段。
異構數據庫的異構特征包括兩個級別:系統一級的異構和語言一級的異構,主要體現在以下幾個方面。
(1)計算機體系結構的異構:各個參與的數據庫可以分別運行在大型機、小型機、工作站、PC或嵌入式系統中。
(2)操作系統的異構:各個數據庫系統的基礎操作系統可以是Unix,WindowsNT,Linux等。
(3)數據庫管理系統的異構:一種是數據庫概念模式的異構:有層次、網狀、關系和面向對象4種;另一種是數據庫物理模式的異構:指概念模式相同,但數據結構不同,比如Oracle與SQLServer同屬關系型,但結構不同。
異構數據庫互操作的實現包括三個功能要素:(1)為用戶提供功能強大且操作靈活的互操作可視化界面,通過它用戶可以直觀地對多個異構數據庫進行透明訪問;(2)提供高級語言數據庫訪問調用級接口,至于調用級接口的實現層次可由設計者視具體清況而定;(3)支持環境開放性,可能的話還應該支持實現語言開放性。
異構數據庫系統的目標在于實現不同數據庫之間的數據信息資源、硬件設備資源和人力資源的合并和共享。異構數據庫系統集成就是要將數據庫系統的不同,操作系統的不同,操作平臺的不同或者底層網絡的不同進行屏蔽,使得用戶就可以將異構數據庫系統看成普通的數據庫系統,用自己熟悉的數據處理語言去訪問數據庫,如同訪問一個數據庫系統一樣,對其進行透明的操作。
3實現異構數據庫互操作的途徑
面對異構數據庫的互操作需求,主要從兩個方面同時進行努力:一是建立標準,即建立統一的數據庫規范,消除由于標準的不完善而造成的各數據庫系統間的差異;二是構建異構數據庫互操作平臺,實現對多個異構數據庫的透明訪問。
隨著對數據庫互操作問題的深入研究,基于不同角度,許多研究者提出了可行的異構數據庫互操作途徑,這些途徑在實現互操作的深度、廣度和高度上各不相同,都有各自所適應的特定環境和需求。從異構數據庫的核心思想出發,把實現互操作的途徑歸納為兩大類。
3.1系統級異構互操作
對于DBMS系統一級異構的網絡環境下的數據庫互操作,主要有四種實現途徑。
(1)數據庫網關(DatabaseGateway)
數據庫網關是一種中繼器,它能提供應用級的異構數據庫集成的手段。網關的主要作用是轉換和通信。
數據庫網關可以建立比較穩定和透明的數據庫互操作,但是其缺點也較為明顯。諸如不關心如何屏蔽數據庫之間的異構性,不支持事務處理,資源冗余,用戶受限于數據庫廠商,不能任意選擇客戶機平臺及目標數據庫等問題。
(2)公共協議/數據轉換協議技術
公共協議是異構數據庫進行通信時采用的公認的數據協議,即公認的系統間傳遞SQL請求和結果的形式。最常見的協議是ANSI/ISO的關系數據存取(RDA)標準、SGA(SQLAccessGroup)規范和IBM的分布式關系數據庫結構(DRDA)。與數據庫網關相比,公共協議更具有可擴充性和開放性,能較好地實現異構數據庫的透明訪問、支持多種網絡協議和多種客戶平臺,是實現異構數據庫互操作的有效途徑之一。
公共協議/數據轉換協議的缺點是協議本身的低效率帶來的速度問題。
(3)公共編程接口
公共編程接口包括客戶應用編程界面(CAPI)和服務器應用編程界面(SAPI)。CAPI是一組過程庫,通常駐留在客戶端,通過裝載后端專用的驅動程序訪問不同的數據庫。SAPI提供一個應用編程界面,控制服務器與客戶應用請求和目標數據庫之間的交互。如Microsoft的ODBC、Oracle的SQL*NET以及IDAPI。其優點有:由于提供了統一的調用級接口,使用戶免除了應用程序隨數據庫改變而改變的痛苦;通過API可使應用程序直接操縱數據庫中的數據。數據庫訪問API的缺點是:針對每一個數據庫都需要有一個與其對應的驅動程序;由于不同的驅動程序所支持的數據類型和對數據的操作都不相同,其完全透明地訪問異構數據庫的能力有限;實現效率過分依賴于驅動程序,而驅動程序將標準語法轉換成相應數據庫的命令語法要花費大量的時間。
(4)中間件技術(MiddleWare)
中間件是處于應用程序及應用程序所在系統的內部工作方式之間的軟件,它的基本思想是在各后端數據源和前端應用程序之間建立一個抽象層。把應用程序與系統所依附軟件的較低層細節和復雜性隔離開來,使應用程序開發者只處理某種類型的單個API,而其他細節則可以由中間件處理。這樣就使系統對每個不同數據源的操作變成對單一的中間件的操作,而后再對中間件進行異構處理。使用中間件技術解決異構數據庫集成的問題,將會給系統集成帶來很多的好處。這是因為中間件不僅能夠使得前端用戶訪問后端的異構數據庫實現透明化,并且保證了訪問接口的開放性,這樣可以使系統在以后功能上的擴展更加方便。通過中間件來訪問數據庫的另一個好處就是所有的客戶端的請求都發送到了中間件上,減輕了數據庫服務器的負擔,保證了數據庫服務器的性能不會降低。同時,中間件的采用極大地提高了系統的可維護性,在系統內部的某個邏輯發生變化時,只要改變中間層的相應處理程序,前臺用戶界面不需要做任何的改動,這樣就大大降低了系統維護的費用。
3.2數據結構與語義級異構互操作
目前,對于數據結構和語義一級異構的數據庫互操作的研究有緊密耦合和松散耦合兩種思想,具體體現于多數據庫系統、聯邦數據庫系統和分布式數據庫系統三種方法。
(1)多數據庫系統
所謂多數據庫系統就是一種能夠接受和容納多個異構數據庫的系統,允許各個異構數據庫的“自治性”。多數據庫系統是一個廣義的概念,是相對于如集中式數據庫系統或分布式數據庫系統那種邏輯上具有同一管理系統而言的,它以多元和分布為主要特征。多元是指它多個彼此區別的集中式或分布式數據庫系統;分布則是指數據分布在不同場地的數據庫系統中,由各自的管理系統進行管理。
多數據庫技術的目標是為在多個數據庫之間實現互操作,解決數據庫資源共享找到一種技術途徑。一般采用分布、異構、自治三個特性作為尺度來刻畫多數據庫系統。使用這種方法,用戶需要顯式地指明所要訪問的數據庫。多數據庫系統采用自下而上的方法來實現。
(2)分布式數據庫(DistributedDatabase)
分布式數據庫的基本思想是拋棄原有的數據庫系統,在網絡環境下建立分布的數據庫系統,在體系結構、事務處理模型等方面重新設計從而解決信息共享與互操作問題。分布式數據庫系統分為同質分布式數據庫和異質分布式數據庫。像Oracle、Sybase、Informix等都是同質分布式數據庫系統,這類系統的實現相對來說比較容易一些。異質分布式數據庫管理系統大多是在已有的一些數據庫管理系統的基礎上實現的。
(3)聯邦式數據庫(FederatedDatabase)
聯邦式數據庫系統是網絡技術和分布式數據庫技術發展的必然結果,它是由一組能協調工作,又可以獨立自治的部件數據庫組成。它可以是原先不分布的,又可以是分布的,具有分布性、自治性、異構性三大特性。
聯邦式數據庫與分布式數據庫系統的區別在于:分布式數據庫系統雖然在物理上是分散的,但因為有統一的數據模型及全局數據模式,所以它在邏輯上卻是集中的,因此用戶感覺到的是一個完整的數據庫。顯然,這種系統可用于某個專用領域的系統,但不適于不同領域間的異構系統的集成。相反地,聯邦式數據庫系統是由在不同結點上松散耦合分布的異構成員數據庫構成,各聯邦成員間的一種松散結合。構成聯邦成員的可以是一個集中式數據庫,也可以是一個分布式數據庫,它們可以根據需要(按某種組合)加邦或者根據需要退出聯邦。聯邦式數據庫沒有全局模式,各子系統(即聯邦成員)按自己的需求建立各自的數據模式。其成員之間的數據共享關系,通過由協商確定的輸入/輸出模式來建立,單個成員有權拒絕或允許其它成員結點對它的訪問。因此,它能夠支持多庫系統的分布性、異構性和自治性,使之產生滿意的集成。超級秘書網
異構數據庫的互操作技術使得數據庫在原有技術領域發揮重要作用的同時,在未來新的應用領域也有著重要的影響,如地球觀測系統EOSDIS、電子商務、保健信息系統、數字出版、協同設計等領域。
參考文獻
[1]薩師煊,王珊.數據庫系統概論.北京:高等教育出版社,2000.2.
[2]張水平,萬映輝等.異構數據庫的集成與互操作.計算機應用研究,2000(1).
[3]鄭振楣,于戈等編著.分布式數據庫.北京:科學出版社,1998.
[4]劉艷梅.基于COM/DCOM組件標準實現異構數據庫的聯合使用:[博士學位論文].北京:北京理工大學,2000.
[5]唐巍,周俊林,李曉.異構數據庫集成方法初探.計算機應用研究,1999(8).
[6]王艷君,王運格,吳麗紅.異構數據庫間數據集成的方法.煙臺師范學院學報,1999,Vol.15(4).
目前,著名數據庫管理系統有Oracle、Sybase、Informix、Microsoft、MicrosoftAccess、VisualFoxPro等,這些產品各以自己特有的功能,在數據庫市場上占有一席之地。下面簡要介紹幾種常用的數據庫管理系統。
1.Oracle。Oracle是一個最早商品化的關系型數據庫管理系統,也是應用廣泛、功能強大的數據庫管理系統。Oracle作為一個通用的數據庫管理系統,不僅具有完整的數據管理功能,還是一個分布式數據庫系統,支持各種分布式功能。Oracle使用PL/SQL語言執行各種操作,具有可開放性、可移植性、可伸縮性等功能。
2.Sybase。最新版本的SybaseAdaptiveServer與以前的版本相比,具有更豐富的功能設置,Sybase比較強大的地方在于它對資源的低占有率上。在這一方面,Sybase15還引入了新的“專利查詢過程技術”,顯示了增強的性能和降低的硬件資源消耗。
3.MicrosoftSQLServer。MicrosoftSQLServer是一種典型的關系型數據庫管理系統,可以在許多操作系統上運行,它使用Transact-SQL語言完成數據操作。由于MicrosoftSQLServer是開放式的系統,其它系統可以與它進行完好的交互操作。
4.MicrosoftOffice。作為MicrosoftOffice組件之一的MicrosoftAccess是在Windows環境下非常流行的桌面型數據庫管理系統。Access既擁有用戶界面(VB可以用來開發用戶界面);也擁有邏輯、流程處理,即VBA語言(VB也可以用來做邏輯處理);又可以存儲數據,即在“表”中存儲數據。使用MicrosoftAccess無需編寫任何代碼,只需通過直觀的可視化操作就可以完成大部分數據管理任務。在MicrosoftAccess數據庫中,包括許多組成數據庫的基本要素。這些要素是存儲信息的表、顯示人機交互界面的窗體、有效檢索數據的查詢、信息輸出載體的報表、提高應用效率的宏、功能強大的模塊工具等。
5.VisualFoxPro。VisualFoxPro是Microsoft公司VisualStudio系列開發產品之一,簡稱VFP是Xbase數據庫家族的成員,可以運行于Windows9X/2000和WindowsNT平臺的32位的數據庫開發系統。VisualFoxPro提供了一個功能強大的集成化開發環境,采用可視化和面向對象的程序設計方法,使數據管理和應用程序的開發更加簡便。VisualFoxPro是數據庫管理軟件,可實現數據與應用程序獨立。
二、如何選擇適合自己的數據庫軟件
1.按性能應從以下幾個方面予以考慮:
(1)構造數據庫的難易程度;(2)程序開發的難易程度;(3)數據庫管理系統的性能分析;(4)對分布式應用的支持;(5)并行處理能力;(6)可移植性和可擴展性;(7)數據完整性約束;(8)并發控制功能;(9)容錯能力;(10)安全性控制;(11)支持漢字處理能力。
2.按需求來選擇
選擇一個數據庫的主要理由就是它的功能是否可以很好地支持你的應用程序。人們通常使用數據庫來完成的任務有:支持Web、事務處理、文本搜索,有的情況下復制也是一個重要的要求。在事務處理方面,Oracle看上去更有領先優勢,接下來是微軟的SQLServer。沒有一個開源數據庫具有可以與Oracle相媲美的事務處理功能。
3.按易用性和管理來選擇;
4.按支持性來選擇;
5.按成本因素來選擇。
三、結論
Oracle是商業數據庫的代表,具有非常豐富的功能、廣泛的平臺支持和大量的附加功能。目前Access更常用一些,Access不是一種存儲格式,是一種軟件。ACCESS這個軟件本身就具有開發者使用的界面和適合于“最終用戶”的界面。但學習FoxPro可為學型數據庫管理軟件大典基礎。微軟的SQLServer只可以運行在其Windows操作系統平臺上。不過由于Windows操作系統的廣泛普及,缺乏對其他系統的支持并沒有阻擋SQLServer的市場份額的增長。SQLServer是真正的中大型數據庫,VFP是桌面數據庫,使用方便、易學,但實際上犧牲了真正數據庫的一些功能,如安全性;此外,VFP既是數據庫又是編程語言(開發工具)。SQLServer是中大型數據庫,VFP是帶有自身數據庫的編程語言。
總體來說,選擇什么樣的數據庫要看你的應用程序的需要。如果它是以閱讀數據庫為主的Web應用,MySQL無疑是最佳選擇。而如果需要那些事務處理和復雜的數據庫功能,那么可選擇Oracle和微軟的SQLServer。如果你需要一些商業數據庫的高級功,但又不想支付授權費用,那么可以考慮PostgreSQL或Ingres。對于嵌入式數據庫應用,MySQL和Sybase所占有的系統資源最少。總之,最適合的才是最好的!
參考文獻:
[1]劉守根.數據庫管理系統的現狀和發展方向初探.內江科技,2006,(2).
[2]陳業斌.分布式數據庫管理系統的設計與實現.安徽工業大學學報(自然科學版),2005,(3).
[3]姬志剛.計算機、網絡與信息社會.科技咨詢導報,2006,(20).
[4]薛向陽.數據庫管理系統的開發與程序的設計.渭南師范學院學報,2005,(2)
[5]竺洪平.數據庫管理系統的設計與程序的開發.中小學電教,2005,(6).
本文以面向文檔的NoSQL作為數據持久層,面向文檔的NoSQL數據庫的數據結構設計相對于關系型數據庫來說容易許多,在對數據進行查詢、數據庫操作接口方面都有很大的優勢]。因為面向文檔的NoSQL數據庫不支持多張表的JOIN操作,因此在對面向文檔的NoSQL數據集合進行設計的時候需要考慮到這方面的因素。本監測系統主要的業務功能可以分為3個模塊,分別是小區信息查詢模塊、報表統計模塊和用戶、終端管理模塊,因此,數據集合的設計同樣從這三個方面進行設計。各個數據集合之間的關系如圖1所示。考慮到在對數據表進行設計所依據的原則基本一致,因此以下僅對小區信息查詢模塊的數據表設計進行著重分析。設計數據模型需要結合系統的特點進行分析。此系統主要實現的功能是對小區天線參數信息進行保存、管理,并以友好的界面展示給用戶,并響應用戶的各種操作。因此,在大部分的操作中,存儲天線實時參數的ANTENNAARGS表會產生大量的插入操作,本文根據各個表的不同讀寫比進行了設計,如圖2所示。本文將天線表、區域表以內嵌的形式放入了小區表,將天線參數表設計成單獨的集合,并以引用的方式指向了小區表主要是考慮到天線參數集合是被訪問最頻繁的表,會產生大量的讀寫操作,因此在小區集合與天線參數集合之間采用的是范式化的模式。其中,天線工參表(ANTENANARGS表)用來存儲從各個采集終端傳輸至管理系統的小區天線實時數據信息,具體如表1所示。小區信息表(CELL表)用來存儲各個小區的地址、天線相關參數詳細信息,如表2所示。除了上述表之外還有采集終端表(TERMI-NAL)、天線信息表(ANTENNA)和告警表(ALARM-REPORT)等。數據庫運行時,自動將所對應的數據存入相應表中。
2數據庫自動分片設計
管理系統在運行中會產生大量的寫操作,進而帶來頻繁的磁盤I/O操作,在大數據下,最好采用將數據庫分布在多臺服務器上,即分片[7]。本文采用Auto-Sharding(自動分片)及Replic-Set(復本集)相結合的方式來減輕單個數據庫服務器的負載,即在每臺Server上各自運行一個實例,組成一個Replic-Set,最后再各運行一個實例,組成ConfigServer。直接執行Addshard操作即可增加分片以緩解服務器的壓力,實現動態擴展。分片的實現重點在于片鍵設計。本文將保存天線參數信息的集合聲明了一個復合片鍵{Lacci:1,Day:1}。當來自不同的小區(可以根據Lacci進行判斷)向集群系統插入數據時,可以預計到在大部分情況下,同一小區的數據會落在單個塊或片上。
3數據庫查詢的實現
數據查詢功能為本數據庫設計的重要功能之一。數據庫將小區信息、天線參數等相關的數據信息根據用戶的要求,以界面或報表的形式全部或部分的顯示給用戶。基于本數據庫的設計,用戶通過數據查詢菜單進入相應查詢界面,獲取小區信息、終端信息及告警信息等。實現“天線工程參數查詢”功能的工作流程如圖3所示。為了實現小區天線參數查詢功能,客戶端需要向數據庫發送2次請求,用戶根據需求,向控制器發送查詢請求,控制器處理查詢命令,對相應的小區進行信息查詢,待小區返回信息后,將用戶的查詢命令發送至對應小區,根據需求讀取有用信息,并返回給用戶。跟關系型數據庫相比,由于省去了大量的多表連接操作,實際上查詢的效率要高于基于關系型數據庫的多表連接查詢。查詢工作的SQL語句如下。
4數據庫備份與恢復
數據安全在數據庫設計中有很重要的地位。在各種意外情況下,如計算機硬件故障等,對數據庫進行備份和恢復能夠保障數據的完整性和安全性,使得數據損失降到最小[8]。本數據庫設計的備份選用的是副本集的方式[7]:在主節點上進行操作,寫入的數據被一步地同步到所有的從節點上,并從主節點或從節點上讀取數據,如果主節點由于某些原因斷線,會自動將一個從節點提升為主節點。在查詢分析器中運用SQL語句完成數據庫的備份和恢復。在數據庫管理界面中,用戶通過數據庫備份與恢復功能進行相應操作,確保數據的正確行和完整性。
5結束語
【論文摘要】本文就高校建設專業特色數據庫的方案、內容、服務以及注意的問題進行了研究和闡述。
隨著我國高等教育體制改革進程的加快,我國原有高教體制上存在的條塊分割、專業單一、低水平重復辦學的弊端被逐漸打破。通過高校間的合并、重組,各高校都相應調整了專業結構,加強了重點學科建設,增強了自身競爭和辦學優勢,突出了辦學特色,相互之間形成了學科交叉、優勢互補的局面。而各高校圖書館為適應和配合學校的這一系列轉變,必然相應地加大對重點學科特色專業文獻資料的收藏和開發力度,這也使高校圖書館之間形成了各有所重、各有所長、各有特色的局面。而另一方面,當前各高校的網絡化程度已相當高,校園網、教科網、因特網已相繼開通使用,而且部分省市已經準備在本地區高校圖書館之間架設光纖,把各館相互連通,用于館際文獻傳輸。如何更好地利用當前先進的網絡技術、信息技術,使那些內容豐富、各具特色的館藏文獻充分發揮它們的價值,做到館文獻資源共享、優勢互補,是值得我們認真研究和巫待解決的問題。高校圖書館專業特色館藏數據庫的建設,為此提供了一個很好的解決途徑。
1建庫的方案及原則
1.1建庫的方案
目前,高校圖書館已經開始建設或準備建設各自的全文數據庫。在建設過程中大都缺乏組織機構的統一規劃和協調分工,數據庫的建設停留在各自為政、自建自用的狀況。這種各自為政的狀況以及各館在技術、資金、人員、管理等方面的原因,造成了大量低水平的重復投資、重復開發,不僅人力、物力、財力浪費嚴重,而且使數據庫普遍存在結構單一、標準不統一、涵蓋面窄、內容重復、共享度低、通用性差的問題,這對圖書館網絡化服務水平的提高及文獻資源共享的實現起了一定的阻礙作用。因此,我們在建庫時,首先要考慮到建庫的方案問題,是各館獨立開發還是聯合協作開發?本人認為專業特色數據庫的建庫方案可以參考目前各地區在建設的CALIS聯合目錄數據庫的方案,走聯合開發的道路,采取地區網絡聯合數據庫的方案。首先,建立本地區的組織協調機構,實行“統一目標、統一規則、統一標準、統一管理”的模式。在對各院校學科特色和館藏特色進行調查研究后,對其數據庫開發進行統一指導和協調。具體操作中可把學科門類分為幾大塊,如理工、財經、醫藥、農林等等,然后再由幾個同類型院校共同承擔該學科數據庫的建設.當然,其中還需相互分工,各有所重。其次,各館應打破原有的封閉現象,改變以往各自為政、孤軍作戰、小而散的建設方式,在組織機構的指導下相互聯合、有計劃、有分工地共同開展建庫工作,對信息資源進行有效配置和可持續的開發。各館在建設各自所承擔的特色數據庫的過程中,則可按照分工要求自行開發,進行建庫的設計、源文獻的收集整理、文獻的數字化處理、提供應用服務的方式。當然,在聯合建庫的形式上還可參考國外的一些聯合建庫模式。
1.2建庫的原則
1.2.1實用性原則
專業特色數據庫的建設要考慮其是否具有實用價值、需求有多大、投人和產出是否相宜,即是否具有良好的社會效益和經濟效益,不能盲目上馬。因為特色數據庫的建立從其目的來說是為了更好地發揮圖書館的功能和特色優勢,使之產生良好的效益,充分體現圖書館存在的價值。因此,專業特色數據庫的建設要在充分的調查研究的基礎上進行。
1.2.2趨勢性原則
建立專業特色數據庫要順應專業學科和數據庫本身的發展潮流,包括國內與國際的發展趨勢。如:規模、形式、多媒體化、網絡化等。把握這一原則可以讓我們有更好的發展空間,尋找到適合我們自身特點的位置,避免一些不必要的失誤。
1.2.3共建共享原則
即聯合開發、資源共享。
2專業特色數據庫建設的內容
各高校館豐富的特色館藏是專業特色數據庫的主要信息源。經過長期的學科建設,各校在自己的重點學科領域已顯示出獨特的優勢。各館同時也收錄了大量相關文獻,并且重點收藏、重點建設、優先投人那些專業性、學術性、權威性的文獻資料,使之盡可能的豐富、系統、完整,形成各館的特色館藏。
2.1專業文獻資料
內容包括本專業的國內外核心期刊、科技期刊會議錄、其他報刊和內部報刊中有學術價值的本專業文獻,以及經過加工整理后的網上文獻資料。
2.2法規、專利、標準
主要包括國際上各行業及國際組織頒布的最新標準,國家頒布的有關政策法規索引,國家頒布的各行業標準、產品標準及國內外的專利文獻。
2.3專家科研成果
本學科著名專家教授的研究方向、研究狀況、研究成果和特色。主要應收錄其發表在核心報刊中的論文、研究交流報告、學術演講報告等文獻群體。
2.4學位論文
博士、碩士學位論文對于相關學科的研究開發具有重要的參考價值,但它的分布較為分散,讀者難以查找,故應予重點收錄。
2.5學科綜合信息
系統全面地反映學科信息,展示國內外科學技術發展動態和科研成果.如:863計劃項目、國家自然科學基金項目、省市重大攻關項目、工程應用和設計項目,目前最新的具有影響的各種科技產品、近年來有關學科已完成的成果及獲國家和省市的科技獎的科研項目等。
在對數據庫文獻源的收錄過程中還要注意它的時效性與過期可獲得性,要對文獻源進行充分的分析研究,嚴格的收集、加工和篩選,為讀者提供更新更多、更準更全的文獻數據。
3良好的服務功能
特色數據庫的建設不僅僅是簡單地把傳統紙質和其鴿載體形式的文獻數字化,而且有其最本質的特征,即智能化的檢索。相對于傳統的特色文獻來說,特色文獻數據庫與其最大區別就是強化了其信息服務功能,在其基礎上實現了質的飛躍。數字化是相對傳統文獻而言的信息形式上的改變,最本質的改變仍在服務質量上,而這也正是讀者和用戶最為關心和希望得到的。因此,數據庫必須實現智能化檢索,為讀者用戶提供快捷、全面、準確的檢索工具,真正做到以讀者為中心。
3.1檢索界面
檢索界面應該簡潔、清晰,沒有繁雜的檢索步驟,可操作性強。幫助功能應具有實際指示作用,并提供留言功能。
3.2檢索方式
數據庫系統應提供關鍵詞、主題詞、題名、著者、出版機構等多種檢索途徑。可以根據需要進行單項檢索、組配檢索、模糊檢索,并可使用截斷符、接近符、省略符、替代符指明詞間關系或擴大、縮小檢素范圍,也可增加一些限制功能,如:限制時間、館藏地點等。
3.3檢索選項
3.3.1跨庫檢索
用戶可以根據需要選擇使用一個或多個數據庫,實現一個檢索命令跨多個數據庫自動檢索,以獲得交叉學科、相關學科的信息。
3.3.2多年檢索
應可以同時檢索最新文獻和過期文獻,使用戶在二者之間方便進行切換。
3.3.3檢索歷史
讓用戶可以保存、查看自己的檢索歷史,在當前檢索區可以利用和修改以前的檢索。工作人員則可利用它跟蹤用戶的需求或將其加工成某些動態信息。
3.3.4主題詞表
數據庫應提供主題詞表檢索功能,即利用主題詞表進行檢索詞的規范選擇,并根據主題詞的上下位關系、相關關系和替代關系調整、確定檢索詞,然后直接啟動檢索。還可根據需要修改主題詞表,或通過對用戶檢索詞的統計擴充主題詞表。
3.4檢索結果
檢索結果的實現包括排序、顯示瀏覽、聚類、套錄、打印、E-mail發送等。超級秘書網
4建庫過程中需注意的一些事項
4.1要注重全文數據庫的一些技術特征
包含內容的原始性、信息檢索的徹底性、所用檢索語言的自然性、數據相對的穩定性、檢索結果的準確性、數據結構的非結構性。
4.2數據準備
要注重對文獻源數據的收集、整理、篩選、歸類。
4.3文本預處理
要做到統一著錄標準,規范格式和標引。
4.4數據維護
要定期對數據內容進行更新追加和清理修正以及對所用詞表、存儲空間的利用統計和調整。
4.5統計功能
提供各種統計數據和用戶信息,量化各項指標,使之成為決策依據。
4.6做數據庫的宣傳工作,提高數據庫的利用率
5培養一支高素質的復合型人才隊伍
其素質包括:對某學科及其分支有充分研究,對某專題領域的相關信息源有豐富的使用經驗和了解,熟練掌握網絡環境下的信息資源的獲取技能,有較強的創新能力、分析能力和綜合應變能力。
參考文獻
1吳曉駿.大學圖書館丈故信息數據庫建設中應注意的幾個問題.現代圖書情報技術,2001(4)
2謝琴芳,白祈萍.書目資源的共建、共知和共享.大學圖書館學報,1999(2)
3魏建華.奮共圖書館自建數據序的原則與方向.圖書館論壇,1999(2)
關鍵詞:市場細分;數據庫營銷;數據庫的知識發現;數據挖掘
企業在日常的生產經營活動中,產生了大量運營數據,如果不加以利用就會雜亂無章地占據大量的存儲、管理、維護等資源。實際上這些數據是用戶行為、用戶習慣的表征記錄,是企業各項經營活動的成果記錄,其中蘊涵著大量的信息與知識,如果善加利用將是企業不可估量的戰略資源。在數據的存儲方面,隨著數據庫技術的迅速發展以及數據庫管理系統的廣泛應用,人們可以積累的數據越來越多。目前的數據庫系統已經可以高效地實現數據的錄入、查詢、統計等功能,但無法發現數據中存在的關系和規則,無法根據現有的數據預測未來的發展趨勢。
因此,在學術界對數據庫的知識發現的研究也在不斷深入。1989年IJCAI會議進行了關于數據庫中的知識發現(KnowledgeDiscoveryandDatabase,KDD)的專題討論,Fayyad將其定義為“KDD是從數據集中識別出有效的、新穎的、潛在有用的以及最終可理解的模式的非平凡過程”。從1995年開始,KDD發展為國際年會,國內對該領域研究始于1993年,國家自然科學基金開始支持該領域研究。數據分析能力是一項對開發者、使用者都有很高要求的能力,需要具備數據庫、人工智能、機器學習、神經網絡、統計學、模式識別、知識庫系統、信息檢索和數據庫可視化等多方面的知識和技巧。
同時對于這項技術在企業中的實際應用來說,隨著理論的深入與數據挖掘工具的不斷推出,其對各個企業的實際生產經營活動都起到了很大的推動作用。特別是數據庫營銷,由于其較低的成本,完善的模型和對市場的細微把握,對企業有著重大的意義。而所有的營銷活動都應以市場細分為基礎,因此數據庫營銷中市場細分就成為其不可逾越的第一步工作。
一、數據庫營銷中市場細分的作用
數據庫營銷中市場細分的應用隨著IT技術的發展和市場交易量的擴大愈來愈廣泛。目前,各個行業領域包括金融業、電信業、網絡相關行業、零售商、制造業、醫療保健及制藥業等都將其視為本公司的重要戰略資源加以應用。從目前技術的發展與行業的應用來看,其作用主要體現在以下方面:
第一,對運營數據進行更好的重組、匯集、抽取和預測,更方便、快捷地從企業現有資源上采集和轉化信息和數據,能為企業管理提供更好的決策支持,使管理層及時地了解企業生產經營現狀,深入地了解企業所處的競爭環境,更好地制定符合實際的戰略方案。
第二,在激烈的市場競爭和迅速的業務擴張中,運營數據可以用來分析數據的一般特性,使用數據可視化、分類、聚類分析、序列模式分析等工具,理解商業行為、確定商業模式、捕捉對企業利益侵害行為、提高服務質量,提高資源利用率,提高員工勞動生產率。例如,電信企業中對客服中心的分布的設計,基站的設置等。
第三,運營數據是用戶消費行為的直接記錄,通過對用戶長期消費活動數據的規律總結。有助于劃分用戶群體,使用分類技術和聚類技術,可以更精確地挑選出潛在的用戶;識別用戶購買行為,發現用戶購買模式和趨勢,進行關聯分析,以便更好地進行產品組合、產品推介等等。
第四,運營數據雖然是歷史數據的集合,如果能夠通過各種工具發現其中存在的普遍規律。由于企業的生產經營有延續性,用戶的消費習慣有規律性,我們可以用來預測未來的生產經營情況,比如我們可以通過營銷案預演,虛擬整個營銷過程,測試目標用戶反應,初步評價各種營銷案的效果,確認最能接受營銷案的客戶群體,保證在真正推出市場的銷售方案代價最小,收益最大。又如,我們可以通過運營數據,發現用戶流失的規律與特征,使企業能在用戶流失之前做出有效地挽留措施,降低流失率。
二、數據庫營銷中市場細分與傳統市場營銷中市場細分的異同
市場細分是現代營銷理念的產物是市場營銷理論和戰略的新發展。目前市場細分的理論和方法不斷完善,而且被廣泛地應用于營銷實踐。而作為本文研究的重點,數據庫營銷中的市場細分與市場營銷中的市場細分既有聯系又有區別。
首先,兩者的聯系主要體現在:市場營銷活動與數據庫營銷過程是銜接的。數據庫營銷的市場細分可以在營銷活動之前提供數據預測;也可以用在營銷活動之后分析結果,但兩者總是聯系緊密的過程。企業逐漸認識到,本企業的競爭優勢體現在能夠向用戶提供滿足整體需求的產品和服務組合,為用戶提供個性化業務解決方案。因此,在設計市場營銷業務項目時,需要采取不同的用戶群細分方法對用戶進行細分,對不同用戶采取不同的服務策略。而企業的經營成果也正是構筑在不同細分用戶對企業的貢獻上的,不同的用戶群體對總體收入的影響是不同的,因而在經營成果的分析中,也必不可少的需要對用戶進行細分。這樣可以加深對市場的了解,認清每種用戶對企業經營活動的意義,從而制定更有針對性的營銷政策。其理論依據也是相同的。根據1956年美國著名的市場學家溫德爾·史密斯(WendellSmith)的論述主要有兩個:一是用戶需求的異質性。由于用戶需求、欲望及購買行為是多元的,所以用戶在購買產品和使用服務上的需求呈現較大的差異。用戶需求的異質性是進行用戶細分的內在依據。二是企業資源的有限性和為了進行有效的市場競爭。現代企業由于受到自身實力的限制,即便是處于市場領先地位也不可能在整個營銷過程中占絕對優勢。為了進行有效的競爭,企業必須進行市場細分,選擇最有利可圖的目標用戶群體,集中企業資源,制定有效的競爭策略來增強自己的競爭優勢。所以企業資源的有限性和為了進行有效的市場競爭是進行市場細分的外在要求。
其次,數據庫營銷中的市場細分與市場營銷中的市場細分區別主要是:目的不同。數據庫營銷的市場細分目的是為了更好的從現有的經營數據中,找出對經營成果有影響的各個用戶群體,并分析其影響程度或者找出其中規律;市場營銷的市場細分,主要是為了開拓用戶未被開發的潛力,增加其對經營成果的貢獻。方法不同。數據庫營銷中的市場細分更加倚重數據庫營銷的各種手段,包括統計分析、數據挖掘等等,從海量的日常經營數據中,通過設定參數與算法,建立模型的方式,找出符合細分條件的用戶群體。市場營銷的市場細分,主要依據兩種方法:一是依據自然屬性來細分用戶,主要是利用人口統計學、社會經濟學、經濟地理原理所提供的特定市場內有關個人的重要信息來細分用戶,其變量主要有地理細分變量、人口統計變量、社會經濟變量等,也可以把這些變量結合起來進行細分;二是依據行為屬性來細分用戶依據行為屬性細分,用戶主要是通過對人們的心理分析,個性特征,生活方式的研究來細分用戶,其變量主要有心理分析變量、產品使用變量和產品效用變量等。對象不同。數據庫營銷中的市場細分主要面對企業現有用戶,這是因為數據庫營銷的數據來源主要是企業已經獲得的經營數據。市場營銷的市場細分主要面對全體消費者,從中找出目標用戶群體發展為企業的新用戶。標準不同。數據庫營銷中的市場細分依據的標準在細分前是未知的,需要運用數據挖掘的方法與工具從大量數據中找出可以用來細分用戶的標準。而市場營銷的市場細分主要基于一些已知的標準,對目標可以進行歸類與分析。
三、數據庫營銷中市場細分的方法與過程
上文結合市場營銷的市場細分總結了數據庫營銷中的市場細分有以上的一些特點,所以在應用上,后者更多地依靠統計學與數據挖掘的方式進行。通過設定變量與參數,在企業經營獲得的大量日常生產經營數據中,找出各種隱含的商務關系、產品關聯、營銷機會與用戶行為特征。
數據庫營銷中市場細分的方法可以分為5項:關聯分析、分類和預測、聚類分析、孤立點分析、演變分析等。實現上述功能的算法包括統計類的諸如回歸分析、時間序列、判別分析、因子分析;神經學習網絡類的諸如粗糙集、決策樹、模糊集、支持向量集等等。數據庫營銷中的市場細分的過程,如圖1所示。
第一,確定市場細分參數。即決定使用何種參數從數據庫的海量數據中提取相應的用戶數據對用戶進行細分。一般目前企業級的數據庫營銷應用中,為了更加精確地描述實際市場情況,模型的設計維數都比較高,設計與提取的參數數量一般都需要上百個。
第二,數據準備。一般前面兩個步驟就會占據整個過程的50-90%的時間和精力。需要完成的工作包括:數據收集、數據描述、數據質量評估和數據清理、合并與整合、構建元數據,加載數據挖掘庫等。
第三,數據分析與驗證,運用數據挖掘的方法,將初步確定參數的具體數值進行分析,進而發現參數設定的有效性并進行參數的變換,形成對解釋問題有效的參數集。
第四,建立模型。通過以上步驟,建立相應的數據模型,為了保證得到的模型具有較好的精確度和健壯性,需要一個定義完善的“訓練-驗證”協議,進行模型訓練與優化。
第五,模型應用與評估。按照確定的參數將目標用戶導入模型進行細分,同時分析同類用戶的各種特征,找出其中隱含的關聯,為分析與應用提出結論。最后還要根據實際情況,對模型輸出進行營銷學上的解釋,并進行實施效果評估。
參考文獻:
1、張曉航.基于聚類算法的客戶細分[J].通信企業管理,2005(12).
2、DavidHand等著;張銀奎等譯.數據挖掘原理[M].機械工業出版社,2003.
一、成立數據小組
大型數據庫數據元素多,在設計上有必要成立專門的數據小組。由于數據庫設計者不一定是使用者,對系統設計中的數據元素不可能考慮周全,數據庫設計出來后,往往難以找到所需的庫表,因此數據小組最好由熟悉業務的項目骨干組成。
數據小組的職能并非是設計數據庫,而是通過需求分析,在參考其他相似系統的基礎上,提取系統的基本數據元素,擔負對數據庫的審核。審核內容包括審核新的數據庫元素是否完全、能否實現全部業務需求;對舊數據庫(如果存在舊系統)的分析及數據轉換;數據庫設計的審核、控制及必要調整。
二、設計原則
1.規范命名。所有的庫名、表名、域名必須遵循統一的命名規則,并進行必要說明,以方便設計、維護、查詢。
2.控制字段的引用。在設計時,可以選擇適當的數據庫設計管理工具,以方便開發人員的分布式設計和數據小組的集中審核管理。采用統一的命名規則,如果設計的字段已經存在,可直接引用;否則,應重新設計。
3.庫表重復控制。在設計過程中,如果發現大部分字段都已存在,開發人員應懷疑所設計的庫表是否已存在。通過對字段所在庫表及相應設計人員的查詢,可以確認庫表是否確實重復。
4.并發控制。設計中應進行并發控制,即對于同一個庫表,在同一時間只有一個人有控制權,其他人只能進行查詢。
5.必要的討論。數據庫設計完成后,數據小組應與相關人員進行討論,通過討論來熟悉數據庫,從而對設計中存在的問題進行控制或從中獲取數據庫設計的必要信息。
6.數據小組的審核。庫表的定版、修改最終都要通過數據小組的審核,以保證符合必要的要求。
7.頭文件處理。每次數據修改后,數據小組要對相應的頭文件進行修改(可由管理軟件自動完成),并通知相關的開發人員,以便進行相應的程序修改。
三、設計技巧
1.分類拆分數據量大的表。對于經常使用的表(如某些參數表或代碼對照表),由于其使用頻率很高,要盡量減少表中的記錄數量。例如,銀行的戶主賬表原來設計成一張表,雖然可以方便程序的設計與維護,但經過分析發現,由于數據量太大,會影響數據的迅速定位。如果將戶主賬表分別設計為活期戶主賬、定期戶主賬及對公戶主賬等,則可以大大提高查詢效率。
2.索引設計。對于大的數據庫表,合理的索引能夠提高整個數據庫的操作效率。在索引設計中,索引字段應挑選重復值較少的字段;在對建有復合索引的字段進行檢索時,應注意按照復合索引字段建立的順序進行。例如,如果對一個5萬多條記錄的流水表以日期和流水號為序建立復合索引,由于在該表中日期的重復值接近整個表的記錄數,用流水號進行查詢所用的時間接近3秒;而如果以流水號為索引字段建立索引進行相同的查詢,所用時間不到1秒。因此在大型數據庫設計中,只有進行合理的索引字段選擇,才能有效提高整個數據庫的操作效率。
3.數據操作的優化。在大型數據庫中,如何提高數據操作效率值得關注。例如,每在數據庫流水表中增加一筆業務,就必須從流水控制表中取出流水號,并將其流水號的數值加一。正常情況下,單筆操作的反應速度尚屬正常,但當用它進行批量業務處理時,速度會明顯減慢。經過分析發現,每次對流水控制表中的流水號數值加一時都要鎖定該表,而該表卻是整個系統操作的核心,有可能在操作時被其他進程鎖定,因而使整個事務操作速度變慢。對這一問題的解決的辦法是,根據批量業務的總筆數批量申請流水號,并對流水控制表進行一次更新,即可提高批量業務處理的速度。另一個例子是對插表的優化。對于大批量的業務處理,如果在插入數據庫表時用普通的Insert語句,速度會很慢。其原因在于,每次插表都要進行一次I/O操作,花費較長的時間。改進后,可以用Put語句等緩沖區形式等滿頁后再進行I/O操作,從而提高效率。對大的數據庫表進行刪除時,一般會直接用Delete語句,這個語句雖然可以進行小表操作,但對大表卻會因帶來大事務而導致刪除速度很慢甚至失敗。解決的方法是去掉事務,但更有效的辦法是先進行Drop操作再進行重建。
4.數據庫參數的調整。數據庫參數的調整是一個經驗不斷積累的過程,應由有經驗的系統管理員完成。以Informix數據庫為例,記錄鎖的數目太少會造成鎖表的失敗;邏輯日志的文件數目太少會造成插入大表失敗等,這些問題都應根據實際情況進行必要的調整。
5.必要的工具。在整個數據庫的開發與設計過程中,可以先開發一些小的應用工具,如自動生成庫表的頭文件、插入數據的初始化、數據插入的函數封裝、錯誤跟蹤或自動顯示等,以此提高數據庫的設計與開發效率。
6.避免長事務。對單個大表的刪除或插入操作會帶來大事務,解決的辦法是對參數進行調整,也可以在插入時對文件進行分割。對于一個由一系列小事務順序操作共同構成的長事務(如銀行交易系統的日終交易),可以由一系列操作完成整個事務,但其缺點是有可能因整個事務太大而使不能完成,或者,由于偶然的意外而使事務重做所需的時間太長。較好的解決方法是,把整個事務分解成幾個較小的事務,再由應用程序控制整個系統的流程。這樣,如果其中某個事務不成功,則只需重做該事務,因而既可節約時間,又可避免長事務。
關鍵詞:電力系統;動態信息數據庫;磁盤保存形式;內存映射
0引言
數據庫技術在電力系統電網調度自動化中得到廣泛使用。借助數據庫,能夠有效保存不同離散遙信量,能夠記錄各種電壓、電流等不同數據信息。數據庫能夠保存各種歷史信息內容,供電網使用。歷史數據的合理保存是數據分析的關鍵和基礎,促使低頻采樣周期數據滿足實際需求。
1基于時間序列下動態信息數據庫框架
電力系統動態信息數據庫分為三層。第一層是數據保存層,主要是文件管理和磁盤緩存模塊,合理保存大量動態信息。第二層是數據處理層,一般是網絡通信、數據解壓和查詢等不同模塊,主要工作是保存數據,合理壓縮,在形成索引前合理處理,并及時對數據進行查詢、統計、后期處理等。第三層是應用程序接口,可以二次開發利用。動態信息數據庫系統主要由三部分組成,分別是服務器、命名服務器和數據訪問客戶。數據處理器是動態信息數據庫的中心,能夠合理壓縮和查詢數據。命名服務器能夠控制數據。數據訪問由兩部分組成,第一是動態信息數據庫維護,第二是保存和查詢二次接口。數據服務器啟動運作期間,需要向命名服務器注冊具體名稱和地質。客戶端訪問工作期間,在處理服務器前期,需要和命名服務器連接,處理訪問數據地址,合理保存數據[1]。
2電力系統動態信息數據庫關鍵技術應用
電力系統動態信息數據庫的關鍵是建立在時間序列基礎下的動態數據保存、管理和查詢對策劃,關鍵技術主要是并發數據處理機制、內存映射文件、磁盤處理形式等[2]。
2.1并發數據處理機制
動態信息數據庫高效工作的關鍵是滿足客戶端提出的需求,強化磁盤文件交互質量和效果。通常情況下,基于多核CPU技術形式,合理使用服務端處理線程,強化計算處理能力,即合理處理物理磁盤讀寫速度問題,分析磁盤高速數據吞吐間的平衡程度。數據處理主要是寫和讀兩種形式[3]。為使數據可以達到高速處理基本要求,需要借助線程池技術處理數據,有效使用不同CPU并行在一個TCP連接上,進行報文處理工作,即對一個連接上的任務進行并行化處理,達到高質量處理效果。并行處理技術在書寫數據期間,能夠最大限度提升服務端數據處理效果。通常情況下,數據處理速度是300萬事件1s。數據讀取處理和線程池技術,可并行處理不同客戶的真實需求。系統設置高度緩存區,借助ORACL數據庫綜合分析策略,保持高速緩存,在并發查詢中實現數據的有效共享和分析,從而高效訪問終極目標。并行化處理技術讀取數據期間,能夠提升服務端的整體速度,通過實際測試系統實現20個并行查詢期間,客戶讀取時間大概為10萬事件1s。
2.2內存映射文件形式和磁盤保存機制
動態信息數據庫保存TB級別的所有數據文件,能提升文件磁盤處理速度,是動態信息數據庫提升工作效率的基礎。借助統一化磁盤保存技術處理內部映射文件,不同工作線程對數據文件部分進行映射處理,達到高度保存數據的基本要求。內存映射文件形式。內存映射文件形式和虛擬內存相差無幾。借助內存映射文件保存一個地址空間保存區域,將物理保存期上交到此區域內部,內存文件物理保存器將其保存在磁盤上,即非系統文件內容。文件操作前期需要進行映射工作,將整個文件從磁盤中加載,借助內存映射文件有效處理磁盤上的文件。所有文件保存形式都采用直接管理形式,能夠節省很多內存,使文件釋放更多時間。部分映射的緩存管理機制建設。因為需要以TB級別形式保存所有數據源、文件,所以不能一次性將所有數據信息全面映射在內存文件,需要借助緩存管理形式保存和分享海量信息。緩存管理一般使用固定內存形式,將內部含有的各種數據不斷映射在處理服務器地址空間,進而達到更好的保存效果。對于系統中存在的動態數據信息,通過索引形式確定。磁盤緩存管理器中存在的數據,全部放置到一個共同緩存區域,依據LRU對策合理化管理。
2.3關聯數據保存形式
結合電力系統的根本特征進行分析,標記保存的歷史數據,主要包括時標、數據值和質量碼三種形式。電力系統基本特征格式如下:時標8字節、數據值4字節、質量碼4字節。時標主要利用2字節整數表示,精準度為1μs,數據值可以使用精準浮點表示,質量標志一般利用4字節整數表示。因此,一個完整事件點使用的保存空間一般為16字節。
2.4電力系統數據收集處理流程
動態海量數據庫可以將不容數據點分為離散數據和連續數據兩種類型。結合數據性質的差異性,使用不同處理形式。離散數據點主要是電力系統中存在很多變化的數值量,比如遙信量、被返回的原始值等,不能進行插植處理。連續數據點對應的是連續變化的測量數值,比如電壓、電流等連續變化的數據。動態海量數據庫需要結合設置的內容進行分析和研究,強化電力系統工作效果。
2.5混合壓縮算法
動態數據庫可以分為兩種形式,分別是有損和無損,整合后最終形成混合壓縮算法。有損壓縮就是使用線性帶寬壓縮算法,壓縮率為8~10。無損壓縮就是將浮點依據IEEE-754表示形式分為1位、7位和23位,小數需要再次壓縮,精準度處理。將三部分數值全部壓縮處理后,以隨機序列形式將其擴大為原來的3~5倍。質量位可以借助哈夫曼算法合理處理,連續量可以使用混合壓縮算法。壓縮率是有損和無損的乘積。分析數據的最終特征,確保動態信息的壓縮效果,是通常情況下的25~30倍。
2.6電力系統數據采集處理步驟
動態數據庫中有很多數據內容,可以分為離散數據點、連續數據點兩種形式,結合數據基本性質差異性,采用不同數據處理形式進行全方位處理和分析。離散數據點主要是電力系統中存在各種有序變化且不連續的量,比如遙信量、設備運行狀態等。對實際工作中存在的各種離散數據點進行壓縮處理,使用系統查詢和保存原始數據信息,整個過程中不使用插值處理。連續數據點是測量和處理一些連續性變化的數據,比如電壓、電流等動態化數據內容,結合具體情況設定壓縮允許誤差,壓縮處理歷史數據,將壓縮后的數據全部保存在磁盤中。
關鍵詞地理信息系統,數據庫訪問,空間數據庫引擎(SDE),C/S模式,ODBC.
引言
近年來,網絡技術得到迅速的發展,這就為信息資源的共享提供了技術上的可能.作為信息密集型的地理信息系統(GIS)上升到網絡平臺可謂適逢其時.但從目前的應用情況來看,除了國外極少的公司擁有網絡版的GIS之外,在國內還處于試驗研制的階段.因此,盡快地研制出我國自主版權的網絡GIS的原型和產品,并在技術手段上達到國際先進水平,是擺在我們面前的一項迫切的任務.
1網絡計算的幾種模式及特點
(1)傳統的集中式.這是一種主機-終端模式,所有的計算任務和數據管理任務都集中在主機上,終端只是主機輸入/輸出設備的延長.這種模式的優點是容易管理,缺點是對主機的性能要求很高,也浪費了作為終端的計算機的計算能力,并且從性能價格比來看,在購置費用相當的情況下,一臺主機的性能往往比不上幾臺計算機所組成網絡的性能;因此這種模式已逐漸退出主流.
(2)客戶機/服務器(client/server,簡稱C/S)模式.一般說來,在這種模式下,服務器只集中管理數據,而計算任務分散在客戶機上,客戶機和服務器之間通過網絡協議來進行通訊.客戶機向服務器發出數據請求,服務器將數據傳送給客戶機進行計算,計算完畢,計算結果可返回給服務器.這種模式的優點充分利用了客戶機的性能,使計算能力大大提高;另外,由于客戶機和服務器之間的通訊是通過網絡協議進行的,是一種邏輯的聯系,因此物理上在客戶機和服務器兩端是易于擴充的.它是目前占主流的網絡計算模式.
(3)瀏覽器/服務器(browser/server)模式.在這種模式下,用戶端只需一通用的瀏覽器,如Netscape或Explore,便代替了形形的各種應用軟件.服務器則為Web服務器.瀏覽器和服務器之間通過TCP/IP這一通訊協議進行連接.瀏覽器發出數據請求,由Web服務器向后臺取出數據并計算,將計算結果返回給瀏覽器.這種模式的優點是:由于用戶端所用軟件只是一個簡單的瀏覽器,用戶基本上無需培訓,用戶端軟件也無需維護;軟件的升級與修改只在服務器端進行,對用戶透明;服務器與瀏覽器可處于不同的操作系統平臺.其缺點為:Web動態技術不夠成熟,各種標準有待統一,如各廠家的動態協議互不支持、瀏覽器之爭等.總之,它是一種先進的但發展還未成熟的技術.
基于以上的分析,應選擇客戶機/服務器模式作為GIS訪問網絡數據庫的實現模式.
2C/S模式下的GIS訪問網絡數據庫的結構設計
設計在總體上分為C/S兩層(見圖1),以充分利用C/S模式的跨平臺、易擴充、數據獨立等優點.在client端又分兩層來進行設計——GIS功能層和數據請求層,GIS功能層是GIS的功能實現部分,數據請求層是GIS的數據實現部分.數據請求層作為一中間層,起到數據轉換的作用,對上是具有GIS特點的數據文件,對下是標準的數據庫記錄.這種分層設計的形式一方面充分利用了現有的單機版本GIS研究成果;另一方面,GIS功能層和數據請求層的開發可同時進行,只要接口標準不變,本層的變動不會影響到另一層.
Fig.1ThegeneralframeworkofGISaccessingdatabasebasedonC/Smodel
值得一提的是ESRI公司的空間數據庫引擎(spatialdatabaseengine,簡稱SDE)的設計方案(見圖2).它是目前國際上領先的GIS數據處理的網絡計算模型.其數據的訪問形式為:由用戶的應用程序(userapplication)通過SDE應用編程接口(SDEAPI)向SDE服務器提出空間數據請求,SDE服務器內存放有空間對象模型,并依據空間對象的特點在本地完成空間數據的搜索,并將搜索結果通過網絡向用戶的應用程序返回.
對比圖1和圖2可以看出兩者采用的都是C/S模式,并且都將GIS功能實現與數據請求進行分層處理;所不同的是面向數據庫的數據請求實現的位置:圖1在客戶機端實現,圖2在服務器端實現.在服務器端實現的主要優點為:(1)對于空間對象模型及相關的計算模式的升級可以只在服務器端實現,而且對客戶機端透明;(2)由于SDE服務器與數據庫ORACLE7.2的結合非常緊密,因此數據的搜尋速度非常快.對于圖1來說,把數據請求層放在客戶機端,對數據庫的依賴程度就不同于SDE服務器,后者對數據庫的選型有極強的依賴性(目前SDE服務器只在ORACLE7.2實現),相反,它是一種非常開放的結構,它所支持的服務器不但可跨數據庫系統平臺,而且還可跨操作系統平臺.可以說,圖1和圖2兩種設計模式的優缺點是相互對應的.
3數據庫訪問方式的比較
基于程序的訪問數據庫的幾種方法如下.
(1)專用的數據庫訪問工具.如PowerBuilder,Delphi等,它偏向于對數據庫中數據的管理和顯示,具有限的計算功能.既不適于用它來開發GIS應用系統,也難以將它們的數據操縱功能與現有的GIS應用系統緊密結合.
(2)嵌入數據庫語言的常規語言.各數據庫廠家為了讓用戶程序能直接訪問自已的數據庫,基本上都提供了專有的面向C語言的預編譯頭和靜態庫,如Sybase公司的OPENCLIENT和ORACLE的PRO*C.
(3)開放數據庫互連性應用編程接口(opendatabaseconnectivityapplicationprogramminginterface,簡稱ODBCAPI)[2,3].它是微軟(Microsoft)公司提出的數據庫訪問形式.它通過確保所有的應用系統遵循標準的調用層接口,提供對特定數據源命令進行解釋的驅動程序來保持應用系統的互用性.這樣的應用系統是開放的,只要有相應數據源的ODBC的驅動,它就無需改變代碼而可訪問相應的數據庫.
在確定訪問數據庫的方式時,ODBCAPI的開放性的優勢是不言而喻的,但這種方式在效率上不如第二種訪問形式.應說明的是:ODBCSQL語法分為3層,即最小層、核心層和擴展層,盡管目前的大型數據庫都能支持到擴展層,但為了保證應用系統的開放性,在具體編程實現時,盡量只使用最小層和核心層的語法.
4某電信局配線系統的實現
客戶機為MAPGIS/ODBC/WINDOWS95,服務器為SQLSERVER/WINDOWSNT,要訪問的相關表中記錄約為13萬條.要求從地理底圖上選中某一DP,在數據庫中尋找出從這一DP到配線架的可用通路,并在數據庫中作相應配線修改.如圖3所示.結果表明:(1)程序實現了MAPGIS訪問網絡數據庫的功能;(2)客戶機和服務器均為PC機(主頻166MHz),每次操作反應時間為數秒,換機觀察,發現服務器的性能是整個網絡計算的瓶頸.
5結論
(1)C/S模式為目前網絡平臺GIS的首選,將GIS功能與數據庫訪問分層實現有利于保護現有的開發成果;(2)將數據請求層放在客戶端和以ODBC作為數據庫的訪問方式保證了應用系統的開放性,其訪問可跨越數據系統和操作系統平臺;(3)實例表明,應用系統的反應速度更多取決于服務器的性能,而不是ODBC的效率.
參考文獻
1/base/common/userconf/proc96/TO100/PAP094/P94A.HTM.1998.4