官术网_书友最值得收藏!

1.1 數據庫的相關概念及特點

案例1-1】數據庫技術已被廣泛應用到各個行業和業務領域。美國未來學家托爾勒曾指出:“誰掌握了信息,誰控制了網絡,誰就將擁有整個世界。”客觀世界,信息無處不在、數據無處不用,數據庫技術是各種業務數據處理與應用系統的核心。數據庫的建設規模、數據量和使用頻率已成為衡量一個國家信息化程度的重要標志,數據資源和數據庫高新技術已經成為世界各國極為重要的優先發展戰略。

1.1.1 數據和數據處理的概念

1.數據的概念

數據(Data)是對客觀事物、事件的記錄與描述,是可由人工或自動化手段加以處理的數字、文字、圖形、圖像和聲音等符號的集合。在計算機科學中,數據是指所有能輸入到計算機并被計算機程序處理的符號的介質的總稱。數據是信息的表現形式和載體,是利用信息技術進行采集、處理、存儲和傳輸的基本對象。通常,數據可分為兩大類:數值型數據和非數值型數據。數值型數據一般為數字,如整數、實數和浮點數等;非數值型數據比較復雜,可以是文字、符號、表格、圖形、圖像、聲音和視頻等形式。從具體的應用上可細分為數值型、字符型、時間型、貨幣型或其他類型,具體參見“2.5.2數據類型”一節介紹。

數據與其語義密不可分。數據的語義是指數據的含義,例如,85是一個數據,可以描述一個學生某門課的成績,也可以指某專業的學生人數,還可以指某人的體重等。因此,數據與其語義是不可分的,離開了具體的語義環境,數據毫無意義。在實際業務處理過程中,各種信息只有經過數據載體的描述和表示,才能進行采集、傳輸、存儲、管理與處理,并產生新的更有價值的數據(提供信息)。

數據與信息的區別和聯系。數據是信息的一種符號化表示,是信息的載體和具體表示形式,是物理性的。信息來源于數據,是經過加工處理后的有意義的結構化的數據,反映數據的內涵,是觀念性的。信息以數據的形式存儲、傳輸和處理,同一信息可以表示為不同形式的數據,如同一條信息內容可用文字、圖像或語音數據表示,而信息不隨著數據的表現形式而改變。

數據和信息是不可分割的,數據是信息的表達,信息是數據的內涵。數據本身沒有意義,數據只有對實體行為產生影響時才成為信息。

2.數據處理與數據管理

數據處理(Data Processing)是對數據進行采集、存儲、檢索、加工、變換和傳輸的過程。對多種業務數據進行的查詢、分類、修改、變換、運算、統計和匯總等都屬于數據處理。其目的是根據實際需要,從原有大量、龐雜、難理解的數據中抽取出有價值的新數據(信息),作為決策的依據,其實質是信息處理。可以借助數據庫等技術處理和存取各種業務數據,快捷方便地利用各種數據(信息)資源。

數據處理方式有多種,主要由于數據處理設備的結構方式、工作方式和數據的時間空間分布方式的不同而不同。不同的處理方式要求不同的硬件和軟件支持。每種處理方式都有各自的特點,可以根據應用問題的實際環境選擇合適的處理方式。

數據處理方式主要有4種:①以處理設備的結構方式區分,有聯機處理方式和脫機處理方式;②以數據處理時間的分配方式區分,有批處理方式、分時處理方式和實時處理方式;③以數據處理空間的分布方式區分,有集中式處理方式和分布處理方式;④以中央處理器的工作方式區分,有單道作業處理方式、多道作業處理方式和交互式處理方式。

數據管理(Data Management)是利用計算機硬件和軟件技術對數據進行有效的收集、存儲、處理和應用的過程。其目的是有效地發揮數據的作用。有效數據管理的關鍵是合理的數據組織。如在數據處理過程中,數據采集、存儲、檢索、分類和傳輸等基本環節統稱為數據管理。

案例1-2】進銷存管理系統主要用于企業產品數據管理。其中對產品基本信息的添加、修改、刪除和查詢等操作都屬于數據管理范疇,而對庫存產品的盤點、月匯總和年匯總等操作則屬于數據處理范疇。

1.1.2 數據庫、數據庫管理系統與數據庫系統的概念

1.數據庫

