- 數(shù)據(jù)庫(kù)系統(tǒng):原理、設(shè)計(jì)與編程(MOOC版)
- 陸鑫 張鳳荔 陳安龍
- 6010字
- 2019-12-27 14:53:50
1.2 數(shù)據(jù)庫(kù)技術(shù)的發(fā)展
數(shù)據(jù)庫(kù)技術(shù)是一種利用計(jì)算機(jī)組織、存儲(chǔ)和管理數(shù)據(jù)的軟件技術(shù)。它涉及研究數(shù)據(jù)庫(kù)的結(jié)構(gòu)、存儲(chǔ)、設(shè)計(jì)、管理、應(yīng)用的基本理論和實(shí)現(xiàn)方法,并利用這些理論方法對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行存取、計(jì)算、統(tǒng)計(jì)及分析等操作。
掃碼預(yù)習(xí)
1.2.1 數(shù)據(jù)管理技術(shù)的演化
在20世紀(jì)60年代末,計(jì)算機(jī)技術(shù)快速發(fā)展并被廣泛應(yīng)用,大量用戶提出對(duì)數(shù)據(jù)資源進(jìn)行存儲(chǔ)管理和數(shù)據(jù)存取處理的需求,由此產(chǎn)生了利用計(jì)算機(jī)進(jìn)行數(shù)據(jù)管理的原始數(shù)據(jù)庫(kù)技術(shù)。在當(dāng)時(shí),數(shù)據(jù)庫(kù)技術(shù)主要研究如何存儲(chǔ)、使用和管理數(shù)據(jù)。隨著計(jì)算機(jī)技術(shù)的發(fā)展,數(shù)據(jù)庫(kù)技術(shù)與計(jì)算機(jī)相關(guān)技術(shù)的發(fā)展相互滲透與相互促進(jìn),現(xiàn)已成為當(dāng)今計(jì)算機(jī)軟件領(lǐng)域發(fā)展最迅速、應(yīng)用最廣泛的技術(shù)。數(shù)據(jù)庫(kù)技術(shù)不僅應(yīng)用于數(shù)據(jù)資源存取管理,還應(yīng)用到信息檢索、數(shù)據(jù)倉(cāng)庫(kù)、數(shù)據(jù)挖掘、商業(yè)智能、大數(shù)據(jù)處理等領(lǐng)域。在利用計(jì)算機(jī)進(jìn)行數(shù)據(jù)管理的技術(shù)發(fā)展歷程中,數(shù)據(jù)管理經(jīng)歷了人工數(shù)據(jù)管理、文件系統(tǒng)管理、數(shù)據(jù)庫(kù)管理3個(gè)階段。
1.人工數(shù)據(jù)管理階段
在20世紀(jì)50年代以前,計(jì)算機(jī)主要用于科學(xué)計(jì)算。計(jì)算機(jī)外部存儲(chǔ)只有紙帶、卡片、磁帶等設(shè)備,沒(méi)有直接存取設(shè)備。計(jì)算機(jī)軟件只是一些操作控制程序,還沒(méi)有操作系統(tǒng)及數(shù)據(jù)管理軟件。計(jì)算機(jī)可處理的數(shù)據(jù)量小,數(shù)據(jù)無(wú)結(jié)構(gòu),數(shù)據(jù)依賴于特定的應(yīng)用程序,缺乏獨(dú)立性。在涉及數(shù)據(jù)處理的計(jì)算機(jī)程序中,程序員必須在代碼中進(jìn)行數(shù)據(jù)管理。因此,當(dāng)時(shí)的數(shù)據(jù)管理存在很大局限性,難以滿足應(yīng)用數(shù)據(jù)管理的要求。
2.文件系統(tǒng)管理階段
在20世紀(jì)50年代后期到60年代中期,新的計(jì)算機(jī)外部存儲(chǔ)設(shè)備如磁鼓、磁盤等出現(xiàn),它們可以用來(lái)長(zhǎng)久存儲(chǔ)程序與數(shù)據(jù),并支持直接數(shù)據(jù)塊存取。在這個(gè)時(shí)期,計(jì)算機(jī)軟件也得到快速發(fā)展,出現(xiàn)了控制計(jì)算機(jī)軟硬件運(yùn)行的操作系統(tǒng)軟件。在操作系統(tǒng)中,可使用數(shù)據(jù)文件方式來(lái)組織、存儲(chǔ)數(shù)據(jù),并采用文件系統(tǒng)工具管理各個(gè)獨(dú)立的數(shù)據(jù)文件。文件系統(tǒng)可以按照數(shù)據(jù)文件的名稱對(duì)其進(jìn)行訪問(wèn),既可對(duì)數(shù)據(jù)文件中的數(shù)據(jù)記錄進(jìn)行存取,也可對(duì)數(shù)據(jù)記錄進(jìn)行更新、插入和刪除。文件系統(tǒng)實(shí)現(xiàn)了數(shù)據(jù)在記錄內(nèi)的結(jié)構(gòu)化,即在數(shù)據(jù)文件的各個(gè)記錄內(nèi),數(shù)據(jù)項(xiàng)組成是一致。但是從整體看數(shù)據(jù)文件,數(shù)據(jù)記錄之間是無(wú)結(jié)構(gòu)的,不能處理數(shù)據(jù)記錄之間的關(guān)聯(lián)性。
在這個(gè)階段,用戶可以使用高級(jí)語(yǔ)言程序?qū)?shù)據(jù)文件進(jìn)行數(shù)據(jù)記錄的存取,解決了人工數(shù)據(jù)管理的限制,可以滿足應(yīng)用的基本數(shù)據(jù)管理要求。但在文件管理數(shù)據(jù)方式中,存在如下不足:①編寫(xiě)應(yīng)用程序管理數(shù)據(jù)的過(guò)程較煩瑣。②數(shù)據(jù)文件對(duì)應(yīng)用程序存在依賴,難以實(shí)現(xiàn)獨(dú)立。③不支持多用戶對(duì)數(shù)據(jù)文件并發(fā)訪問(wèn)。④不能實(shí)現(xiàn)數(shù)據(jù)文件的安全控制。⑤難以解決不同數(shù)據(jù)文件間的數(shù)據(jù)冗余。⑥在文件中,數(shù)據(jù)記錄之間缺少聯(lián)系,難以滿足用戶對(duì)數(shù)據(jù)的關(guān)聯(lián)訪問(wèn)需求。
3.數(shù)據(jù)庫(kù)管理階段
在20世紀(jì)60年代末期,計(jì)算機(jī)軟硬件技術(shù)得到較大發(fā)展:計(jì)算機(jī)處理能力得到較大提高,并且大容量磁盤設(shè)備開(kāi)始出現(xiàn);計(jì)算機(jī)軟件也出現(xiàn)專門管理數(shù)據(jù)的系統(tǒng)軟件——數(shù)據(jù)庫(kù)管理系統(tǒng)。這些技術(shù)都為實(shí)現(xiàn)大規(guī)模計(jì)算機(jī)數(shù)據(jù)管理提供了支持。在這個(gè)階段,用戶可使用數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)實(shí)現(xiàn)應(yīng)用系統(tǒng)的數(shù)據(jù)管理。應(yīng)用程序連接數(shù)據(jù)庫(kù)后,用戶可使用數(shù)據(jù)庫(kù)操作語(yǔ)言對(duì)其表中數(shù)據(jù)進(jìn)行操作。所有對(duì)數(shù)據(jù)庫(kù)的操作都由數(shù)據(jù)庫(kù)管理系統(tǒng)自動(dòng)去完成,應(yīng)用程序不需要考慮數(shù)據(jù)庫(kù)文件的物理操作和系統(tǒng)控制。數(shù)據(jù)庫(kù)管理與文件數(shù)據(jù)管理相比較,具有如下優(yōu)點(diǎn):①應(yīng)用程序與數(shù)據(jù)相互獨(dú)立,避免了應(yīng)用程序?qū)?shù)據(jù)的依賴性。②應(yīng)用程序訪問(wèn)數(shù)據(jù)庫(kù)使用標(biāo)準(zhǔn)語(yǔ)言操作,編程訪問(wèn)簡(jiǎn)單。③數(shù)據(jù)組織結(jié)構(gòu)化、共享性高、冗余小。④提供數(shù)據(jù)的安全訪問(wèn)機(jī)制,并保證數(shù)據(jù)的完整性、一致性、正確性。
因此,數(shù)據(jù)庫(kù)技術(shù)成為當(dāng)今計(jì)算機(jī)數(shù)據(jù)管理的基本技術(shù)。雖然數(shù)據(jù)庫(kù)技術(shù)從20世紀(jì)60年代末期到現(xiàn)在經(jīng)歷了幾十年發(fā)展,其技術(shù)也發(fā)生了許多變化,但數(shù)據(jù)庫(kù)組織與管理數(shù)據(jù)的基本思想是一致的,這說(shuō)明數(shù)據(jù)庫(kù)技術(shù)管理數(shù)據(jù)的生命力是長(zhǎng)久的。
1.2.2 數(shù)據(jù)庫(kù)技術(shù)的發(fā)展階段
數(shù)據(jù)模型是數(shù)據(jù)庫(kù)技術(shù)的核心基礎(chǔ),數(shù)據(jù)模型的發(fā)展演變可以作為數(shù)據(jù)庫(kù)技術(shù)發(fā)展階段的主要標(biāo)志。按照數(shù)據(jù)模型的發(fā)展演變過(guò)程,數(shù)據(jù)庫(kù)技術(shù)從出現(xiàn)到如今半個(gè)多世紀(jì)中,主要經(jīng)歷了3代:第一代是以層次數(shù)據(jù)模型和網(wǎng)狀數(shù)據(jù)模型為特征的數(shù)據(jù)庫(kù)技術(shù),第二代是以關(guān)系數(shù)據(jù)模型為特征的數(shù)據(jù)庫(kù)技術(shù),第三代是以面向?qū)ο髷?shù)據(jù)模型為主要特征的數(shù)據(jù)庫(kù)技術(shù)。目前數(shù)據(jù)庫(kù)技術(shù)進(jìn)入到第四代,數(shù)據(jù)庫(kù)技術(shù)與計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、人工智能技術(shù)、并行計(jì)算技術(shù)、多媒體技術(shù)、云計(jì)算技術(shù)、大數(shù)據(jù)技術(shù)等相互結(jié)合與相互促進(jìn),衍生出大量數(shù)據(jù)庫(kù)新技術(shù),其典型特征是采用非結(jié)構(gòu)化的數(shù)據(jù)模型處理大數(shù)據(jù)。
1.第一代數(shù)據(jù)庫(kù)技術(shù)
第一代數(shù)據(jù)庫(kù)技術(shù)出現(xiàn)于20世紀(jì)60年代末人們研制的層次模型數(shù)據(jù)庫(kù)系統(tǒng)和網(wǎng)狀模型數(shù)據(jù)庫(kù)系統(tǒng)。層次模型數(shù)據(jù)庫(kù)系統(tǒng)的典型代表是1968年 IBM公司研制出的世界上第一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)IMS(Information Management System)。該數(shù)據(jù)庫(kù)系統(tǒng)最早運(yùn)行在IBM 360/370計(jì)算機(jī)上。經(jīng)過(guò)多年技術(shù)改進(jìn)后,該系統(tǒng)至今還在 IBM 部分大型主機(jī)中使用。網(wǎng)狀模型數(shù)據(jù)庫(kù)系統(tǒng)的典型代表是1964年通用電器公司研制的網(wǎng)狀數(shù)據(jù)模型的數(shù)據(jù)庫(kù)管理系統(tǒng)IDS(Integrated Data System)。IDS奠定了網(wǎng)狀數(shù)據(jù)庫(kù)技術(shù)基礎(chǔ),并在當(dāng)時(shí)得到了廣泛的發(fā)行和應(yīng)用。
20世紀(jì)70年代初,美國(guó)數(shù)據(jù)庫(kù)系統(tǒng)語(yǔ)言協(xié)會(huì)CODASYL(Conference On Data System Language)下屬的數(shù)據(jù)庫(kù)任務(wù)組DBTG(DataBase Task Group)對(duì)數(shù)據(jù)庫(kù)技術(shù)方法進(jìn)行了系統(tǒng)研究,提出了若干報(bào)告(被稱為DBTG報(bào)告)。DBTG報(bào)告總結(jié)了數(shù)據(jù)庫(kù)技術(shù)的許多概念、方法和技術(shù)。在DBTG思想和方法的指引下,數(shù)據(jù)庫(kù)系統(tǒng)的實(shí)現(xiàn)技術(shù)不斷成熟,人們推出了許多商品化的數(shù)據(jù)庫(kù)系統(tǒng),它們都是基于層次模型和網(wǎng)狀模型的技術(shù)思想實(shí)現(xiàn)的。
2.第二代數(shù)據(jù)庫(kù)技術(shù)
第二代數(shù)據(jù)庫(kù)技術(shù)出現(xiàn)于20世紀(jì)70年代的關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)。1970年IBM公司San Jose研究實(shí)驗(yàn)室的研究員Edgar F. Codd發(fā)表《大型共享數(shù)據(jù)庫(kù)的關(guān)系模型》論文,首次提出了關(guān)系數(shù)據(jù)模型。隨后進(jìn)一步的研究成果建立了關(guān)系數(shù)據(jù)庫(kù)方法和關(guān)系數(shù)據(jù)庫(kù)理論,為關(guān)系數(shù)據(jù)庫(kù)技術(shù)奠定了理論基礎(chǔ)。Edgar F. Codd于1981年被授予ACM圖靈獎(jiǎng),其在關(guān)系數(shù)據(jù)庫(kù)研究方面的杰出貢獻(xiàn)被人們所認(rèn)可。
20世紀(jì)70年代是關(guān)系數(shù)據(jù)庫(kù)理論研究和原型開(kāi)發(fā)的時(shí)代,其中以IBM公司San Jose研究實(shí)驗(yàn)室開(kāi)發(fā)的System R和Berkeley大學(xué)研制的Ingres為典型代表。大量的理論成果和實(shí)踐經(jīng)驗(yàn)終于使關(guān)系數(shù)據(jù)庫(kù)從實(shí)驗(yàn)室走向了市場(chǎng),因此,人們把20世紀(jì)70年代稱為數(shù)據(jù)庫(kù)時(shí)代。20世紀(jì)80年代幾乎所有新開(kāi)發(fā)的數(shù)據(jù)庫(kù)系統(tǒng)產(chǎn)品均是關(guān)系數(shù)據(jù)庫(kù)軟件,其中涌現(xiàn)出了許多性能優(yōu)良的商品化關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),如DB2、Ingres、Oracle、Informix、Sybase等。這些商用數(shù)據(jù)庫(kù)系統(tǒng)使數(shù)據(jù)庫(kù)技術(shù)被日益廣泛地應(yīng)用到商業(yè)服務(wù)、企業(yè)管理、情報(bào)檢索、輔助決策等方面,成為實(shí)現(xiàn)信息系統(tǒng)數(shù)據(jù)管理的基本技術(shù)。
3.第三代數(shù)據(jù)庫(kù)技術(shù)
從20世紀(jì)80年代以來(lái),數(shù)據(jù)庫(kù)技術(shù)在商業(yè)上的巨大成功刺激了其他領(lǐng)域?qū)?shù)據(jù)庫(kù)技術(shù)需求的迅速增長(zhǎng)。這些新的領(lǐng)域?yàn)閿?shù)據(jù)庫(kù)應(yīng)用開(kāi)辟了新的天地,并在應(yīng)用中提出了一些新的數(shù)據(jù)管理需求,推動(dòng)了數(shù)據(jù)庫(kù)技術(shù)的研究與發(fā)展。
1990年,高級(jí)DBMS功能委員會(huì)發(fā)表了《第三代數(shù)據(jù)庫(kù)系統(tǒng)宣言》,提出了第三代數(shù)據(jù)庫(kù)管理系統(tǒng)應(yīng)具有的3個(gè)基本特征:支持?jǐn)?shù)據(jù)管理、對(duì)象管理和知識(shí)管理;必須保持或繼承第二代數(shù)據(jù)庫(kù)系統(tǒng)的技術(shù);必須對(duì)其他系統(tǒng)開(kāi)放。
面向?qū)ο髷?shù)據(jù)庫(kù)技術(shù)成為第三代數(shù)據(jù)庫(kù)技術(shù)發(fā)展的主要特征。傳統(tǒng)的關(guān)系數(shù)據(jù)模型無(wú)法描述現(xiàn)實(shí)復(fù)雜的數(shù)據(jù)實(shí)體,而面向?qū)ο蟮臄?shù)據(jù)模型由于吸收了已經(jīng)成熟的面向?qū)ο蟪绦蛟O(shè)計(jì)方法學(xué)的核心概念和基本思想,因此符合人類認(rèn)識(shí)世界的一般方法,更適合描述現(xiàn)實(shí)世界復(fù)雜的數(shù)據(jù)關(guān)系。面向?qū)ο髷?shù)據(jù)庫(kù)技術(shù)可以解決關(guān)系數(shù)據(jù)庫(kù)技術(shù)存在的數(shù)據(jù)模型簡(jiǎn)單、數(shù)據(jù)類型有限、難以支持復(fù)雜數(shù)據(jù)處理問(wèn)題。不過(guò),面向?qū)ο髷?shù)據(jù)庫(kù)技術(shù)不具備統(tǒng)一的數(shù)據(jù)模式和形式化理論,缺少嚴(yán)格的數(shù)學(xué)理論基礎(chǔ),難以支持廣泛使用的結(jié)構(gòu)化查詢語(yǔ)言SQL。在實(shí)際應(yīng)用中,面向?qū)ο髷?shù)據(jù)庫(kù)軟件產(chǎn)品并沒(méi)有真正得到推廣。相反,一些在關(guān)系數(shù)據(jù)庫(kù)基礎(chǔ)上擴(kuò)展面向?qū)ο蠊δ艿膶?duì)象-關(guān)系數(shù)據(jù)庫(kù)產(chǎn)品(如PostgreSQL)則得到實(shí)際應(yīng)用。
1.2.3 數(shù)據(jù)庫(kù)領(lǐng)域的新技術(shù)
1.NoSQL數(shù)據(jù)庫(kù)
傳統(tǒng)的關(guān)系數(shù)據(jù)庫(kù)采用二維表結(jié)構(gòu)存儲(chǔ)數(shù)據(jù),具有數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)單、訪問(wèn)操作方便等特點(diǎn),但它僅支持簡(jiǎn)單數(shù)據(jù)類型存取。在采用關(guān)系數(shù)據(jù)庫(kù)實(shí)現(xiàn)信息系統(tǒng)的技術(shù)方案中,所有信息數(shù)據(jù)都需要進(jìn)行結(jié)構(gòu)化存儲(chǔ)處理,才能在關(guān)系數(shù)據(jù)庫(kù)中進(jìn)行數(shù)據(jù)存取訪問(wèn)。而當(dāng)今大量互聯(lián)網(wǎng)應(yīng)用數(shù)據(jù)以非結(jié)構(gòu)形式存在,如網(wǎng)頁(yè)信息、文檔信息、報(bào)表信息、音視頻信息、即時(shí)通信消息等。若海量的非結(jié)構(gòu)化數(shù)據(jù)時(shí)刻都在進(jìn)行結(jié)構(gòu)化處理,勢(shì)必帶來(lái)系統(tǒng)對(duì)信息數(shù)據(jù)處理的開(kāi)銷和時(shí)效性不滿足需求等問(wèn)題。NoSQL 數(shù)據(jù)庫(kù)技術(shù)是一類針對(duì)大量互聯(lián)網(wǎng)應(yīng)用的非結(jié)構(gòu)化數(shù)據(jù)處理需求而產(chǎn)生的一種分布式非關(guān)系數(shù)據(jù)庫(kù)技術(shù)。與關(guān)系數(shù)據(jù)庫(kù)技術(shù)相比,突破了關(guān)系數(shù)據(jù)庫(kù)結(jié)構(gòu)中必須等長(zhǎng)存儲(chǔ)各記錄行數(shù)據(jù)的限制,它支持重復(fù)字段、子字段及變長(zhǎng)字段,并可實(shí)現(xiàn)對(duì)變長(zhǎng)數(shù)據(jù)和重復(fù)數(shù)據(jù)類型進(jìn)行處理,這在處理各類文檔、報(bào)表、圖像、音視頻等非結(jié)構(gòu)化數(shù)據(jù)中有著傳統(tǒng)關(guān)系數(shù)據(jù)庫(kù)所無(wú)法比擬的優(yōu)勢(shì)。因此,NoSQL數(shù)據(jù)庫(kù)技術(shù)成為支持大數(shù)據(jù)應(yīng)用的數(shù)據(jù)管理主流技術(shù)。
2.NewSQL數(shù)據(jù)庫(kù)
雖然 NoSQL 數(shù)據(jù)庫(kù)技術(shù)可以有效解決非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)與大數(shù)據(jù)操作,具有良好的擴(kuò)展性和靈活性,但它不支持廣泛使用的結(jié)構(gòu)化數(shù)據(jù)訪問(wèn) SQL,同時(shí)也不支持?jǐn)?shù)據(jù)庫(kù)事務(wù)的ACID(原子性、一致性、隔離性和持久性)特性操作。另外,不同的NoSQL數(shù)據(jù)庫(kù)都有各自的查詢語(yǔ)言和數(shù)據(jù)模型,這使得開(kāi)發(fā)者很難規(guī)范應(yīng)用程序接口。因此,NoSQL數(shù)據(jù)庫(kù)技術(shù)僅解決了互聯(lián)網(wǎng)應(yīng)用的非結(jié)構(gòu)化數(shù)據(jù)處理需求,但對(duì)企業(yè)應(yīng)用的結(jié)構(gòu)化數(shù)據(jù)管理并不適合。NewSQL 數(shù)據(jù)庫(kù)技術(shù)是一種在 NoSQL 數(shù)據(jù)庫(kù)技術(shù)基礎(chǔ)上同時(shí)支持關(guān)系數(shù)據(jù)庫(kù)訪問(wèn)的技術(shù),這類數(shù)據(jù)庫(kù)具有 NoSQL 對(duì)海量數(shù)據(jù)的分布式存儲(chǔ)管理能力,還保持了兼容傳統(tǒng)關(guān)系數(shù)據(jù)庫(kù)的ACID和SQL等特性。NewSQL數(shù)據(jù)庫(kù)技術(shù)不但支持非結(jié)構(gòu)化數(shù)據(jù)管理的大數(shù)據(jù)應(yīng)用,也支持結(jié)構(gòu)化數(shù)據(jù)管理的關(guān)系數(shù)據(jù)庫(kù)應(yīng)用,它將成為未來(lái)主流的數(shù)據(jù)庫(kù)技術(shù)。
3.領(lǐng)域數(shù)據(jù)庫(kù)
計(jì)算機(jī)領(lǐng)域中各種新興技術(shù)的發(fā)展對(duì)數(shù)據(jù)庫(kù)技術(shù)產(chǎn)生了重大影響。數(shù)據(jù)庫(kù)技術(shù)與計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、并行計(jì)算機(jī)技術(shù)、人工智能技術(shù)、多媒體技術(shù)、地理空間技術(shù)等相互滲透,相互結(jié)合,使數(shù)據(jù)庫(kù)新技術(shù)內(nèi)容層出不窮,如實(shí)時(shí)數(shù)據(jù)庫(kù)、分布式數(shù)據(jù)庫(kù)、并行數(shù)據(jù)庫(kù)、智能數(shù)據(jù)庫(kù)、多媒體數(shù)據(jù)庫(kù)、空間數(shù)據(jù)庫(kù)等。由此,數(shù)據(jù)庫(kù)技術(shù)的許多概念、技術(shù)方法,甚至某些原理都有了重大的發(fā)展和變化,形成了數(shù)據(jù)庫(kù)領(lǐng)域眾多的研究分支和方向。
此外,數(shù)據(jù)庫(kù)應(yīng)用領(lǐng)域也先后出現(xiàn)工程數(shù)據(jù)庫(kù)、統(tǒng)計(jì)數(shù)據(jù)庫(kù)、科學(xué)數(shù)據(jù)庫(kù)、空間數(shù)據(jù)庫(kù)、地理信息數(shù)據(jù)庫(kù)等領(lǐng)域數(shù)據(jù)庫(kù)。這些領(lǐng)域數(shù)據(jù)庫(kù)在技術(shù)實(shí)現(xiàn)原理上與通用數(shù)據(jù)庫(kù)沒(méi)有多大的區(qū)別,但它們與特定應(yīng)用領(lǐng)域相結(jié)合,加強(qiáng)了數(shù)據(jù)庫(kù)系統(tǒng)對(duì)有關(guān)應(yīng)用領(lǐng)域的支撐能力,尤其表現(xiàn)在數(shù)據(jù)模型、操作語(yǔ)言、數(shù)據(jù)訪問(wèn)方面對(duì)應(yīng)用領(lǐng)域的緊密結(jié)合。隨著數(shù)據(jù)庫(kù)技術(shù)的發(fā)展和數(shù)據(jù)庫(kù)技術(shù)在工程領(lǐng)域中的廣泛應(yīng)用,更多的領(lǐng)域?qū)⒊霈F(xiàn)領(lǐng)域數(shù)據(jù)庫(kù)技術(shù)。
4.數(shù)據(jù)倉(cāng)庫(kù)與數(shù)據(jù)挖掘
數(shù)據(jù)庫(kù)技術(shù)并不僅僅局限在操作型數(shù)據(jù)庫(kù)領(lǐng)域。在數(shù)據(jù)庫(kù)技術(shù)領(lǐng)域中,對(duì)大量應(yīng)用的歷史數(shù)據(jù)進(jìn)行有效存儲(chǔ)與聯(lián)機(jī)分析,已成為機(jī)構(gòu)信息服務(wù)的重要需求。數(shù)據(jù)倉(cāng)庫(kù)(Data Warehouse)是在數(shù)據(jù)庫(kù)已經(jīng)存儲(chǔ)了長(zhǎng)時(shí)間的數(shù)據(jù)情況下,需要對(duì)積累的大量歷史數(shù)據(jù)進(jìn)行有效的存儲(chǔ)組織,以便實(shí)現(xiàn)決策分析所需要的聯(lián)機(jī)分析與數(shù)據(jù)挖掘處理。數(shù)據(jù)倉(cāng)庫(kù)技術(shù)涉及研究與解決大量歷史數(shù)據(jù)情況下如何通過(guò)有效存儲(chǔ)與高效訪問(wèn)來(lái)支持?jǐn)?shù)據(jù)聯(lián)機(jī)分析與數(shù)據(jù)挖掘問(wèn)題。數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)管理具有面向主題、集成性、穩(wěn)定性和時(shí)變性等特征,其數(shù)據(jù)來(lái)自于若干分散的操作型數(shù)據(jù)庫(kù)。通過(guò)對(duì)這些數(shù)據(jù)源進(jìn)行數(shù)據(jù)抽取與數(shù)據(jù)清理處理,經(jīng)過(guò)系統(tǒng)加工、匯總和整理得到的主題數(shù)據(jù)將被存放到特定模式的數(shù)據(jù)庫(kù)中以備聯(lián)機(jī)分析所使用。在數(shù)據(jù)倉(cāng)庫(kù)中,主要工作是對(duì)歷史數(shù)據(jù)進(jìn)行大量的查詢操作或聯(lián)機(jī)統(tǒng)計(jì)分析處理,以及定期的數(shù)據(jù)加載、刷新,很少進(jìn)行數(shù)據(jù)更新和刪除操作。
數(shù)據(jù)挖掘(Data Mining)是一種建立在數(shù)據(jù)倉(cāng)庫(kù)基礎(chǔ)上對(duì)大量數(shù)據(jù)進(jìn)行模式或規(guī)律挖掘,從中發(fā)現(xiàn)有價(jià)值信息的技術(shù)。它主要基于人工智能、機(jī)器學(xué)習(xí)、模式識(shí)別、統(tǒng)計(jì)學(xué)、數(shù)據(jù)庫(kù)、可視化等技術(shù),對(duì)大量數(shù)據(jù)進(jìn)行自動(dòng)化分析,做出歸納性的推理,從中挖掘出潛在的模式,幫助決策者進(jìn)行策略分析,防范或減少風(fēng)險(xiǎn),做出正確的決策。數(shù)據(jù)挖掘一般包含數(shù)據(jù)預(yù)處理、規(guī)律尋找和結(jié)果可視化表示3個(gè)步驟。數(shù)據(jù)預(yù)處理是從相關(guān)的數(shù)據(jù)源中選取所需的數(shù)據(jù)并整合成用于數(shù)據(jù)挖掘的數(shù)據(jù)集;規(guī)律尋找是用某種方法將數(shù)據(jù)集所含的規(guī)律找出來(lái);結(jié)果可視化表示是盡可能以用戶可理解的可視化方式將規(guī)律表示出來(lái)。
5.商業(yè)智能
商業(yè)智能(Business Intelligence)是一種利用現(xiàn)代數(shù)據(jù)倉(cāng)庫(kù)技術(shù)、聯(lián)機(jī)分析處理技術(shù)、數(shù)據(jù)挖掘等技術(shù)對(duì)商業(yè)信息系統(tǒng)中積累的大量數(shù)據(jù)進(jìn)行數(shù)據(jù)分析以實(shí)現(xiàn)商業(yè)價(jià)值的技術(shù)。用戶利用商業(yè)智能軟件工具可以將來(lái)自商業(yè)信息系統(tǒng)的實(shí)時(shí)業(yè)務(wù)數(shù)據(jù)和歷史數(shù)據(jù)進(jìn)行數(shù)據(jù)分析和數(shù)據(jù)挖掘處理,獲取有價(jià)值的分析結(jié)論和信息,輔助決策者做出正確且明智的決定。商業(yè)智能主要包括對(duì)商業(yè)信息的搜集、管理和分析過(guò)程,目的是使商業(yè)機(jī)構(gòu)的各級(jí)決策者獲得商業(yè)運(yùn)營(yíng)信息或規(guī)律洞察力,促使他們做出對(duì)機(jī)構(gòu)更有利的決策。商業(yè)智能的技術(shù)實(shí)現(xiàn)涉及軟件、硬件、咨詢服務(wù)及應(yīng)用,其基本體系結(jié)構(gòu)包括數(shù)據(jù)倉(cāng)庫(kù)、聯(lián)機(jī)分析處理和數(shù)據(jù)挖掘3個(gè)部分。商業(yè)智能是將來(lái)自機(jī)構(gòu)不同業(yè)務(wù)系統(tǒng)的數(shù)據(jù)進(jìn)行清理,以保證數(shù)據(jù)的正確性,然后經(jīng)過(guò)抽取(Extraction)、轉(zhuǎn)換(Transformation)和裝載(Load),合并到一個(gè)企業(yè)級(jí)數(shù)據(jù)倉(cāng)庫(kù)里,從而得到機(jī)構(gòu)數(shù)據(jù)的一個(gè)全局視圖。在此基礎(chǔ)上利用合適的查詢和分析工具、數(shù)據(jù)挖掘工具對(duì)其進(jìn)行分析和處理,獲得有價(jià)值的商業(yè)信息與知識(shí),最后將商業(yè)信息與知識(shí)呈現(xiàn)給決策者,為決策者的決策過(guò)程提供輔助支持。
6.大數(shù)據(jù)分析處理技術(shù)
大數(shù)據(jù)分析處理技術(shù)是繼數(shù)據(jù)庫(kù)、數(shù)據(jù)倉(cāng)庫(kù)、數(shù)據(jù)挖掘、商業(yè)智能等數(shù)據(jù)處理技術(shù)之后的又一個(gè)熱點(diǎn)技術(shù)。大數(shù)據(jù)分析處理技術(shù)是一種解決傳統(tǒng)數(shù)據(jù)分析處理技術(shù)難以在規(guī)定時(shí)間完成大規(guī)模復(fù)雜數(shù)據(jù)分析處理的技術(shù)。傳統(tǒng)的數(shù)據(jù)挖掘、商業(yè)智能技術(shù)雖然也能針對(duì)大規(guī)模數(shù)據(jù)集進(jìn)行分析處理,但它們處理的數(shù)據(jù)類型有限,也不能快速處理海量的非結(jié)構(gòu)化數(shù)據(jù)。在當(dāng)前移動(dòng)互聯(lián)網(wǎng)、物聯(lián)網(wǎng)、云計(jì)算、人工智能快速發(fā)展時(shí)代,每時(shí)每刻都在產(chǎn)生大量非結(jié)構(gòu)化數(shù)據(jù),如傳感數(shù)據(jù)、即時(shí)通信數(shù)據(jù)、交易數(shù)據(jù)、多媒體數(shù)據(jù)等不同類型數(shù)據(jù)。如何快速地從中分析出有價(jià)值的信息,成為大數(shù)據(jù)分析處理需要解決的主要問(wèn)題。按照業(yè)界普遍認(rèn)同的定義,大數(shù)據(jù)(Big Data)是指數(shù)據(jù)規(guī)模及其復(fù)雜性難以使用傳統(tǒng)數(shù)據(jù)管理軟件以合理成本及可以接受的時(shí)限對(duì)其進(jìn)行數(shù)據(jù)分析的數(shù)據(jù)集。大數(shù)據(jù)具有數(shù)據(jù)體量大、數(shù)據(jù)類型繁多、數(shù)據(jù)處理速度要求快、價(jià)值密度低等特點(diǎn)。因此,大數(shù)據(jù)分析處理技術(shù)需要整合云存儲(chǔ)、云計(jì)算、分布式數(shù)據(jù)庫(kù)、數(shù)據(jù)倉(cāng)庫(kù)、數(shù)據(jù)挖掘、機(jī)器學(xué)習(xí)等技術(shù),才能實(shí)現(xiàn)有價(jià)值信息的數(shù)據(jù)分析處理。大數(shù)據(jù)分析處理核心價(jià)值在于對(duì)海量數(shù)據(jù)進(jìn)行分布式存儲(chǔ)、計(jì)算與分析處理,從而獲得有價(jià)值的信息。相比現(xiàn)有數(shù)據(jù)分析處理技術(shù)而言,大數(shù)據(jù)分析處理技術(shù)具有快速、廉價(jià)、性能強(qiáng)等綜合優(yōu)勢(shì)。
課堂討論——本節(jié)重點(diǎn)與難點(diǎn)知識(shí)問(wèn)題
1.為什么關(guān)系數(shù)據(jù)庫(kù)不適合大數(shù)據(jù)應(yīng)用處理?
2.結(jié)構(gòu)化數(shù)據(jù)與非結(jié)構(gòu)化數(shù)據(jù)有何區(qū)別?
3.NoSQL數(shù)據(jù)庫(kù)與NewSQL數(shù)據(jù)庫(kù)有何區(qū)別?
4.通用數(shù)據(jù)庫(kù)與領(lǐng)域數(shù)據(jù)庫(kù)有何區(qū)別?
5.數(shù)據(jù)庫(kù)與數(shù)據(jù)倉(cāng)庫(kù)有何區(qū)別?
6.大數(shù)據(jù)分析與數(shù)據(jù)挖掘有何區(qū)別?
- 數(shù)據(jù)浪潮
- 使用GitOps實(shí)現(xiàn)Kubernetes的持續(xù)部署:模式、流程及工具
- Learning Spring Boot
- Hadoop大數(shù)據(jù)實(shí)戰(zhàn)權(quán)威指南(第2版)
- SQL優(yōu)化最佳實(shí)踐:構(gòu)建高效率Oracle數(shù)據(jù)庫(kù)的方法與技巧
- Hands-On Mathematics for Deep Learning
- 計(jì)算機(jī)應(yīng)用基礎(chǔ)教程上機(jī)指導(dǎo)與習(xí)題集(微課版)
- 云數(shù)據(jù)中心網(wǎng)絡(luò)與SDN:技術(shù)架構(gòu)與實(shí)現(xiàn)
- Power BI智能數(shù)據(jù)分析與可視化從入門到精通
- Gideros Mobile Game Development
- Access 2010數(shù)據(jù)庫(kù)程序設(shè)計(jì)實(shí)踐教程
- 數(shù)據(jù)指標(biāo)體系:構(gòu)建方法與應(yīng)用實(shí)踐
- 推薦系統(tǒng)全鏈路設(shè)計(jì):原理解讀與業(yè)務(wù)實(shí)踐
- Practical Convolutional Neural Networks
- 數(shù)據(jù)中心UPS系統(tǒng)運(yùn)維