国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

大數(shù)據(jù)時代的數(shù)據(jù)庫原理課程革新

2019-08-07 06:40:12雷小鋒
計算機教育 2019年7期
關(guān)鍵詞:鍵值數(shù)據(jù)模型數(shù)據(jù)結(jié)構(gòu)

雷小鋒

(中國礦業(yè)大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,江蘇 徐州 221116)

0 引 言

數(shù)據(jù)庫原理是高等院校計算機相關(guān)專業(yè)的核心基礎(chǔ)課程,開設(shè)歷史悠久,主要圍繞關(guān)系數(shù)據(jù)模型講授數(shù)據(jù)庫的基本概念、基礎(chǔ)理論以及數(shù)據(jù)庫設(shè)計、操作和管理的方法,使學(xué)生在掌握數(shù)據(jù)庫系統(tǒng)理論基礎(chǔ)上具有設(shè)計和使用關(guān)系數(shù)據(jù)庫的能力。然而,隨著互聯(lián)網(wǎng)和大數(shù)據(jù)時代的來臨,數(shù)據(jù)庫理論和技術(shù)發(fā)生了巨大變化,具有更為豐富的內(nèi)涵和外延,數(shù)據(jù)庫原理課程教學(xué)內(nèi)容的革新刻不容緩。

1 現(xiàn)狀和問題

大數(shù)據(jù)時代以數(shù)據(jù)為中心的理念深入人心,數(shù)據(jù)成為最重要的價值資源。數(shù)據(jù)的海量乃至全量化促使數(shù)據(jù)管理和處理技術(shù)發(fā)生一系列革新,突破了以關(guān)系模型為基礎(chǔ)的傳統(tǒng)關(guān)系數(shù)據(jù)庫理論藩籬,發(fā)展出一系列面向半結(jié)構(gòu)化以及非結(jié)構(gòu)化數(shù)據(jù)、以高可擴展和高可用性為特征的分布式數(shù)據(jù)庫技術(shù)和產(chǎn)品(如表1),極大地拓展了數(shù)據(jù)組織存儲和管理的理論、方法和技術(shù)。數(shù)據(jù)庫技術(shù)進入按用戶需求自由定制的互聯(lián)網(wǎng)時代,話語權(quán)不再被關(guān)系模型和少數(shù)軟件廠商所統(tǒng)治,相應(yīng)的理論和技術(shù)需要在新的邏輯框架下重建秩序。

1.1 數(shù)據(jù)庫原理課程教學(xué)現(xiàn)狀

互聯(lián)網(wǎng)和大數(shù)據(jù)時代用戶主體意識全面回歸,期待根據(jù)自身數(shù)據(jù)管理需求自由裁量定制數(shù)據(jù)管理系統(tǒng),導(dǎo)致數(shù)據(jù)庫技術(shù)發(fā)生了巨大變化,大規(guī)模數(shù)據(jù)的分布式存儲組織和分析在信息系統(tǒng)設(shè)計與開發(fā)中是常見的場景,NoSQL和NewSQL等數(shù)據(jù)庫產(chǎn)品在互聯(lián)網(wǎng)、電子商務(wù)系統(tǒng)中已有廣泛應(yīng)用,工業(yè)界和學(xué)術(shù)界都迫切需要具有大數(shù)據(jù)處理思維和能力、全面了解掌握各類數(shù)據(jù)庫技術(shù)的人才。

在開源社區(qū)項目“程序員技能圖譜”中給出數(shù)據(jù)庫工程師應(yīng)該掌握關(guān)系、KV型、文檔、列存儲以及內(nèi)存等多種類型數(shù)據(jù)庫的原理及技術(shù)(索引結(jié)構(gòu)、事務(wù)機制、封鎖技術(shù)、備份與恢復(fù)技術(shù)、高可用技術(shù)、優(yōu)化技術(shù)等),此外還要求具備網(wǎng)絡(luò)、開發(fā)語言、硬件、運維工具等方面的技能。

表1 數(shù)據(jù)庫技術(shù)發(fā)展演化階段