數據庫(Data Base,DB)是長期存儲的、有組織的、可共享的相關數據的集合,是存儲在計算機設備(包括PC、服務器、平板或手機等)上的有組織、可共享、持久性的數據空間。其數據按照一定的數據模型進行組織、描述和存儲,具有較小的冗余度、較高的獨立性和擴展性,可在用戶之間共享。通常,數據庫數據具有結構化、永久性、獨立性、共享性、低冗余度、易擴展和海量性等特點。

2.數據庫管理系統

數據庫管理系統(Database Management System,DBMS)是指建立、運用、管理和維護數據庫,并對數據進行統一管理和控制的系統軟件。主要用于用戶定義(建立)及操作、管理和控制數據庫和數據,并保證數據的安全性、完整性、多用戶對數據進行并發使用及出現意外時的數據庫恢復等。

DBMS是整個數據庫系統的核心,對數據庫中的各種業務數據進行統一管理、控制和共享。DBMS的主要功能和結構將在1.5節中進行介紹,其重要地位和作用如圖1-1所示。支持關系型數據模型的DBMS稱為關系型數據庫管理系統(Relational Database Management System,RDBMS)。常用的大型DBMS有SQL Server、Oracle、MySQL、Sybase、DB2和Informix等,小型的DBMS有VFP(Visual FoxPro)和Office Access等。

3.數據庫系統

數據庫系統是指在計算機系統中引入數據庫后的系統,一般由數據庫、數據管理系統(及其開發工具)、應用系統和數據管理員構成,如圖1-2所示。數據庫的創建、使用和維護等工作不能只靠一個DBMS,需要有專門的人員來管理和維護。負責此類事件的人員稱為數據庫管理員(DataBase Administrator,DBA)

圖1-1 DBMS的重要地位和作用

圖1-2 數據庫系統的構成

為了避免不必要的歧義,通常將數據庫系統簡稱為數據庫

1.1.3 數據庫技術的發展、特點及應用

1.數據庫技術的發展和趨勢

數據庫技術的產生是為了滿足人們對數據處理和數據管理的需求,也就是實現對數據的采集、分類、組織、編碼、存儲、維護和應用的實際需求。在應用需求的推動下,在計算機硬件、軟件及信息技術不斷發展的基礎上,數據管理技術的發展主要經歷了人工管理、文件系統、數據管理系統和高級數據庫管理4個階段。下面分別對這4個階段進行介紹。

(1)人工數據管理階段

20世紀50年代中期以前,計算機的主要作用是科學計算。當時,計算機的主要元器件以電子管為主,計算機的體積龐大,世界上第一臺計算機ENIAC長30.48m,寬6m,占地面積約170m2,重達30t。沒有直接數據存取設備,如磁盤,外存只有紙帶、卡片和磁帶等。軟件狀況也較為落后,沒有操作系統,無專門的數據管理軟件,數據處理的主要方式是批處理。

人工數據管理階段的主要特點如下。

1)數據不保存。受計算機軟硬件和主要用于科學計算的應用實際,一般不需要將數據長期保存,在需要計算時輸入數據,用完后數據就撤走。

2)數據面向應用。數據與應用程序相對應,如果多個程序使用相同數據,則需要在各個程序中分別存儲同一數據,數據無法共享,存在數據冗余和不一致等問題。

3)數據無獨立性。數據的邏輯結構或物理結構發生改變后,相應地,使用該數據的應用程序也需要進行相應的修改,增加了程序員的負擔。

4)無專門數據管理軟件。數據由程序員設計和組織,程序和數據之間的關系是一一對應的,數據無法相互利用和參照,導致數據的大量冗余和不一致問題的產生。

(2)文件系統階段

在20世紀50年代中期到60年代中期,計算機開始用于數據管理。硬件方面出現了磁帶和磁鼓等直接存取的存儲設備;軟件方面在操作系統中出現了專門的數據管理軟件,即文件系統。

文件系統管理數據的特點如下。

1)數據長久保存。以大容量磁盤作為存儲設備,各種數據以文件形式存于計算機中。

2)數據共享能力差。由于每一個文件都是獨立的,當需要使用相同的數據時,必須建立各自的數據文件,數據無法在各個程序之間共享,因此造成大量數據冗余。

3)數據不能獨立。軟件與數據緊密耦合,當數據結構發生變化時,需要修改相應的應用程序;反之,若應用程序發生了變化,也需要改變數據結構。

