sqlserver 檔案資料庫和關聯式資料庫的比較_MsSql
來源:互聯網
上載者:User
摘要:隨著應用領域的不斷拓展和多媒體技術, 人們發現關聯式資料庫的許多限制和不足,因而資料庫技術進入了“後關聯式資料庫時代”。檔案資料庫由此應運而生。本文概要地從資料格式、資料庫結構和WEB發布資料三個方面比較了檔案資料庫和關聯式資料庫的異同,同時差別了檔案資料庫和過去儲存資料的檔案系統的不同。
關鍵詞:資料庫 Internet 檔案資料庫 WEB資料庫伺服器
一、關聯式資料庫的優勢和目前面臨的問題
從60年代末開始, 資料庫技術經曆了層次資料庫、網狀資料庫和關聯式資料庫而進入資料庫管理系統( DBMS)階段至今, 資料庫技術的研究也不斷取得進展。80年代, 關聯式資料庫成為發展的主流, 幾乎所有新推出的DBMS產品都是關係型的。關係型資料庫在電腦資料管理的發展史上是個重要的裡程碑,這種資料庫具有資料結構化、最低冗餘度、較高的程式和資料獨立性、易於擴充、易於編製應用程式等好處,目前較大的資訊系統都是建立在結構化資料庫設計之上的。
然而,隨著網路技術和軟體技術的飛速發展,特別是Internet和Intranet技術的發展,使得非結構化資料的應用日趨擴大。關聯式資料庫從1970年發展至今,雖功能日趨完善,但對資料類型的處理只局限於數字、字元等,對多媒體資訊的處理只是停留在簡單的二進位代碼檔案的儲存。然而,隨著使用者應用需求的提高、硬體技術的發展和Intranet/Internet提供的多彩的多媒體交流方式,使用者對多媒體處理的需求從簡單的儲存上升為識別、檢索和深入加工,正是使用者呼喚出"通用"資料庫伺服器來處理占資訊總量70%的聲音、映像、時間序列訊號和視頻等複雜資料類型。據有關資料,1996年,全球資料庫市場的銷售額已接近40億美元,預計到2000年,資料庫市場銷售額將達到80億美元。巨大的增長潛力來自複雜資料類型的處理需求,使處理複雜資料類型的"超媒體"資料庫將成為各公司投資研發的重點。
二、全新的檔案資料概念
從1989年起,Lotus通過其群件產品Notes提出了資料庫技術的全新概念-"檔案資料庫",檔案資料庫差別於傳統的其他資料庫,他是用來管理檔案。在傳統的資料庫中,資訊被分割成離散的資料區段,而在檔案資料庫中,檔案是處理資訊的基本單位。一檔案能非常長、非常複雜、能無結構,和文書處理檔案類似。
檔案資料庫和五、六十年代管理資料的檔案系統不同,檔案資料庫仍屬於資料庫範疇。首先,檔案系統中的檔案基本上對應於某個應用程式。當不同的應用程式所需要的資料有部分相同時,也必須建立各自的檔案,而不能共用資料,而檔案資料庫能共用相同的資料。因此,檔案系統比檔案資料庫資料冗餘度更大,更浪費儲存空間,且更難於管理維護。其次,檔案系統中的檔案是為某一特定應用服務的,所以,要想對現有的資料再增加一些新的應用是非常困難的,系統不容易擴充。資料和程式缺乏獨立性。而檔案資料庫具有資料的物理獨立性和邏輯獨立性,資料和程式分離。
檔案資料庫也不同於關聯式資料庫,關聯式資料庫是高度結構化的,而Notes的檔案資料庫允許建立許多不同類型的非結構化的或任意格式的欄位,和關聯式資料庫的主要不同在於,他不提供對參數完整性和分布事務的支援,但和關聯式資料庫也不是相互排斥的,他們之間能相互交換資料,從而相互補充、擴充。
三、關聯式資料庫和檔案資料庫的異同
下面從三個方面比較兩種資料庫的異同:
1、格式文本/多媒體
在資訊時代,所有資訊大體上能分為兩類:一類資訊能夠用資料或統一的結構加以表示。例如,成本、費用、人員、工資及員工業績等,都能用數字或文字來描述或表達。這類資訊具有相同的層次或網路結構,我們稱之為結構化資料;而另一類資訊根本無法用數字或統一的結構表示,例如,圖象、聲音等,我們稱之為非結構化資料。這些非結構化資料既能是一段包含大量附加資訊(如排版資訊)的文字資訊,也可能是一段聲音、圖象,甚至是影像。對於結構化資料和非結構化資料的關係如圖所示,非結構化資料包括結構化資料,但又不止是結構化資料;結構化資料屬於非結構化資料,是非結構化資料的特例。一般來說,在人們的認識之中,關聯式資料庫最主要的特徵就是資料的結構化。然而,隨著網路技術和軟體技術的飛速發展,特別是Internet和Intranet技術的發展,使得非結構化資料的應用日趨擴大。關聯式資料庫是高度結構化的,這種資料結構化使關聯式資料庫具有冗餘度最低、程式和資料獨立性較高、易於擴充、易於編製應用程式的特點。不過,隨著應用領域的不斷拓展, 為滿足應用對資料處理不斷"苛刻"的需求, 人們開始發現關聯式資料庫的許多限制和不足。因為檔案資料庫的基本元素就是檔案本身,而資料庫中的檔案能同時包含結構化的和非結構化的資訊,所以,檔案資料庫能夠儲存和管理類似檔案這樣的非結構化資料。特別是,Notes的物件程式庫是個非常最佳的商業資訊儲存空間,可用於高效地儲存、傳播、分配和管理這類資訊。這類資訊通常具有豐富的資料類型,如表格(能是從某個關聯式資料庫或電子錶軟體中得到的)、格式化文本、WWW的頁面、映像、OLE對象、或掃描的圖象及傳真件、聲頻或視頻訊號這樣的多媒體資訊。
2、在結構上
關聯式資料庫是應用數學方法來處理資料庫資料的,其資料模型也是建立在數學概念基礎上的,在關聯式模式中,資料在使用者觀點下的邏輯結構就是一張二維表。而Lotus Notes是個檔案資料庫管理系統,檔案資料庫的基本元素就是檔案。這裡的檔案和關聯式資料庫中的記錄相似。Notes檔案的結構是由表單(form)定義的,而表單由一組各式各樣的欄位域組成。
(1)域(Domain)和欄位(Field)
在關聯式資料庫中,域(Domain)是屬性值的集合,如:大於0小於150的正整數,長度小於25的字串集合等等。而在檔案資料庫中,域(Field)的概念出目前表單對象中,域是表單上儲存資料的單個元素,域決定了一個獨立的檔案能包含什麼資料。雖二者的中文譯文相同,但其實際意義和作用相差千裡。反而在檔案資料庫中域的概念和關聯式資料庫中的欄位(Field)相類似。
(2)條目(Item)和屬性(Attribute)
在關聯式資料庫中,有屬性(Attribute)的概念,即二維表中的每一列稱為一個屬性,給每一列起一個名稱即屬性名稱。而在檔案資料庫中,就沒有"屬性",檔案擁有的是條目(Item),條目是指儲存於檔案中的任意資料部分。每一個條目代表檔案中一段資料,在使用者介面中,是通過表單中的域來顯示檔案中的條目的。二者雖命名不同,但筆者認為從"屬性"的角度更容易理解檔案資料庫中條目的意義。
(3)視圖(View)
在關聯式資料庫和檔案資料庫中,均有視圖的概念。在關聯式資料庫中,視圖是指從一個或幾個基本表(或視圖)匯出的表。視圖和基本表不同,視圖是個虛表,即視圖所對應的資料不實際儲存在資料庫中,資料庫中只儲存視圖的定義(存在資料字典中)。在檔案資料庫中,使用者通過Notes視圖瀏覽檔案。視圖是非常方便的目錄,使用者能從中看到關於檔案的概要資訊和檔案的狀態,然後存取特定的Notes檔案。檔案資料庫中檔案能在視圖中顯示起全部或部分內容,通過視圖,使用者能看一組檔案的關鍵域,並可按某一準則對顯示的資訊進行分類和排序。實質上,二者邏輯上非常相似,即視圖所對應的資料均不實際儲存在資料庫中,資料庫中只儲存視圖的定義。
3、WEB資料庫
近年來網路體繫結構經曆了一次次重大變遷,客戶機/伺服器結構越來越流行了,Intranet以驚人的速度在短短一年內迅速蔓延,面臨新的格局,怎麼簡易地實現"客戶機/伺服器"串連和"Web/Intranet"串連成為資料庫管理員關注的焦點。電腦技術和網路技術的發展使以網路為中心的計算日益得到重視,WWW系統和資料庫成為網路化資訊服務的基礎。如果能把檔案資料庫同WWW伺服器串連起來,就能從瀏覽器中檢索檔案。這種一體化的資訊網路系統:資料庫+WWW伺服器,便成為下一代Internet研發的新領域。目前,在Web上一個典型的資料庫應用程式應包括三個部分:Web瀏覽器、HTTP 伺服器和Web資料庫伺服器。對於一般的關係型資料庫,實現Web資料庫的應用通常有兩種方法:一種是Web伺服器提供中介軟體串連Web伺服器和資料庫伺服器;另一種是把應用程式下載到用戶端直接存取資料庫。最常用的中介軟體技術有通用閘道介面(CGI)和應用程式編程介面(API)兩種。CGI程式缺陷在於CGI介面不支援使用者和資料庫間的持續互操作,再就是CGI的效率低,且需要同時運行多個CGI程式。使用者每次連至伺服器時,伺服器都要建立一個事務或運行CGI程式的一個拷貝。這樣對於一個複雜的應用或有多個使用者訪問時,就會加重伺服器的負擔。API在非常大程度上克服了CGI的缺點,但其相容性差和研發難度大也讓廣大研發人員望而卻步。用戶端訪問資料庫主要包括Java Script和資料庫連接器(IDC)等。用Java Script和IDC研發Web資料庫雖簡單但同時也存在功能有限、不能完全控制其過程等缺點。所以他們也無法勝任較複雜的Web資料庫的研發。難道就沒有一個研發相對容易、功能強大且高效的Web資料庫的研發方法嗎?有,答案是-Lotus Notes。Lotus Notes通過檔案資料庫實現了多媒體檔案管理,支援客戶機/伺服器工作方式。每個資料能包含若干不同形式的Notes檔案。存放在一個或多個Notes伺服器上,能讓許多使用者存取的資料庫稱為共用資料庫。通過利用伺服器存取和資料庫存取控制等安全措施,資料庫管理員能規定誰能存取資料庫和在什麼範圍內使用資料庫,各資料庫在網上通過複製功能實現同步。這樣,通過檔案資料庫使用者能在網路上存取、追蹤儲存和組織資訊。
四. 結束語
最近幾年,我國的資料庫市場飛速發展,並將具有更為巨大的增長潛力,表現為如下特點:首先,在近五年裡,使用者的選型觀念發生了明顯的改動,有更多的使用者把資料庫的重要性放在十分重要的地位,其主要原因是使用者將把應用軟體和應用需求放在首位,應用軟體是否滿足使用者需求是整個項目是否成功的標誌,而應用軟體研發直接依賴於資料庫研發工具。實際上,大量潛在的投資都在應用軟體的研發上;另一個原因是硬體隨著晶片技術的發展越來越缺乏特性,硬體指標將變成次要的考慮因素。對行業性應用來講,以前是制定幾家硬體產品作為優選,而今可能是最佳選擇資料庫廠家再考慮硬體廠家了。正是使用者需求的這種變化給資料庫廠商提供了新的發展機會。Lotus Notes為各資料庫系統整合商提供了強大的檔案資料庫研發平台,Notes結合了企業級電子郵件、分布式檔案資料庫和快速應用研發等三位一體的強大技術、完全整合Internet技術,提供使用者完整的,以網路為中心的應用技術平台。能預言,在不久的將來,Lotus Notes的檔案資料庫將成為繼層次資料庫、網狀資料庫和關聯式資料庫之後的又一熱點技術。