然而,當(dāng)前的數(shù)據(jù)庫原理課程教學(xué)卻沒有跟上數(shù)據(jù)庫技術(shù)發(fā)展的步伐,依然堅持著以關(guān)系數(shù)據(jù)模型和關(guān)系數(shù)據(jù)庫為主的有限教學(xué)范疇[4],已經(jīng)不能反映數(shù)據(jù)庫工業(yè)界的發(fā)展,人才培養(yǎng)與工業(yè)界嚴重脫節(jié)。首先,圍繞著關(guān)系數(shù)據(jù)模型,局限于嚴格的結(jié)構(gòu)化表單型數(shù)據(jù),忽視了現(xiàn)實實踐中大量的半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)的管理和處理需求。其次,面向嚴格的ACID事務(wù)模型,忽視了數(shù)據(jù)庫工程實踐中大量可以放松事務(wù)要求的應(yīng)用場景,如大量密集的數(shù)據(jù)寫入、OLAP分析等;忽視數(shù)據(jù)庫部署運維過程中數(shù)據(jù)體量巨大情況下的工程實踐問題,如讀寫性能退化問題、單點故障問題、系統(tǒng)可擴展性和可用性問題;數(shù)據(jù)庫新技術(shù)介紹泛泛而談,缺乏一個能夠統(tǒng)一容納各類數(shù)據(jù)庫理論和技術(shù)的整體框架體系。

1.2 數(shù)據(jù)庫原理課程革新目標(biāo)

綜上所述,數(shù)據(jù)庫原理課程的教學(xué)內(nèi)容亟待革新,以反映數(shù)據(jù)庫技術(shù)的發(fā)展和軟件工業(yè)實踐的需求。

(1)以數(shù)據(jù)結(jié)構(gòu)課程理論為基礎(chǔ),從數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)管理操作、數(shù)據(jù)管理約束3個維度出發(fā)建立大一統(tǒng)的數(shù)據(jù)管理觀念,在統(tǒng)一數(shù)據(jù)管理觀的框架下系統(tǒng)性梳理人類不斷發(fā)展的數(shù)據(jù)管理需求、典型的數(shù)據(jù)管理應(yīng)用場景和數(shù)據(jù)庫技術(shù),使學(xué)生能夠在統(tǒng)一的思維框架下分析理解各種數(shù)據(jù)庫技術(shù)。

(2)根據(jù)統(tǒng)一數(shù)據(jù)管理觀,從數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)管理操作、數(shù)據(jù)管理約束3個維度對數(shù)據(jù)庫技術(shù)進行分類整理,面向典型的數(shù)據(jù)管理應(yīng)用場景建立數(shù)據(jù)庫理論和技術(shù)的知識分類體系。

(3)在數(shù)據(jù)庫理論和技術(shù)的知識分類體系下,自頂向下、由淺入深建立數(shù)據(jù)庫原理課程的教學(xué)內(nèi)容的拓撲結(jié)構(gòu)和過程框架。關(guān)系數(shù)據(jù)庫只是統(tǒng)一分類體系下的一個技術(shù)分支。

(4)緊密結(jié)合軟件開發(fā)實踐,以具體軟件系統(tǒng)的需求實例為主線引導(dǎo)統(tǒng)一數(shù)據(jù)管理觀念、統(tǒng)一數(shù)據(jù)結(jié)構(gòu)觀念的建立,引導(dǎo)特定數(shù)據(jù)庫技術(shù)的講解和應(yīng)用。

2 統(tǒng)一數(shù)據(jù)管理觀的建立

數(shù)據(jù)庫原理課程教學(xué)的主要問題是把“數(shù)據(jù)”局限為嚴格的結(jié)構(gòu)化表單數(shù)據(jù),忽視了現(xiàn)實實踐中數(shù)據(jù)類型的多樣性和數(shù)據(jù)管理需求的多樣性,因此數(shù)據(jù)庫原理課程內(nèi)容革新的首要任務(wù)是回歸到“數(shù)據(jù)庫”的數(shù)據(jù)結(jié)構(gòu)本質(zhì)上,系統(tǒng)性地梳理數(shù)據(jù)的存儲組織方式和管理需求,建立統(tǒng)一的數(shù)據(jù)管理觀。

2.1 數(shù)據(jù)庫是數(shù)據(jù)結(jié)構(gòu)理論的自然推廣和應(yīng)用

數(shù)據(jù)結(jié)構(gòu)是相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合,是計算機存儲、組織數(shù)據(jù)的方式。數(shù)據(jù)庫無論如何復(fù)雜多變都脫離不了其數(shù)據(jù)結(jié)構(gòu)的本質(zhì),因此從數(shù)據(jù)結(jié)構(gòu)的理論和概念出發(fā),定義和理解數(shù)據(jù)庫,可以推斷出任意的數(shù)據(jù)庫都應(yīng)該具備3個層面上的要素。

(1)數(shù)據(jù)結(jié)構(gòu):數(shù)據(jù)庫是按某種方式對數(shù)據(jù)進行組織和持久存儲的數(shù)據(jù)結(jié)構(gòu)。