4)只有簡單數據管理功能。在程序和數據之間由文件系統提供存取方法進行轉換,程序和數據之間有一定的獨立性,在一定程度上減少了程序員的工作量。此階段的應用程序和數據文件之間的關系如圖1-3所示。

圖1-3 應用程序和數據文件間的關系

(3)數據庫系統階段

20世紀60年代后期,隨著信息技術的蓬勃發展,各種應用系統產生的數據量急劇增長,同時多種語言和多種應用相互共享數據的要求日趨強烈,硬件價格下降,軟件價格上漲,聯機實時處理要求越來越多。在這種背景下,以文件系統作為數據管理手段已無法滿足應用需求,為了解決多用戶、多應用共享數據的問題,需要有專業的數據管理軟件來實現對數據的全方位管理(共享性、獨立性、冗余性和不一致性),數據庫技術應運而生,出現了專門的數據管理軟件——數據庫管理系統。

數據庫系統的主要特點如下。

1)數據整體結構化。數據庫中的數據不再只針對某一應用,而是面向全組織;數據不僅是內部結構化,而且是整體結構化,數據之間具有聯系。

2)數據高共享、低冗余。數據庫系統從整體角度描述數據,數據面向整個系統,不再面向單一應用,數據可被多用戶、多應用所共享。數據庫與網絡技術結合擴展應用,數據共享程度極大地減少了冗余度,節約了存儲空間,且避免了數據之間的不相容和不一致性。

3)數據獨立性高。應用程序與數據庫中的數據相互獨立,當數據的物理結構和邏輯結構更新變化時,不影響應用程序使用數據,反之,修改應用程序時也不影響數據。

4)數據統一由DBMS管理和控制。由DBMS完成對數據的統一管理和控制,實現了數據的安全性和完整性。數據庫系統自動檢查訪問用戶的身份及其操作合法性、數據的一致性及相容性,保證數據符合完整性約束條件,以并發控制手段有效控制多用戶同時對數據進行操作,保證共享及并發操作。其恢復功能可保障出現意外時自動恢復。

(4)高級數據庫發展階段

從20世紀80年代以后,傳統數據庫技術日趨成熟,在各個領域的應用也逐步深入。在網絡技術和各行業的新需求的不斷推動下,數據庫技術的發展呈現出前所未有的新氣象,分布式數據庫、數據倉庫、數據集市和商業智能等新技術紛紛涌現。下面對其中的一部分進行簡要介紹。

1)分布式數據庫系統。隨著地域上分散而管理上集中的企業的不斷增加,對數據的需求不再局限于本地,而要求能存取異地數據。此外,網絡技術的飛速發展為實現這一需求提供了物質基礎,于是產生了分布式數據庫系統(Distributed Database Systems),具有以下幾個主要特點

① 物理分布性。數據不是存儲在一個場地上,而是存儲在網絡的多個場地上。

② 邏輯整體性。數據在物理上分布于各場地,但邏輯上是一個整體,它們被所有用戶(全局用戶和局部用戶)共享,并由一個分布式數據庫管理系統(DDBMS)統一管理。

③ 站點自治性。各站點上的數據由本地的DBMS管理,具有自治處理能力,實現本地場地的應用(局部應用)。

④ 站點協作性。各站點雖然具有高度的自治性,但是又相互協作,構成一個整體。

⑤ 數據分布透明性。

⑥ 存在適當的數據冗余度。

⑦ 事務管理的分布性。分布式數據庫系統兼顧集中管理和分布處理兩項任務,因而具有良好的性能,其具體結構如圖1-4所示。

2)面向對象數據庫系統。隨著數據庫技術的不斷發展,其應用領域從傳統的商務數據處理擴展到許多新的應用領域,如計算機輔助設計(CAD)、計算機輔助軟件工程(CASE)和圖像處理等,關系數據庫管理系統很難適應上述領域中復雜對象和對象行為的模擬。此外,傳統的商務數據處理也有了新的需求,如存儲和檢索照片、手寫證據等。關系數據庫在處理上述數據時顯得力不從心,需要更新的技術和理論來解決上述問題。新的應用需求推動了數據庫新技術的研究,將面向對象技術與數據庫技術相結合,便產生了面向對象數據庫系統,詳細的內容將在1.2節中進行介紹。

圖1-4 分布式數據庫

面向對象數據庫系統的主要特征如下。

① 面向對象數據庫系統必須支持面向對象的數據模型,具有面向對象的特征,包括支持復雜對象、具有對象標識、具有封裝性,以及支持繼承性等。

② 面向對象數據庫系統必須具有數據庫管理系統的基本功能。

(5)數據庫的發展趨勢

根據數據庫應用及多家分析機構的評估,數據庫技術發展將以應用為導向,面向業務服務,并與計算機網絡和人工智能等技術結合,為新型應用提供多種支持。

1)數據集成與數據倉庫。數據倉庫(Data Warehouse)是一個面向主題、集成、相對穩定、反映歷史變化的數據集合,其建設目的是為了支持企業管理決策。其特征有以下4點:面向主題、集成性、穩定性和反映歷史變化。充分利用云計算和云存儲技術的優勢,針對不同的數據功能和使用價值進行數據集成建設,面向不同的數據應用主題建設數據倉庫,可以充分利用企業的現有數據,為決策提供數據支撐。新一代數據庫的出現,使數據集成和數據倉庫的實施更簡單,連續處理、實時處理和小范圍數據處理成為數據集成和分析人員面臨的新課題。鑒于數據應用逐步過渡到數據服務,開始注重處理關系型與非關系型數據的融合、數據分類,以及國際化多語言數據。

2)主數據管理和商業智能。主數據是指在整個企業范圍內各個系統間需要共享的數據,如客戶信息和供應商信息等。當前,企業內部對上述主數據在定義和存取等方面存在大量數據冗余和不一致問題,嚴重阻礙了主數據的使用,如何發現和有效使用主數據來提高企業核心競爭力,是企業長期需要面對的一個問題。因此,主數據管理將會成為一個新的熱點。

商業智能(Business Intelligence)是利用數據倉庫及數據挖掘技術對客戶數據進行系統的儲存和管理,并通過各種數據統計分析工具對客戶數據進行分析,提供各種分析報告,為企業提供決策信息,是企業利用現代信息技術收集、管理和分析結構化和非結構化的商務數據和信息,改善決策水平,提升績效,增強綜合競爭力的智慧和能力,是融合了先進信息技術與創新管理理念的結合體,集成了企業內外的數據,進行加工并從中提取能夠創造商業價值的信息,面向企業戰略并服務于管理層。

3)基于網絡的自動化管理。網絡數據庫應用系統應用廣泛,如網購、網銀等系統。從Enterprise-class到World-class的轉變,使數據庫管理更加自動化,并將提供更多基于Internet環境的管理工具,完成數據庫管理網絡化。數據管理的應用程序編程接口(Application Programming Interface,API)更開放,基于瀏覽器端技術的Intranet/Internet管理套件,便于分布在各地的數據管理員和開發人員通過瀏覽器管理另一端的數據庫。

4)DBMS的自適應管理。隨著RDBMS復雜性增強及新功能的增加,數據庫的性能會不斷下降,需要DBA對數據庫系統進行整體分析,根據系統的磁盤IO、線程池及并發等狀態對數據庫進行性能調優,實現對數據庫系統性能優化的目的。既然DBA可以根據數據庫參數對系統進行調優,說明DBMS有大量“調節按鈕”,允許專家從可操作的系統上獲得最佳性能,因此,數據庫系統自調優和自管理工具的需求增加,對數據庫自調優和自管理的研究也逐漸成為熱點。

5)移動數據管理。隨著移動互聯網的發展,智能手機、掌上型電腦等移動設備的出現,使得人們隨時隨地訪問信息的愿望得以實現。隨之而來的就是在移動計算環境中的數據管理問題,這個問題已成為目前分布式數據庫研究的一個新方向,即移動數據庫技術。

6)云數據庫。云數據庫是在軟件即服務(Software-as-a-service,SaaS)成為應用趨勢的大背景下發展起來的云計算技術,它極大地增強了數據庫的存儲能力,消除了人員、硬件和軟件的重復配置,具有高可擴展性和高可用性,是數據庫技術的未來發展方向。云數據庫的定義不盡相同,此處給出一種:云數據庫是部署和虛擬化在云計算環境中的數據庫。云數據的數據模型有兩種:鍵/值模型和關系模型。

2.數據庫技術的特點

(1)數據高度集成

數據處理應用系統中的數據源于企事業的多項實際業務,且數據之間相互關聯。如在一個商品供銷信息系統中,進貨數據來源于供貨、銷售數據來源于售貨等。對這些數據進行集中處理,保持相關數據之間的正確關聯,才能完成所需的綜合數據處理。利用數據庫技術和DBMS提供的數據處理功能,可實現多種數據的高度集成。