(2)數(shù)據(jù)管理操作:數(shù)據(jù)庫提供了對數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)的存取訪問操作,主要是數(shù)據(jù)的增刪改查操作。

(3)數(shù)據(jù)管理約束:數(shù)據(jù)庫的存取訪問操作必須滿足一系列約束,如保證數(shù)據(jù)不丟失、不被篡改等。

2.2 數(shù)據(jù)的組織存儲方式通過數(shù)據(jù)模型表達

數(shù)據(jù)庫是一種數(shù)據(jù)結(jié)構(gòu),在數(shù)據(jù)結(jié)構(gòu)中數(shù)據(jù)元素如何組織存儲,取決于人類如何觀察、理解數(shù)據(jù)。從物理層面上看,數(shù)據(jù)就是比特流;進一步,數(shù)據(jù)是記錄事物信息的符號序列。在計算機科學(xué)領(lǐng)域,數(shù)據(jù)是所有能被輸入計算機且能被計算機處理的符號序列,是計算機操作的對象的總稱[5]。

定義1:數(shù)據(jù)的鍵和值。單純的比特流或符號序列丟失了數(shù)據(jù)的物理含義,如符號序列“2010-10-01”本身沒有意義,需要給數(shù)據(jù)附加一個說明物理含義的注解(“生日”),稱為數(shù)據(jù)的鍵(Key)。比特流或符號序列稱為數(shù)據(jù)的值(Value)。一個數(shù)據(jù)必須同時具有一對鍵和值才有意義。可以看出,鍵值對(Key-Value)是最基礎(chǔ)的數(shù)據(jù)組織方式,任意數(shù)據(jù)都可以表示為鍵值對的集合。

定義2:鍵值數(shù)據(jù)模型。把數(shù)據(jù)組織成鍵值對集合的數(shù)據(jù)模型,稱為鍵值數(shù)據(jù)模型,簡稱K-V數(shù)據(jù)模型。

定義3:行列二維表、關(guān)系數(shù)據(jù)模型、列式存儲數(shù)據(jù)模型。以數(shù)據(jù)的值為行,數(shù)據(jù)的鍵為列,把鍵值對集合組織成行列二維表的形式并按行進行數(shù)據(jù)組織存儲的數(shù)據(jù)模型稱為關(guān)系數(shù)據(jù)模型。如果以列為單位進行數(shù)據(jù)組織存儲,這種數(shù)據(jù)模型稱為列式存儲數(shù)據(jù)模型。

定義4:文檔和文檔數(shù)據(jù)模型。以嵌套的鍵值對的形式將數(shù)據(jù)組織成文檔(Document),每個文檔對應(yīng)一條數(shù)據(jù)記錄。這種通過文檔集合來組織存儲數(shù)據(jù)的數(shù)據(jù)模型,稱為文檔數(shù)據(jù)模型。

定義5:圖和圖數(shù)據(jù)模型。將數(shù)據(jù)元素表示為頂點,數(shù)據(jù)元素之間的關(guān)系表示為邊,就構(gòu)成了數(shù)據(jù)結(jié)構(gòu)中的圖,稱為圖數(shù)據(jù)模型。

2.3 數(shù)據(jù)管理是在一定約束下對數(shù)據(jù)庫的存取訪問操作

數(shù)據(jù)管理是指對數(shù)據(jù)的組織、編目、定位、存儲、檢索和維護等工作。計算機數(shù)據(jù)管理,是指利用計算機軟硬件技術(shù)對數(shù)據(jù)進行有效收集、存儲、處理和應(yīng)用的過程。

具體到數(shù)據(jù)庫的上下文,數(shù)據(jù)管理是指在滿足一定約束的前提下把數(shù)據(jù)寫入數(shù)據(jù)庫(增加數(shù)據(jù)、刪除數(shù)據(jù)、修改數(shù)據(jù))以及從數(shù)據(jù)庫中查詢出所需數(shù)據(jù)的過程,因此數(shù)據(jù)管理蘊含如下含義。

(1)數(shù)據(jù)管理操作:包括數(shù)據(jù)結(jié)構(gòu)的建立和維護,數(shù)據(jù)寫入維護(數(shù)據(jù)的增加、刪除、修改,統(tǒng)稱為數(shù)據(jù)更新),數(shù)據(jù)的讀出(數(shù)據(jù)查詢)。

(2)數(shù)據(jù)管理約束:數(shù)據(jù)管理操作必須滿足約束,如高效、方便且不會導(dǎo)致數(shù)據(jù)丟失、不一致、竊取和篡改,數(shù)據(jù)訪問服務(wù)不會中斷等要求。