(2)數據廣泛共享

在數據庫應用系統中,通過網絡可將集中管理的多種數據共享。如供貨管理需要參考商品銷售管理系統中近期的銷售數據,確定進貨種類與數量,確定銷售單價又需要參照最近的進貨單價等,利用數據庫技術通過計算機網絡可實現數據廣泛共享。

(3)數據獨立性強、冗余低

數據獨立性是指數據庫中存儲的數據與應用處理程序之間相互獨立。傳統的數據處理應用系統中,應用程序攜帶相關數據包,致使修改維護程序與相關數據互相關聯影響,而且業務數據在多種不同數據文件中分別存儲,出現數據大量冗余且無法統一更新。數據庫技術可對所有數據集中管理,并利用有效的數據共享功能,不再需要各項業務單獨保存各自的數據文件,極大地減少了數據冗余。

(4)實施統一的數據標準

數據標準是指數據庫中數據項的名稱、數據類型、數據格式、有效數據的判定準則及要求等數據項特征值的取值規則。在實際應用中,以統一的數據標準進行實施。

(5)數據的完整性和安全性高

數據完整性(Data Integrity)是指數據的精確性(Accuracy)和可靠性(Reliability)。用于防止數據庫中存在不符合語義規定的數據,防止因錯誤數據的輸入/輸出造成無效操作或錯誤。DBMS具有用戶身份認證和數據完整性檢測機制,可以保障數據庫應用系統及數據的安全性、機密性和完整性。

(6)保證數據一致性

數據一致性(Data Consistency)通常是指關聯數據之間的邏輯關系正確性和同一性。存儲在數據庫中不同數據集合(表)的相同數據項必須具有相同的值。一個數據庫由多種數據文件組成,數據文件之間通過公共數據項相聯系,當對一個數據文件中的數據項更新時,相關聯文件中的對應數據項也必須自動更新,才能始終保持數據的一致性和正確性。通過DBMS可以自動實現對數據庫中的數據進行操作,保證增刪改等操作的一致性。

(7)應用程序開發維護效率高

在應用程序開發時,數據的獨立性可不必考慮軟件和數據關聯問題,以及所處理的數據組織等問題,減少了應用程序的開發與維護的工作量。只在應用系統開發初期,需要規劃設計數據庫中的數據集,規范數據庫中相關數據間的關聯。只有滿足規范化設計要求的數據庫,才能夠真正實現各類業務數據不同的應用需求。

3.數據庫技術的應用

數據庫技術研究和處理的基本對象是數據,涉及的主要內容包括4方面:一是通過DBMS對系統及業務數據相關的事務進行統一管理、控制和維護;二是按照指定的結構(數據模型)建立和組織相應的數據庫及其處理對象(數據表、視圖及索引等);三是業務數據處理操作,包括數據添加、修改、刪除、查詢、統計、報表和打印等;四是利用DBMS設計出能實現對數據庫中的業務數據進行分析和處理的應用系統,并進行綜合應用。

數據庫技術主要用于根據用戶需求自動處理、共享、管理和控制大量業務數據。隨著IT技術的快速發展,數據庫技術得到了廣泛深入的應用。進入21世紀現代信息化社會,由于信息(數據)無處不在且無處不用,所以,數據庫技術的應用更迅速、更廣泛、更深入,遍布各個領域、行業、業務部門和各個層面。網絡數據庫系統及數據庫應用軟件已成為信息化建設和應用中的重要支撐性產業,得到極為廣泛的應用,鑒于篇幅所限,在此僅介紹一些典型的應用案例。

討論思考:

1)DBMS的工作模式有哪些?

2)概述DBMS的主要功能。

3)DBMS模塊的組成有哪幾方面?

主站蜘蛛池模板: 云阳县| 莱西市| 莫力| 灯塔市| 保靖县| 双城市| 田东县| 德阳市| 洛浦县| 昌黎县| 溧水县| 金寨县| 龙山县| 荔浦县| 尼玛县| 云龙县| 兴海县| 石柱| 东乡| 汾西县| 辽阳县| 金秀| 龙江县| 玛纳斯县| 安多县| 芦溪县| 平利县| 隆林| 武平县| 砀山县| 秀山| 耒阳市| 老河口市| 瑞安市| 互助| 平舆县| 象山县| 民县| 文水县| 固镇县| 通江县|