定義6:數(shù)據(jù)庫管理系統(tǒng)(DBMS),用于在數(shù)據(jù)管理約束下對數(shù)據(jù)庫執(zhí)行數(shù)據(jù)管理操作的軟件系統(tǒng)。根據(jù)數(shù)據(jù)模型的不同,可以把數(shù)據(jù)庫管理系統(tǒng)劃分為鍵值、關(guān)系、列式存儲、文檔、圖數(shù)據(jù)庫管理系統(tǒng)等。

2.4 數(shù)據(jù)管理約束是數(shù)據(jù)管理操作應(yīng)該滿足的要求

數(shù)據(jù)庫管理系統(tǒng),在執(zhí)行數(shù)據(jù)管理操作時必須保證數(shù)據(jù)庫滿足一定的約束條件。根據(jù)常識不難推斷,首要約束是保證數(shù)據(jù)一致性且不會丟失,無論系統(tǒng)處于正常狀態(tài)或是故障狀態(tài);其次,是保證數(shù)據(jù)不會被非法訪問且符合語義約束;然后,是保證數(shù)據(jù)管理操作的高效性;最后是操作的易用性。

(1)事務(wù)的ACID特性。事務(wù)是封裝起來的一組數(shù)據(jù)管理操作,對應(yīng)于邏輯獨立的數(shù)據(jù)處理功能。事務(wù)的ACID特性是事務(wù)需要滿足原子性、一致性、隔離性和持久性。

(2)安全性和完整性。安全性是防止非法用戶和非法操作對數(shù)據(jù)庫造成惡意的破壞和非法的存取;完整性是防止數(shù)據(jù)庫中出現(xiàn)不符合語義約束的數(shù)據(jù)。

(3)高性能的數(shù)據(jù)管理操作。保證數(shù)據(jù)管理操作在可接受的時間和空間代價內(nèi)完成。

(4)方便易用性。提供方便易用的數(shù)據(jù)管理操作工具或接口,如SQL語言接口。

在單機單用戶、數(shù)據(jù)規(guī)模較小時以上數(shù)據(jù)管理約束比較容易滿足,但是對于數(shù)據(jù)體量很大且多用戶共享的情況上述數(shù)據(jù)管理約束要完全滿足就比較困難,甚至不可能,因此在工業(yè)界往往會根據(jù)實際業(yè)務(wù)系統(tǒng)的應(yīng)用場景,有針對性選擇特定數(shù)據(jù)庫技術(shù)以滿足特定的數(shù)據(jù)管理約束。

3 數(shù)據(jù)庫原理課程內(nèi)容框架革新

3.1 數(shù)據(jù)庫理論和技術(shù)知識體系

根據(jù)統(tǒng)一數(shù)據(jù)管理觀,數(shù)據(jù)庫是根據(jù)數(shù)據(jù)模型組織存儲數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)管理是在數(shù)據(jù)管理約束下對數(shù)據(jù)庫進行存取訪問操作。各類典型的數(shù)據(jù)管理應(yīng)用場景中提及的眾多數(shù)據(jù)庫技術(shù),是對數(shù)據(jù)庫的數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)管理操作以及數(shù)據(jù)管理約束的具體化實現(xiàn)。因此,數(shù)據(jù)庫的理論和技術(shù),可以從數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)管理操作、數(shù)據(jù)管理約束3個維度建立數(shù)據(jù)庫理論和技術(shù)的知識體系,如圖1所示。

3.2 數(shù)據(jù)庫原理課程教學(xué)內(nèi)容體系結(jié)構(gòu)

具體到數(shù)據(jù)庫原理課程教學(xué),需要對數(shù)據(jù)庫理論和技術(shù)知識體系進行重組、取舍和排序,自頂向下、由淺入深地建立數(shù)據(jù)庫原理課程教學(xué)內(nèi)容及其拓撲組織結(jié)構(gòu),如圖2所示。

圖1 數(shù)據(jù)庫理論和技術(shù)知識體系

圖2 數(shù)據(jù)庫原理課程教學(xué)內(nèi)容體系結(jié)構(gòu)

(1)從數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)管理操作和數(shù)據(jù)管理約束3個維度出發(fā),抽取出各種類型的數(shù)據(jù)庫都需要考慮基本問題和基本概念,論述解決問題的主要技術(shù)方法,形成“數(shù)據(jù)庫基礎(chǔ)理論”教學(xué)模塊。

(2)關(guān)系數(shù)據(jù)庫模塊:從關(guān)系數(shù)據(jù)模型和關(guān)系數(shù)據(jù)庫的視角,論述數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)管理操作和數(shù)據(jù)管理約束的具體實現(xiàn)。

(3)NoSQL數(shù)據(jù)庫模塊:從NoSQL數(shù)據(jù)庫的視角,論述數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)管理操作和數(shù)據(jù)管理約束的具體實現(xiàn)。

(4)NewSQL數(shù)據(jù)庫模塊:從NewSQL數(shù)據(jù)庫的視角,論述數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)管理操作和數(shù)據(jù)管理約束的具體實現(xiàn)。

因此,從宏觀上數(shù)據(jù)庫原理課程教學(xué)內(nèi)容體系清晰地劃分為4個教學(xué)模塊:數(shù)據(jù)庫基礎(chǔ)理論、關(guān)系數(shù)據(jù)庫、NoSQL數(shù)據(jù)庫和NewSQL數(shù)據(jù)庫,每個教學(xué)模塊再繼續(xù)細分。

4 結(jié) 語

大數(shù)據(jù)時代數(shù)據(jù)庫技術(shù)空前發(fā)展,數(shù)據(jù)管理的需求和理念、數(shù)據(jù)庫的技術(shù)和平臺具有更為豐富的內(nèi)涵和外延,數(shù)據(jù)庫原理課程教學(xué)不能固守關(guān)系數(shù)據(jù)庫的范疇,需要吸納數(shù)據(jù)庫技術(shù)發(fā)展的成果,在統(tǒng)一的邏輯框架下重建新的課程內(nèi)容體系和教學(xué)過程框架。在長期的數(shù)據(jù)庫技術(shù)研究、軟件開發(fā)實踐和數(shù)據(jù)庫原理教學(xué)過程中,筆者總結(jié)建立了一種稱為“統(tǒng)一數(shù)據(jù)管理觀”的思維框架,基于該思維框架可以對各類數(shù)據(jù)庫技術(shù)進行系統(tǒng)性的分類整理,形成數(shù)據(jù)庫理論和技術(shù)的知識分類體系,進而自頂向下、由淺入深建立數(shù)據(jù)庫原理課程的教學(xué)內(nèi)容的拓撲結(jié)構(gòu)和過程框架,是數(shù)據(jù)庫原理課程內(nèi)容革新的基礎(chǔ)。

自2010年互聯(lián)網(wǎng)和大數(shù)據(jù)技術(shù)蓬勃發(fā)展以來,筆者就在數(shù)據(jù)庫原理課程教學(xué)中嘗試引入工業(yè)界最新的數(shù)據(jù)庫理論和技術(shù),嘗試建立一種能夠容納各類數(shù)據(jù)庫理論和技術(shù)的統(tǒng)一思維邏輯框架,“統(tǒng)一數(shù)據(jù)管理觀”是這一思維邏輯框架的成熟和完善,在多年的數(shù)據(jù)庫原理教學(xué)實踐中均有不錯的反響。

猜你喜歡
鍵值數(shù)據(jù)模型數(shù)據(jù)結(jié)構(gòu)
非請勿進 為注冊表的重要鍵值上把“鎖”
面板數(shù)據(jù)模型截面相關(guān)檢驗方法綜述
加熱爐爐內(nèi)跟蹤數(shù)據(jù)模型優(yōu)化
電子測試(2017年12期)2017-12-18 06:35:36
一鍵直達 Windows 10注冊表編輯高招
電腦愛好者(2017年9期)2017-06-01 21:38:08
“翻轉(zhuǎn)課堂”教學(xué)模式的探討——以《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)為例
高職高專數(shù)據(jù)結(jié)構(gòu)教學(xué)改革探討
中國市場(2016年45期)2016-05-17 05:15:48
TRIZ理論在“數(shù)據(jù)結(jié)構(gòu)”多媒體教學(xué)中的應(yīng)用
《數(shù)據(jù)結(jié)構(gòu)》教學(xué)方法創(chuàng)新探討
河南科技(2014年5期)2014-02-27 14:08:57
面向集成管理的出版原圖數(shù)據(jù)模型
一種顧及級聯(lián)時空變化描述的土地利用變更數(shù)據(jù)模型
松江区| 湘乡市| 运城市| 盘山县| 肇州县| 达日县| 丁青县| 城步| 毕节市| 富锦市| 陆川县| 普格县| 错那县| 泊头市| 老河口市| 弥渡县| 镇远县| 黎平县| 荆门市| 保康县| 桦南县| 南皮县| 德江县| 滕州市| 开化县| 孟连| 肇庆市| 奉化市| 留坝县| 彭泽县| 丹巴县| 闸北区| 资源县| 漾濞| 图片| 陵川县| 宿迁市| 许昌市| 咸宁市| 浙江省| 开远市|