新聞中心
隨著信息技術(shù)的不斷進(jìn)步和發(fā)展,數(shù)據(jù)庫技術(shù)的重要性也日益增強(qiáng)。面對(duì)不斷增加的數(shù)據(jù)量和不同類型的數(shù)據(jù),傳統(tǒng)的數(shù)據(jù)庫技術(shù)已經(jīng)無法滿足當(dāng)今社會(huì)和企業(yè)的需求。高級(jí)數(shù)據(jù)庫技術(shù)則成為了當(dāng)前的趨勢,具有更強(qiáng)的數(shù)據(jù)處理和管理能力。本文將探討如何使用高級(jí)數(shù)據(jù)庫技術(shù)實(shí)現(xiàn)一個(gè)綜合項(xiàng)目。

創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站建設(shè)、成都網(wǎng)站制作、天水網(wǎng)絡(luò)推廣、重慶小程序開發(fā)公司、天水網(wǎng)絡(luò)營銷、天水企業(yè)策劃、天水品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供天水建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com
一、選擇數(shù)據(jù)庫
在實(shí)現(xiàn)綜合項(xiàng)目之前,首先需要選擇一種合適的數(shù)據(jù)庫。市場上各種類型的數(shù)據(jù)庫繁多,可供選擇的有關(guān)系型數(shù)據(jù)庫、面向?qū)ο髷?shù)據(jù)庫、XML數(shù)據(jù)庫等等。我們需要根據(jù)項(xiàng)目的實(shí)際需求來選擇一種適合的數(shù)據(jù)庫。
關(guān)系型數(shù)據(jù)庫擁有穩(wěn)定且成熟的數(shù)據(jù)庫管理系統(tǒng),能夠?qū)崿F(xiàn)高效的數(shù)據(jù)搜索和管理,廣泛應(yīng)用于企業(yè)數(shù)據(jù)系統(tǒng)中。面向?qū)ο髷?shù)據(jù)庫則更加適合復(fù)雜的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)關(guān)系中的大規(guī)模應(yīng)用。XML數(shù)據(jù)庫是一種基于XML的數(shù)據(jù)管理系統(tǒng),具有處理半結(jié)構(gòu)化數(shù)據(jù)和支持復(fù)雜查詢的優(yōu)勢,適合于Web應(yīng)用程序和數(shù)據(jù)交換的應(yīng)用領(lǐng)域。當(dāng)然,還有很多其他類型的數(shù)據(jù)庫,也需要視具體情況來選擇。
二、設(shè)計(jì)數(shù)據(jù)庫
在選擇了適合的數(shù)據(jù)庫之后,接下來需要進(jìn)行數(shù)據(jù)庫的設(shè)計(jì)。對(duì)于一個(gè)復(fù)雜的項(xiàng)目,需要考慮到數(shù)據(jù)的規(guī)模、結(jié)構(gòu)以及數(shù)據(jù)之間的關(guān)系。一個(gè)好的數(shù)據(jù)庫設(shè)計(jì)應(yīng)該具有高效的數(shù)據(jù)存儲(chǔ)和查詢,同時(shí)還需要避免數(shù)據(jù)的冗余,保證數(shù)據(jù)的完整性和安全性。
數(shù)據(jù)庫的設(shè)計(jì)應(yīng)該包含以下幾個(gè)步驟:
1. 確定數(shù)據(jù)庫的范圍和目的:需要考慮到數(shù)據(jù)庫中存儲(chǔ)的數(shù)據(jù)類型、數(shù)據(jù)量以及數(shù)據(jù)的使用目的。
2. 建立數(shù)據(jù)模型:確定數(shù)據(jù)類型,建立合理的數(shù)據(jù)模型,包括實(shí)體、屬性、關(guān)系等。
3. 設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)和約束:可以使用E-R模型和關(guān)系模型來建立表結(jié)構(gòu),同時(shí)使用主鍵、外鍵、唯一鍵等約束來保證數(shù)據(jù)的完整性和安全性。
4. 設(shè)計(jì)索引:可以對(duì)關(guān)鍵字段進(jìn)行索引,優(yōu)化數(shù)據(jù)庫的查詢性能。
5. 進(jìn)行數(shù)據(jù)庫的優(yōu)化:最后需要對(duì)數(shù)據(jù)庫進(jìn)行優(yōu)化,包括數(shù)據(jù)的劃分、存儲(chǔ)、備份等操作,保證數(shù)據(jù)的穩(wěn)定性和可靠性。
三、實(shí)現(xiàn)綜合項(xiàng)目
在數(shù)據(jù)庫的設(shè)計(jì)完成后,就可以開始實(shí)現(xiàn)綜合項(xiàng)目了。在實(shí)現(xiàn)項(xiàng)目時(shí),需要了解項(xiàng)目的需求和功能,并根據(jù)項(xiàng)目的需要對(duì)數(shù)據(jù)庫進(jìn)行適當(dāng)?shù)恼{(diào)整。
1. 數(shù)據(jù)庫連接:在項(xiàng)目中需要使用數(shù)據(jù)庫進(jìn)行數(shù)據(jù)操作,需要先建立數(shù)據(jù)庫連接。不同的數(shù)據(jù)庫連接方法略有不同,可以參考數(shù)據(jù)庫的官方文檔進(jìn)行連接。
2. 數(shù)據(jù)操作:數(shù)據(jù)庫的操作包括增加、刪除、修改和查詢。在實(shí)現(xiàn)項(xiàng)目時(shí)需要根據(jù)實(shí)際需要進(jìn)行各種數(shù)據(jù)操作。具體的數(shù)據(jù)操作方式和相關(guān)語句可以參考數(shù)據(jù)庫的官方文檔。
3. 數(shù)據(jù)庫事務(wù):數(shù)據(jù)庫事務(wù)機(jī)制可以保證數(shù)據(jù)的一致性和完整性,對(duì)于一些對(duì)數(shù)據(jù)一致性要求比較高的項(xiàng)目,需要使用數(shù)據(jù)庫事務(wù)來保證數(shù)據(jù)的安全性。
4. 數(shù)據(jù)備份:數(shù)據(jù)備份是數(shù)據(jù)庫管理中非常重要的一部分,可以保證數(shù)據(jù)的可靠性和恢復(fù)性,在實(shí)現(xiàn)項(xiàng)目時(shí)需要定時(shí)進(jìn)行數(shù)據(jù)備份。
四、
本文主要介紹了使用高級(jí)數(shù)據(jù)庫實(shí)現(xiàn)綜合項(xiàng)目的步驟和方法。在實(shí)現(xiàn)項(xiàng)目時(shí)需要選擇適合的數(shù)據(jù)庫,進(jìn)行合理的數(shù)據(jù)庫設(shè)計(jì),并根據(jù)項(xiàng)目的實(shí)際需求進(jìn)行優(yōu)化。同時(shí)需要了解數(shù)據(jù)庫的連接、數(shù)據(jù)操作、事務(wù)和備份等內(nèi)容,以保證數(shù)據(jù)的完整性和安全性。希望本文能夠?qū)Υ蠹沂褂酶呒?jí)數(shù)據(jù)庫實(shí)現(xiàn)綜合項(xiàng)目有所幫助。
相關(guān)問題拓展閱讀:
- 數(shù)據(jù)庫的發(fā)展簡史
- 數(shù)據(jù)倉庫與數(shù)據(jù)庫有什么聯(lián)系
數(shù)據(jù)庫的發(fā)展簡史
從1964年,世界上之一個(gè)數(shù)據(jù)庫系統(tǒng)IDS(Integrated Data Storage,空裂集成數(shù)據(jù)存儲(chǔ))誕生開始,到今天數(shù)據(jù)庫發(fā)展已經(jīng)超過了60年。由于數(shù)據(jù)庫行業(yè)最早由海外發(fā)起,導(dǎo)致國內(nèi)的數(shù)據(jù)庫主要由海外企業(yè)主導(dǎo),而數(shù)據(jù)庫在金融、電信、工業(yè)、互聯(lián)網(wǎng)等各個(gè)方面的重要性越來越大。
隨著國家政策的搜梁支持以及資本的持續(xù)關(guān)注,我國數(shù)據(jù)庫行業(yè)有望迎來新一輪的增長,2023年我國數(shù)據(jù)庫市場規(guī)模有望接近7百億元。
目前,我國數(shù)據(jù)庫產(chǎn)品主要以關(guān)系型為主,非關(guān)系型及混合型數(shù)據(jù)庫較少。截止2023年6月,我國關(guān)系型數(shù)據(jù)庫共有81個(gè),非關(guān)系型數(shù)據(jù)庫共有54個(gè)。在非關(guān)系型數(shù)據(jù)庫中,鍵值型數(shù)據(jù)庫占比更高,占非關(guān)系型數(shù)據(jù)庫的9.26%。
現(xiàn)在國產(chǎn)企業(yè)正在更多地采取自研這條技術(shù)路線,經(jīng)過多年發(fā)展,國產(chǎn)數(shù)據(jù)庫軟件產(chǎn)業(yè)已初具規(guī)模,目前國產(chǎn)數(shù)據(jù)庫廠商分為兩類,一類是傳統(tǒng)數(shù)據(jù)庫廠商,包括南大通用,武漢達(dá)夢,人大金倉,神舟通用等,一類是新興的互聯(lián)網(wǎng)巨斗漏閉頭數(shù)據(jù)庫,如阿里巴巴,騰訊,華為和金山云等,近年,無論在黨政市場還是在商業(yè)市場,互聯(lián)網(wǎng)巨頭數(shù)據(jù)庫是占有率提升都更快一些。
使用計(jì)算機(jī)后,隨著數(shù)據(jù)處理量的增長,產(chǎn)生了數(shù)據(jù)管理技術(shù)。
數(shù)據(jù)管理技術(shù)的發(fā)展與計(jì)算機(jī)硬件(主要是外部存儲(chǔ)器)系統(tǒng)軟件及計(jì)算機(jī)應(yīng)用的范圍有著密切的聯(lián)系。
數(shù)據(jù)管理技術(shù)的發(fā)展經(jīng)歷了以下四個(gè)階段:人工管理階段、文件系統(tǒng)階段、數(shù)據(jù)庫階段和高級(jí)數(shù)據(jù)庫技術(shù)階段。
數(shù)據(jù)管理的誕生
數(shù)據(jù)庫的歷史可以追溯到五十年前,那時(shí)的數(shù)據(jù)管理非常簡單。
通過大量的分類、比較和表格繪制的機(jī)器運(yùn)行數(shù)百萬穿孔卡片來進(jìn)行數(shù)據(jù)的處理,其運(yùn)行結(jié)果在紙上打印出來或者制成新的穿孔卡片。
而數(shù)據(jù)管理就是對(duì)所有這些穿孔卡片進(jìn)行物理的儲(chǔ)存和處理。
然而,1950 年雷明頓蘭德公司(Remington Rand Inc)的一種叫做Univac I 的計(jì)算機(jī)推出了一種一秒鐘可以輸入數(shù)百條記錄的磁帶驅(qū)動(dòng)器,從而引發(fā)了數(shù)據(jù)管理的革命。
1956 年IBM生產(chǎn)出之一個(gè)磁盤驅(qū)動(dòng)器—— the Model 305 RAMAC。
此驅(qū)動(dòng)器有50 個(gè)盤片,每個(gè)盤片直徑是2 英尺,可以儲(chǔ)存5MB的數(shù)據(jù)。
使用磁盤更大的好處是可以隨機(jī)存取數(shù)據(jù),而穿孔卡片和磁帶只能順序存取數(shù)據(jù)。
1951: Univac系統(tǒng)使用磁帶和穿孔卡片作為數(shù)據(jù)存儲(chǔ)。
數(shù)據(jù)庫系統(tǒng)的萌芽出現(xiàn)于二十世紀(jì)60 年代。
當(dāng)時(shí)計(jì)算機(jī)開始廣泛地應(yīng)用于數(shù)據(jù)管理,對(duì)數(shù)據(jù)的共享提出了越來越高的要求。
傳統(tǒng)的文件系統(tǒng)已經(jīng)不能滿足人們的需要,能夠統(tǒng)一管理和共享數(shù)據(jù)的數(shù)據(jù)庫管理系統(tǒng)(DBMS)應(yīng)運(yùn)而生。
數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的核心和基礎(chǔ),各種DBMS軟件都是基于某種數(shù)據(jù)模型的。
所以通常也按照數(shù)據(jù)模型的特點(diǎn)將傳統(tǒng)數(shù)據(jù)庫系統(tǒng)分成網(wǎng)狀數(shù)據(jù)庫、層次數(shù)據(jù)庫和關(guān)系數(shù)據(jù)庫三類。
最早出現(xiàn)的網(wǎng)狀DBMS,是美國通用電氣公司Bachman等人在1961年開發(fā)的IDS(Integrated Data Store)。
1964年通用電氣公司(General ElectricCo.)的Charles Bachman 成功地開發(fā)出世界上之一個(gè)網(wǎng)狀DBMS也即之一個(gè)數(shù)據(jù)庫管理系統(tǒng)——集成數(shù)據(jù)存儲(chǔ)(Integrated Data Store IDS),奠定了網(wǎng)狀數(shù)據(jù)庫的基礎(chǔ),并在當(dāng)時(shí)得到了廣泛的發(fā)行和應(yīng)用。
IDS 具有數(shù)據(jù)模式和日志的特征,但它只能在GE主機(jī)上運(yùn)行,并且數(shù)據(jù)庫只有一個(gè)文件,數(shù)據(jù)庫所有的表必須通過手工編碼生成。
之后,通用電氣公司一個(gè)客戶——BF Goodrich Chemical 公司最終不得不重寫了整個(gè)系統(tǒng),并將重寫后的系統(tǒng)命名為集成數(shù)據(jù)管理系統(tǒng)(IDMS)。
網(wǎng)狀數(shù)據(jù)庫模型對(duì)于層次和非層次結(jié)構(gòu)的事物都能比較自然的模擬,在關(guān)系數(shù)據(jù)庫出現(xiàn)之前網(wǎng)狀DBMS要比層次DBMS用得普遍。
在數(shù)據(jù)庫發(fā)展史上,網(wǎng)狀數(shù)據(jù)團(tuán)賣喚庫占有重要地位。
層次型DBMS是緊隨網(wǎng)絡(luò)型數(shù)據(jù)庫而出現(xiàn)的,最著名最典型的層次數(shù)據(jù)庫系統(tǒng)是IBM 公司在1968 年開發(fā)的IMS(Information Management System),一種適合其主機(jī)的層次數(shù)據(jù)庫。
這是IBM公司研制的最早的大型數(shù)據(jù)庫系統(tǒng)程序產(chǎn)品。
從60年代末產(chǎn)生起,如今已經(jīng)發(fā)展塌凱到IMSV6,提供群集、N路數(shù)據(jù)共享、消息隊(duì)列共享等先進(jìn)特性的支持。
這個(gè)具有30年歷史的數(shù)據(jù)庫產(chǎn)品在如今的WWW應(yīng)用連接、商務(wù)智能應(yīng)用中扮演著新的角色。
1973年Cullinane公司(也就是后來的Culli軟件公司),開始出售Goodrich公司的IDMS改進(jìn)版本,并且逐漸成為當(dāng)時(shí)世界上更大配頌的軟件公司。
網(wǎng)狀數(shù)據(jù)庫和層次數(shù)據(jù)庫已經(jīng)很好地解決了數(shù)據(jù)的集中和共享問題,但是在數(shù)據(jù)獨(dú)立性和抽象級(jí)別上仍有很大欠缺。
用戶在對(duì)這兩種數(shù)據(jù)庫進(jìn)行存取時(shí),仍然需要明確數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu),指出存取路徑。
而后來出現(xiàn)的關(guān)系數(shù)據(jù)庫較好地解決了這些問題。
1970年,IBM的研究員E.F.Codd博士在刊物《munication of the ACM》上發(fā)表了一篇名為“A Relational Model of Data for Large Shared Data Banks”的論文,提出了關(guān)系模型的概念,奠定了關(guān)系模型的理論基礎(chǔ)。
盡管之前在1968年Childs已經(jīng)提出了面向的模型,然而這篇論文被普遍認(rèn)為是數(shù)據(jù)庫系統(tǒng)歷史上具有劃時(shí)代意義的里程碑。
Codd的心愿是為數(shù)據(jù)庫建立一個(gè)優(yōu)美的數(shù)據(jù)模型。
后來Codd又陸續(xù)發(fā)表多篇文章,論述了范式理論和衡量關(guān)系系統(tǒng)的12條標(biāo)準(zhǔn),用數(shù)學(xué)理論奠定了關(guān)系數(shù)據(jù)庫的基礎(chǔ)。
關(guān)系模型有嚴(yán)格的數(shù)學(xué)基礎(chǔ),抽象級(jí)別比較高,而且簡單清晰,便于理解和使用。
但是當(dāng)時(shí)也有人認(rèn)為關(guān)系模型是理想化的數(shù)據(jù)模型,用來實(shí)現(xiàn)DBMS是不現(xiàn)實(shí)的,尤其擔(dān)心關(guān)系數(shù)據(jù)庫的性能難以接受,更有人視其為當(dāng)時(shí)正在進(jìn)行中的網(wǎng)狀數(shù)據(jù)庫規(guī)范化工作的嚴(yán)重威脅。
為了促進(jìn)對(duì)問題的理解,1974年ACM牽頭組織了一次研討會(huì),會(huì)上開展了一場分別以Codd和Bachman為首的支持和反對(duì)關(guān)系數(shù)據(jù)庫兩派之間的辯論。
這次著名的辯論推動(dòng)了關(guān)系數(shù)據(jù)庫的發(fā)展,使其最終成為現(xiàn)代數(shù)據(jù)庫產(chǎn)品的主流。
1969年Edgar F.“Ted” Codd發(fā)明了關(guān)系數(shù)據(jù)庫。
1970年關(guān)系模型建立之后,IBM公司在San Jose實(shí)驗(yàn)室增加了更多的研究人員研究這個(gè)項(xiàng)目,這個(gè)項(xiàng)目就是著名的System R。
其目標(biāo)是論證一個(gè)全功能關(guān)系DBMS的可行性。
該項(xiàng)目結(jié)束于1979年,完成了之一個(gè)實(shí)現(xiàn)SQL的 DBMS。
然而IBM對(duì)IMS的承諾阻止了System R的投產(chǎn),一直到1980年System R才作為一個(gè)產(chǎn)品正式推向市場。
IBM產(chǎn)品化步伐緩慢的三個(gè)原因:IBM重視信譽(yù),重視質(zhì)量,盡量減少故障;IBM是個(gè)大公司,官僚體系龐大,IBM內(nèi)部已經(jīng)有層次數(shù)據(jù)庫產(chǎn)品,相關(guān)人員不積極,甚至反對(duì)。
然而同時(shí),1973年加州大學(xué)伯克利分校的Michael Stonebraker和Eugene Wong利用System R已發(fā)布的信息開始開發(fā)自己的關(guān)系數(shù)據(jù)庫系統(tǒng)Ingres。
他們開發(fā)的Ingres項(xiàng)目最后由Oracle公司、Ingres公司以及硅谷的其他廠商所商品化。
后來,System R和Ingres系統(tǒng)雙雙獲得ACM的1988年“軟件系統(tǒng)獎(jiǎng)”。
1976年霍尼韋爾公司(Honeywell)開發(fā)了之一個(gè)商用關(guān)系數(shù)據(jù)庫系統(tǒng)——Multics Relational Data Store。
關(guān)系型數(shù)據(jù)庫系統(tǒng)以關(guān)系代數(shù)為堅(jiān)實(shí)的理論基礎(chǔ),經(jīng)過幾十年的發(fā)展和實(shí)際應(yīng)用,技術(shù)越來越成熟和完善。
其代表產(chǎn)品有Oracle、IBM公司的 DB2、微軟公司的MS SQL Server以及Informix、ADABAS D等等。
1974年IBM的Ray Boyce和Don Chamberlin將Codd關(guān)系數(shù)據(jù)庫的12條準(zhǔn)則的數(shù)學(xué)定義以簡單的關(guān)鍵字語法表現(xiàn)出來,里程碑式地提出了SQL(Structured Query Language)語言。
SQL語言的功能包括查詢、操縱、定義和控制,是一個(gè)綜合的、通用的關(guān)系數(shù)據(jù)庫語言,同時(shí)又是一種高度非過程化的語言,只要求用戶指出做什么而不需要指出怎么做。
SQL集成實(shí)現(xiàn)了數(shù)據(jù)庫生命周期中的全部操作。
SQL提供了與關(guān)系數(shù)據(jù)庫進(jìn)行交互的方法,它可以與標(biāo)準(zhǔn)的編程語言一起工作。
自產(chǎn)生之日起,SQL語言便成了檢驗(yàn)關(guān)系數(shù)據(jù)庫的試金石,而SQL語言標(biāo)準(zhǔn)的每一次變更都指導(dǎo)著關(guān)系數(shù)據(jù)庫產(chǎn)品的發(fā)展方向。
然而,直到二十世紀(jì)七十年代中期,關(guān)系理論才通過SQL在商業(yè)數(shù)據(jù)庫Oracle和DB2中使用。
1986年,ANSI把SQL作為關(guān)系數(shù)據(jù)庫語言的美國標(biāo)準(zhǔn),同年公布了標(biāo)準(zhǔn)SQL文本。
SQL標(biāo)準(zhǔn)有3個(gè)版本。
基本SQL定義是ANSⅨ,“Database Language – SQL with Integrity Enhancement”,一般叫做SQL-89。
SQL-89定義了模式定義、數(shù)據(jù)操作和事務(wù)處理。
SQL- 89和隨后的ANSⅨ,“Database Language-Embedded SQL”構(gòu)成了之一代SQL標(biāo)準(zhǔn)。
ANSⅨ描述了一種增強(qiáng)功能的SQL,叫做SQL-92標(biāo)準(zhǔn)。
SQL-92包括模式操作,動(dòng)態(tài)創(chuàng)建和SQL語句動(dòng)態(tài)執(zhí)行、網(wǎng)絡(luò)環(huán)境支持等增強(qiáng)特性。
在完成SQL-92標(biāo)準(zhǔn)后,ANSI和ISO即開始合作開發(fā)SQL3標(biāo)準(zhǔn)。
SQL3的主要特點(diǎn)在于抽象數(shù)據(jù)類型的支持,為新一代對(duì)象關(guān)系數(shù)據(jù)庫提供了標(biāo)準(zhǔn)。
1976年IBM E.F.Codd發(fā)表了一篇里程碑的論文“R系統(tǒng):數(shù)據(jù)庫關(guān)系理論”,介紹了關(guān)系數(shù)據(jù)庫理論和查詢語言SQL。
Oracle的創(chuàng)始人Ellison非常仔細(xì)地閱讀了這篇文章,被其內(nèi)容震驚,這是之一次有人用全面一致的方案管理數(shù)據(jù)信息。
作者E.F.Codd 1966年就發(fā)表了關(guān)系數(shù)據(jù)庫理論,并在IBM研究機(jī)構(gòu)開發(fā)原型,這個(gè)項(xiàng)目就是R系統(tǒng),存取數(shù)據(jù)表的語言就是SQL。
Ellison看完后,敏銳意識(shí)到在這個(gè)研究基礎(chǔ)上可以開發(fā)商用軟件系統(tǒng)。
而當(dāng)時(shí)大多數(shù)人認(rèn)為關(guān)系數(shù)據(jù)庫不會(huì)有商業(yè)價(jià)值。
Ellison認(rèn)為這是他們的機(jī)會(huì):他們決定開發(fā)通用商用數(shù)據(jù)庫系統(tǒng)Oracle,這個(gè)名字來源于他們曾給中央情報(bào)局做過的項(xiàng)目名。
幾個(gè)月后,他們就開發(fā)了Oracle 1.0。
但這只不過是個(gè)玩具,除了完成簡單關(guān)系查詢不能做任何事情,他們花相當(dāng)長的時(shí)間才使Oracle變得可用,維持公司運(yùn)轉(zhuǎn)主要靠承接一些數(shù)據(jù)庫管理項(xiàng)目和做顧問咨詢工作。
而IBM卻沒有計(jì)劃開發(fā),為什么藍(lán)色巨人放棄了這個(gè)價(jià)值上百億的產(chǎn)品,原因有很多:IBM的研究人員大多是學(xué)術(shù)出身,他們最感興趣的是理論,而非推向市場的產(chǎn)品,從學(xué)術(shù)上看,研究成果應(yīng)公開發(fā)表論文和演講能使他們成名,為什么不呢?還有一個(gè)很主要的原因就是IBM當(dāng)時(shí)有一個(gè)銷售得還不錯(cuò)的層次數(shù)據(jù)庫產(chǎn)品IMS。
直到1985年IBM才發(fā)布了關(guān)系數(shù)據(jù)庫DB2 ,Ellision那時(shí)已經(jīng)成了千萬富翁。
Ellison曾將IBM 選擇Microsoft 的MS-DOS作為IBM-PC機(jī)的操作系統(tǒng)比為:“世界企業(yè)經(jīng)營歷史上最嚴(yán)重的錯(cuò)誤,價(jià)值超過了上千億美元?!盜BM發(fā)表R系統(tǒng)論文,而且沒有很快推出關(guān)系數(shù)據(jù)庫產(chǎn)品的錯(cuò)誤可能僅僅次之。
Oracle的市值在1996年就達(dá)到了280億美元。
隨著信息技術(shù)和市場的發(fā)展,人們發(fā)現(xiàn)關(guān)系型數(shù)據(jù)庫系統(tǒng)雖然技術(shù)很成熟,但其局限性也是顯而易見的:它能很好地處理所謂的“表格型數(shù)據(jù)”,卻對(duì)技術(shù)界出現(xiàn)的越來越多的復(fù)雜類型的數(shù)據(jù)無能為力。
九十年代以后,技術(shù)界一直在研究和尋求新型數(shù)據(jù)庫系統(tǒng)。
但在什么是新型數(shù)據(jù)庫系統(tǒng)的發(fā)展方向的問題上,產(chǎn)業(yè)界一度是相當(dāng)困惑的。
受當(dāng)時(shí)技術(shù)風(fēng)潮的影響,在相當(dāng)一段時(shí)間內(nèi),人們把大量的精力花在研究“面向?qū)ο蟮臄?shù)據(jù)庫系統(tǒng)(object oriented database)”或簡稱“OO數(shù)據(jù)庫系統(tǒng)”。
值得一提的是,美國Stonebraker教授提出的面向?qū)ο蟮年P(guān)系型數(shù)據(jù)庫理論曾一度受到產(chǎn)業(yè)界的青睞。
而Stonebraker本人也在當(dāng)時(shí)被Informix花大價(jià)錢聘為技術(shù)總負(fù)責(zé)人。
然而,數(shù)年的發(fā)展表明,面向?qū)ο蟮年P(guān)系型數(shù)據(jù)庫系統(tǒng)產(chǎn)品的市場發(fā)展的情況并不理想。
理論上的完美性并沒有帶來市場的熱烈反應(yīng)。
其不成功的主要原因在于,這種數(shù)據(jù)庫產(chǎn)品的主要設(shè)計(jì)思想是企圖用新型數(shù)據(jù)庫系統(tǒng)來取代現(xiàn)有的數(shù)據(jù)庫系統(tǒng)。
這對(duì)許多已經(jīng)運(yùn)用數(shù)據(jù)庫系統(tǒng)多年并積累了大量工作數(shù)據(jù)的客戶,尤其是大客戶來說,是無法承受新舊數(shù)據(jù)間的轉(zhuǎn)換而帶來的巨大工作量及巨額開支的。
另外,面向?qū)ο蟮年P(guān)系型數(shù)據(jù)庫系統(tǒng)使查詢語言變得極其復(fù)雜,從而使得無論是數(shù)據(jù)庫的開發(fā)商家還是應(yīng)用客戶都視其復(fù)雜的應(yīng)用技術(shù)為畏途。
二十世紀(jì)六十年代后期出現(xiàn)了一種新型數(shù)據(jù)庫軟件:決策支持系統(tǒng)(DSS),其目的是讓管理者在決策過程中更有效地利用數(shù)據(jù)信息。
于是在1970年,之一個(gè)聯(lián)機(jī)分析處理工具——Express誕生了。
其他決策支持系統(tǒng)緊隨其后,許多是由公司的IT部門開發(fā)出來的。
1985年,之一個(gè)商務(wù)智能系統(tǒng)(business intelligence)由Metaphor計(jì)算機(jī)系統(tǒng)有限公司為Procter & Gamble公司開發(fā)出來,主要是用來連接銷售信息和零售的掃描儀數(shù)據(jù)。
同年, Pilot軟件公司開始出售之一個(gè)商用客戶/服務(wù)器執(zhí)行信息系統(tǒng)——mand Center。
同樣在這年,加州大學(xué)伯克利分校Ingres項(xiàng)目演變成Postgres,其目標(biāo)是開發(fā)出一個(gè)面向?qū)ο蟮臄?shù)據(jù)庫。
此后一年, Graphael公司開發(fā)了之一個(gè)商用的對(duì)象數(shù)據(jù)庫系統(tǒng)—Gbase。
1988年,IBM公司的研究者Barry Devlin和Paul Murphy發(fā)明了一個(gè)新的術(shù)語—信息倉庫,之后,IT的廠商開始構(gòu)建實(shí)驗(yàn)性的數(shù)據(jù)倉庫。
1991年,W.H. Bill Inmon出版了一本“如何構(gòu)建數(shù)據(jù)倉庫”的書,使得數(shù)據(jù)倉庫真正開始應(yīng)用。
1991: W.H.“Bill” Inmon發(fā)表了”構(gòu)建數(shù)據(jù)倉庫”
二十世紀(jì)九十年代,隨著基于PC的客戶/服務(wù)器計(jì)算模式和企業(yè)軟件包的廣泛采用,數(shù)據(jù)管理的變革基本完成。
數(shù)據(jù)管理不再僅僅是存儲(chǔ)和管理數(shù)據(jù),而轉(zhuǎn)變成用戶所需要的各種數(shù)據(jù)管理的方式。
數(shù)據(jù)倉庫與數(shù)據(jù)庫有什么聯(lián)系
數(shù)據(jù)倉庫是基于數(shù)據(jù)庫技術(shù)的,是研究如何將大規(guī)模復(fù)雜的數(shù)據(jù)更有效的組織用于方便使用的技術(shù)。這是我搞這么多年數(shù)據(jù)倉庫的認(rèn)識(shí)。
數(shù)據(jù)庫
數(shù)據(jù)庫發(fā)展階段大致劃分為如下幾個(gè)階段:
人工管理階段;
文件系統(tǒng)階段;
數(shù)據(jù)庫系統(tǒng)階段;
高級(jí)數(shù)據(jù)庫階段。
當(dāng)人們從不同的角度來描述這一概念時(shí)就有不同的定義(當(dāng)然是描述性的)。例如,稱數(shù)據(jù)庫是一個(gè)“記錄保存系統(tǒng)”(該定義強(qiáng)調(diào)了數(shù)據(jù)庫是若干記錄的)。又如稱數(shù)據(jù)庫是“人們?yōu)榻鉀Q特定的任務(wù),以一定的組織方式存儲(chǔ)在一起的相關(guān)的數(shù)據(jù)的”(該定義側(cè)重于數(shù)據(jù)的組織)。更有甚者稱數(shù)據(jù)庫是“一個(gè)數(shù)據(jù)倉庫”。當(dāng)然,這種說法雖然形象,但并不嚴(yán)謹(jǐn)。
嚴(yán)格地說,數(shù)據(jù)庫是“按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲(chǔ)和管理數(shù)據(jù)的倉庫”。在經(jīng)濟(jì)管理的日常工作中,常常需要把某些相關(guān)的數(shù)據(jù)放進(jìn)這樣“倉庫”,并根據(jù)管理的需要進(jìn)行相應(yīng)的處理。例如,企業(yè)或事業(yè)單位的人事部門常常要把本單位職工的基本情況(職工號(hào)、姓名、年齡、性別、籍貫、工資、簡歷等)存放在表20.6.3中,這張表就可以看成是一個(gè)數(shù)據(jù)庫。有了這個(gè)”數(shù)據(jù)倉庫”我們就可以根據(jù)需要隨時(shí)查詢某職工的基本情況,也可以查詢工資在某個(gè)范圍內(nèi)的職工人數(shù)等等。這些工作如果都能在計(jì)算機(jī)上自動(dòng)進(jìn)行,那我們的人事管理就可以達(dá)到極高的水平。此外,在財(cái)務(wù)管理、倉庫管理、生產(chǎn)管理中也需要建立眾多的這種”數(shù)據(jù)庫”,使其可以利用計(jì)算機(jī)實(shí)現(xiàn)財(cái)務(wù)、倉庫、生產(chǎn)的自動(dòng)化管理。
J.Martin給數(shù)據(jù)庫下了一個(gè)比較完整的定義:數(shù)據(jù)庫是存儲(chǔ)在一起的相關(guān)數(shù)據(jù)的,這些數(shù)據(jù)是結(jié)構(gòu)化的,無有害的或不必要的冗余,并為多種應(yīng)用服務(wù);數(shù)據(jù)的存儲(chǔ)獨(dú)立于使用它的程序;對(duì)數(shù)據(jù)庫插入新數(shù)據(jù),修改和檢索原有數(shù)據(jù)均能按一種公用的和可控制的方式進(jìn)行。當(dāng)某個(gè)系統(tǒng)中存在結(jié)構(gòu)上完全分開的若干個(gè)數(shù)據(jù)庫時(shí),則該系統(tǒng)包含一個(gè)“數(shù)據(jù)庫”。
· 數(shù)據(jù)庫的優(yōu)點(diǎn)
使用數(shù)據(jù)庫可以帶來許多好處:如減少了數(shù)據(jù)的冗余度,從而大大地節(jié)省了數(shù)據(jù)的存儲(chǔ)空間;實(shí)現(xiàn)數(shù)據(jù)資源的充分共享等等。此外,數(shù)據(jù)庫技術(shù)還為用戶提供了非常簡便的使用手段使用戶易于編寫有關(guān)數(shù)據(jù)庫應(yīng)用程序。特別是近年來推出的微型計(jì)算機(jī)關(guān)系數(shù)據(jù)庫管理系統(tǒng)dBASELL,操作直觀,使用靈活,編程方便,環(huán)境適應(yīng)廣泛(一般的十六位機(jī),如IBM/PC/XT,國產(chǎn)長城0520等均可運(yùn)行種軟件),數(shù)據(jù)處理能力極強(qiáng)。數(shù)據(jù)庫在我國正得到愈來愈廣泛的應(yīng)用,必將成為經(jīng)濟(jì)管理的有力工具。
數(shù)據(jù)庫是通過數(shù)據(jù)庫管理系統(tǒng)(DBMS-DATA BASE MANAGEMENT SYSTEM)軟件來實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)、管理與使用的dBASELL就是一種數(shù)據(jù)庫管理系統(tǒng)軟件。
· 數(shù)據(jù)庫結(jié)構(gòu)與數(shù)據(jù)庫種類
數(shù)據(jù)庫通常分為層次式數(shù)據(jù)庫、網(wǎng)絡(luò)式數(shù)據(jù)庫和關(guān)系式數(shù)據(jù)庫三種。而不同的數(shù)據(jù)庫是按不同的數(shù)據(jù)結(jié)構(gòu)來聯(lián)系和組織的。
1.數(shù)據(jù)結(jié)構(gòu)模型
(1)數(shù)據(jù)結(jié)構(gòu)
所謂數(shù)據(jù)結(jié)構(gòu)是指數(shù)據(jù)的組織形式或數(shù)據(jù)之間的聯(lián)系。如果用D表示數(shù)據(jù),用R表示數(shù)據(jù)對(duì)象之間存在的關(guān)系,則將DS=(D,R)稱為數(shù)據(jù)結(jié)構(gòu)。例如,設(shè)有一個(gè)號(hào)碼簿,它記錄了n個(gè)人的名字和相應(yīng)的號(hào)碼。為了方便地查找某人的號(hào)碼,將人名和號(hào)碼按字典順序排列,并在名字的后面跟隨著對(duì)應(yīng)的號(hào)碼。這樣,若要查找某人的號(hào)碼(假定他的名字的之一個(gè)字母是Y),那么只須查找以Y開頭的那些名字就可以了。該例中,數(shù)據(jù)的D就是人名和號(hào)碼,它們之間的聯(lián)系R就是按字典順序的排列,其相應(yīng)的數(shù)據(jù)結(jié)構(gòu)就是DS=(D,R),即一個(gè)數(shù)組。(2)數(shù)據(jù)結(jié)構(gòu)種類
數(shù)據(jù)結(jié)構(gòu)又分為數(shù)據(jù)的邏輯結(jié)構(gòu)和數(shù)據(jù)的物理結(jié)構(gòu)。數(shù)據(jù)的邏輯結(jié)構(gòu)是從邏輯的角度(即數(shù)據(jù)間的聯(lián)系和組織方式)來觀察數(shù)據(jù),分析數(shù)據(jù),與數(shù)據(jù)的存儲(chǔ)位置無關(guān)。數(shù)據(jù)的物理結(jié)構(gòu)是指數(shù)據(jù)在計(jì)算機(jī)中存放的結(jié)構(gòu),即數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的實(shí)現(xiàn)形式,所以物理結(jié)構(gòu)也被稱為存儲(chǔ)結(jié)構(gòu)。本節(jié)只研究數(shù)據(jù)的邏輯結(jié)構(gòu),并將反映和實(shí)現(xiàn)數(shù)據(jù)聯(lián)系的方法稱為數(shù)據(jù)模型。
目前,比較流行的數(shù)據(jù)模型有三種,即按圖論理論建立的層次結(jié)構(gòu)模型和網(wǎng)狀結(jié)構(gòu)模型以及按關(guān)系理論建立的關(guān)系結(jié)構(gòu)模型。
2.層次、網(wǎng)狀和關(guān)系數(shù)據(jù)庫系統(tǒng)
(1)層次結(jié)構(gòu)模型
層次結(jié)構(gòu)模型實(shí)質(zhì)上是一種有根結(jié)點(diǎn)的定向有序樹(在數(shù)學(xué)中”樹”被定義為一個(gè)無回的連通圖)。例如圖20.6.4是一個(gè)高等學(xué)校的組織結(jié)構(gòu)圖。這個(gè)組織結(jié)構(gòu)圖像一棵樹,校部就是樹根(稱為根結(jié)點(diǎn)),各系、專業(yè)、教師、學(xué)生等為枝點(diǎn)(稱為結(jié)點(diǎn)),樹根與枝點(diǎn)之間的聯(lián)系稱為邊,樹根與邊之比為1:N,即樹根只有一個(gè),樹枝有N個(gè)。這種數(shù)據(jù)結(jié)構(gòu)模型的一般結(jié)構(gòu)見圖20.6.5所示。
圖20.6.4 高等學(xué)校的組織結(jié)構(gòu)圖 圖20.6.5 層次結(jié)構(gòu)模型
圖20.6.5中,Ri(i=1,2,…6)代表記錄(即數(shù)據(jù)的),其中R1就是根結(jié)點(diǎn)(如果Ri看成是一個(gè)家族,則R1就是祖先,它是R2、R3、R4的雙親,而R2、R3、R4互為兄弟),R5、R6也是兄弟,且其雙親為R3。R2、R4、R5、R6又被稱為葉結(jié)點(diǎn)(即無子女的結(jié)點(diǎn))。這樣,Ri(i=1,2,…6)就組成了以R1為樹根的一棵樹,這就是一個(gè)層次數(shù)據(jù)結(jié)構(gòu)模型。
按照層次模型建立的數(shù)據(jù)庫系統(tǒng)稱為層次模型數(shù)據(jù)庫系統(tǒng)。IMS(Information Manage-mentSystem)是其典型代表。
(2)網(wǎng)狀結(jié)構(gòu)模型
在圖20.6.6中,給出了某醫(yī)院醫(yī)生、病房和病人之間的聯(lián)系。即每個(gè)醫(yī)生負(fù)責(zé)治療三個(gè)病人,每個(gè)病房可住一到四個(gè)病人。如果將醫(yī)生看成是一個(gè)數(shù)據(jù),病人和病房分別是另外兩個(gè)數(shù)據(jù),那么醫(yī)生、病人和病房的比例關(guān)系就是M:N:P(即M個(gè)醫(yī)生,N個(gè)病人,P間病房)。這種數(shù)據(jù)結(jié)構(gòu)就是網(wǎng)狀數(shù)據(jù)結(jié)構(gòu),它的一般結(jié)構(gòu)模型如圖20.6.7所示。在圖中,記錄Ri(i=1,2,8)滿足以下條件:
①可以有一個(gè)以上的結(jié)點(diǎn)無雙親(如R1、R2、R3)。
②至少有一個(gè)結(jié)點(diǎn)有多于一個(gè)以上的雙親。在”醫(yī)生、病人、病房”例中,”醫(yī)生有若干個(gè)結(jié)點(diǎn)(M個(gè)醫(yī)生結(jié)點(diǎn))無”雙親”,而”病房”有P個(gè)結(jié)點(diǎn)(即病房),并有一個(gè)以上的”雙親”(即病人)。
圖20.6.6 醫(yī)生、病房和病人之間的關(guān)系
圖20.6.7 網(wǎng)狀結(jié)構(gòu)模型
按照網(wǎng)狀數(shù)據(jù)結(jié)構(gòu)建立的數(shù)據(jù)庫系統(tǒng)稱為網(wǎng)狀數(shù)據(jù)庫系統(tǒng),其典型代表是DG(Data Base Task Group)。用數(shù)學(xué)方法可將網(wǎng)狀數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)化為層次數(shù)據(jù)結(jié)構(gòu)。
(3)關(guān)系結(jié)構(gòu)模型
關(guān)系式數(shù)據(jù)結(jié)構(gòu)把一些復(fù)雜的數(shù)據(jù)結(jié)構(gòu)歸結(jié)為簡單的二元關(guān)系(即二維表格形式)。例如某單位的職工關(guān)系就是一個(gè)二元關(guān)系(見表20.6.8)。這個(gè)四行六列的表格的每一列稱為一個(gè)字段(即屬性),字段名相當(dāng)于標(biāo)題欄中的標(biāo)題(屬性名稱);表的每一行是包含了六個(gè)屬性(工號(hào)、姓名、年齡、性別、職務(wù)、工資)的一個(gè)六元組,即一個(gè)人的記錄。這個(gè)表格清晰地反映出該單位職工的基本情況。
表20.6.8 職工基本情況
通常一個(gè)m行、n列的二維表格的結(jié)構(gòu)如表20.6.9所示。
表中每一行表示一個(gè)記錄值,每一列表示一個(gè)屬性(即字段或數(shù)據(jù)項(xiàng))。該表一共有m個(gè)記錄。每個(gè)記錄包含n個(gè)屬性。
作為一個(gè)關(guān)系的二維表,必須滿足以下條件:
(1)表中每一列必須是基本數(shù)據(jù)項(xiàng)(即不可再分解)。(2)表中每一列必須具有相同的數(shù)據(jù)類型(例如字符型或數(shù)值型)。(3)表中每一列的名字必須是唯一的。(4)表中不應(yīng)有內(nèi)容完全相同的行。(5)行的順序與列的順序不影響表格中所表示的信息的含義。
由關(guān)系數(shù)據(jù)結(jié)構(gòu)組成的數(shù)據(jù)庫系統(tǒng)被稱為關(guān)系數(shù)據(jù)庫系統(tǒng)。
在關(guān)系數(shù)據(jù)庫中,對(duì)數(shù)據(jù)的操作幾乎全部建立在一個(gè)或多個(gè)關(guān)系表格上,通過對(duì)這些關(guān)系表格的分類、合并、連接或選取等運(yùn)算來實(shí)現(xiàn)數(shù)據(jù)的管理。dBASEII就是這類數(shù)據(jù)庫管理系統(tǒng)的典型代表。對(duì)于一個(gè)實(shí)際的應(yīng)用問題(如人事管理問題),有時(shí)需要多個(gè)關(guān)系才能實(shí)現(xiàn)。用dBASEII建立起來的一個(gè)關(guān)系稱為一個(gè)數(shù)據(jù)庫(或稱數(shù)據(jù)庫文件),而把對(duì)應(yīng)多個(gè)關(guān)系建立起來的多個(gè)數(shù)據(jù)庫稱為數(shù)據(jù)庫系統(tǒng)。dBASEII的另一個(gè)重要功能是通過建立命令文件來實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的使用和管理,對(duì)于一個(gè)數(shù)據(jù)庫系統(tǒng)相應(yīng)的命令序列文件,稱為該數(shù)據(jù)庫的應(yīng)用系統(tǒng)。因此,可以概括地說,一個(gè)關(guān)系稱為一個(gè)數(shù)據(jù)庫,若干個(gè)數(shù)據(jù)庫可以構(gòu)成一個(gè)數(shù)據(jù)庫系統(tǒng)。數(shù)據(jù)庫系統(tǒng)可以派生出各種不同類型的輔助文件和建立它的應(yīng)用系統(tǒng)。
· 數(shù)據(jù)庫的要求與特性
為了使各種類型的數(shù)據(jù)庫系統(tǒng)能夠充分發(fā)揮它們的優(yōu)越性,必須對(duì)數(shù)據(jù)庫管理系統(tǒng)的使用提出一些明確的要求。
1.建立數(shù)據(jù)庫文件的要求
(1)盡量減少數(shù)據(jù)的重復(fù),使數(shù)據(jù)具有最小的冗余度。計(jì)算機(jī)早期應(yīng)用中的文件管理系統(tǒng),由于數(shù)據(jù)文件是用戶各自建立的,幾個(gè)用戶即使有許多相同的數(shù)據(jù)也得放在各自的文件中,因而造成存儲(chǔ)的數(shù)據(jù)大量重復(fù),浪費(fèi)存儲(chǔ)空間。數(shù)據(jù)庫技術(shù)正是為了克服這一缺點(diǎn)而出現(xiàn)的,所以在組織數(shù)據(jù)的存儲(chǔ)時(shí)應(yīng)避免出現(xiàn)冗余。
(2)提高數(shù)據(jù)的利用率,使眾多用戶都能共享數(shù)據(jù)資源。
(3)注意保持?jǐn)?shù)據(jù)的完整性。這對(duì)某些需要?dú)v史數(shù)據(jù)來進(jìn)行預(yù)測、決策的部門(如統(tǒng)計(jì)局、銀行等)特別重要。
(4)注意同一數(shù)據(jù)描述方法的一致性,使數(shù)據(jù)操作不致發(fā)生混亂。如一個(gè)人的學(xué)歷在人事檔案中是大學(xué)畢業(yè),而在科技檔案中卻是大學(xué)程度,這樣就容易造成混亂。
(5)對(duì)于某些需要保密的數(shù)據(jù),必須增設(shè)保密措施。
(6)數(shù)據(jù)的查找率高,根據(jù)需要數(shù)據(jù)應(yīng)能被及時(shí)維護(hù)。
2.數(shù)據(jù)庫文件的特征
無論使用哪一種數(shù)據(jù)庫管理系統(tǒng),由它們所建立的數(shù)據(jù)庫文件都可以看成是具有相同性質(zhì)的記錄的,因而這些數(shù)據(jù)庫文件都有相同的特性:
(1)文件的記錄格式相同,長度相等。
(2)不同的行是不同的記錄,因而具有不同的內(nèi)容。
(3)不同的列表示不同的字段名,同一列中的數(shù)據(jù)的性質(zhì)(屬性)相同。
(4)每一行各列的內(nèi)容是不能分割的,但行的順序和列的順序不影響文件內(nèi)容的表達(dá)。
3.文件的分類
對(duì)文件引用最多的是主文件和事物文件。其他的文件分類還包括表文件、備份文件、檔案的輸出文件等。下面將講述這些文件。
(1)主文件。主文件是某特定應(yīng)用領(lǐng)域的永久性的數(shù)據(jù)資源。主文件包含那些被定期存取以提供信息和經(jīng)常更新以反映最新狀態(tài)的記錄。典型的主文件有庫存文件、職工主文件和收帳主文件等。
(2)事務(wù)文件。事務(wù)文件包含著作為一個(gè)信息系統(tǒng)的數(shù)據(jù)活動(dòng)(事務(wù))的那些記錄。這些事務(wù)被分批以構(gòu)成事務(wù)文件。例如,從每周工資卡上錄制下來的數(shù)分批存放在一個(gè)事務(wù)文件上,然后對(duì)照工資清單文件進(jìn)行處理以便打印出工資支票和工資記錄簿。
(3)表文件。表文件是一些表格。之所以單獨(dú)建立表文件而不把表設(shè)計(jì)在程序中是為了便于修改。例如,一個(gè)公用事業(yè)公司的稅率表或國內(nèi)稅務(wù)局的稅率就可以存儲(chǔ)在表中文件。
(4)備用文件。備用文件是現(xiàn)有生產(chǎn)性文件的一個(gè)復(fù)制品。一旦生產(chǎn)性文件受到破壞,利用備用文件就可以重新建立生產(chǎn)性文件。
(5)檔案文件。檔案文件不是提供當(dāng)前處理使用的,而是保存起來作為歷史參照的。例如,國內(nèi)稅務(wù)局(IRS)可能要求檢查某個(gè)人最近15年的歷史。實(shí)際上,檔案文件恰恰是在給定時(shí)間內(nèi)工作的一個(gè)”快照”。
(6)輸出文件。輸出文件包含將要打印在打印機(jī)上的、顯在屏幕上的或者繪制在繪圖儀上的那些信息的數(shù)值映象。輸出文件可以是”假脫機(jī)的”(存儲(chǔ)在輔存設(shè)備上),當(dāng)輸出設(shè)備可用時(shí)才進(jìn)行實(shí)際的輸出。
數(shù)據(jù)倉庫
1.
數(shù)據(jù)倉庫是在企業(yè)管理和決策中面向主題的、集成的、與時(shí)間相關(guān)的、不可修改的數(shù)據(jù)
數(shù)據(jù)倉庫,英文名稱為Data Warehouse,可簡寫為DW。
數(shù)據(jù)倉庫之父Bill Inmon在1991年出版的“Building the Data Warehouse”一書中所提出的定義被廣泛接受——數(shù)據(jù)倉庫(Data Warehouse)是一個(gè)面向主題的(Subject Oriented)、集成的(Integrated)、相對(duì)穩(wěn)定的(Non-Volatile)、反映歷史變化(Time Variant)的數(shù)據(jù),用于支持管理決策(Decision Making Support)。
◆面向主題:操作型數(shù)據(jù)庫的數(shù)據(jù)組織面向事務(wù)處理任務(wù),各個(gè)業(yè)務(wù)系統(tǒng)之間各自分離,而數(shù)據(jù)倉庫中的數(shù)據(jù)是按照一定的主題域進(jìn)行組織的。
◆集成的:數(shù)據(jù)倉庫中的數(shù)據(jù)是在對(duì)原有分散的數(shù)據(jù)庫數(shù)據(jù)抽取、清理的基礎(chǔ)上經(jīng)過系統(tǒng)加工、匯總和整理得到的,必須消除源數(shù)據(jù)中的不一致性,以保證數(shù)據(jù)倉庫內(nèi)的信息是關(guān)于整個(gè)企業(yè)的一致的全局信息。
◆相對(duì)穩(wěn)定的:數(shù)據(jù)倉庫的數(shù)據(jù)主要供企業(yè)決策分析之用,所涉及的數(shù)據(jù)操作主要是數(shù)據(jù)查詢,一旦某個(gè)數(shù)據(jù)進(jìn)入數(shù)據(jù)倉庫以后,一般情況下將被長期保留,也就是數(shù)據(jù)倉庫中一般有大量的查詢操作,但修改和刪除操作很少,通常只需要定期的加載、刷新。
◆反映歷史變化:數(shù)據(jù)倉庫中的數(shù)據(jù)通常包含歷史信息,系統(tǒng)記錄了企業(yè)從過去某一時(shí)點(diǎn)(如開始應(yīng)用數(shù)據(jù)倉庫的時(shí)點(diǎn))到目前的各個(gè)階段的信息,通過這些信息,可以對(duì)企業(yè)的發(fā)展歷程和未來趨勢做出定量分析和預(yù)測。
數(shù)據(jù)倉庫是一個(gè)過程而不是一個(gè)項(xiàng)目。
數(shù)據(jù)倉庫系統(tǒng)是一個(gè)信息提供平臺(tái),他從業(yè)務(wù)處理系統(tǒng)獲得數(shù)據(jù),主要以星型模型和雪花模型進(jìn)行數(shù)據(jù)組織,并為用戶提供各種手段從數(shù)據(jù)中獲取信息和知識(shí)。
從功能結(jié)構(gòu)化分,數(shù)據(jù)倉庫系統(tǒng)至少應(yīng)該包含數(shù)據(jù)獲?。―ata Acquisition)、數(shù)據(jù)存儲(chǔ)(Data Storage)、數(shù)據(jù)訪問(Data Access)三個(gè)關(guān)鍵部分。
什么是數(shù)據(jù)倉庫
(轉(zhuǎn)載自北大高科網(wǎng)站,
)
目前,數(shù)據(jù)倉庫一詞尚沒有一個(gè)統(tǒng)一的定義,著名的數(shù)據(jù)倉庫專家W.H.Inmon在其著作《Building the Data Warehouse》一書中給予如下描述:數(shù)據(jù)倉庫(Data Warehouse)是一個(gè)面向主題的(Subject Oriented)、集成的(Integrate)、相對(duì)穩(wěn)定的(Non-Volatile)、反映歷史變化(Time Variant)的數(shù)據(jù),用于支持管理決策。對(duì)于數(shù)據(jù)倉庫的概念我們可以從兩個(gè)層次予以理解,首先,數(shù)據(jù)倉庫用于支持決策,面向分析型數(shù)據(jù)處理,它不同于企業(yè)現(xiàn)有的操作型數(shù)據(jù)庫;其次,數(shù)據(jù)倉庫是對(duì)多個(gè)異構(gòu)的數(shù)據(jù)源有效集成,集成后按照主題進(jìn)行了重組,并包含歷史數(shù)據(jù),而且存放在數(shù)據(jù)倉庫中的數(shù)據(jù)一般不再修改。
根據(jù)數(shù)據(jù)倉庫概念的含義,數(shù)據(jù)倉庫擁有以下四個(gè)特點(diǎn):
1、面向主題。操作型數(shù)據(jù)庫的數(shù)據(jù)組織面向事務(wù)處理任務(wù),各個(gè)業(yè)務(wù)系統(tǒng)之間各自分離,而數(shù)據(jù)倉庫中的數(shù)據(jù)是按照一定的主題域進(jìn)行組織。主題是一個(gè)抽象的概念,是指用戶使用數(shù)據(jù)倉庫進(jìn)行決策時(shí)所關(guān)心的重點(diǎn)方面,一個(gè)主題通常與多個(gè)操作型信息系統(tǒng)相關(guān)。
2、集成的。面向事務(wù)處理的操作型數(shù)據(jù)庫通常與某些特定的應(yīng)用相關(guān),數(shù)據(jù)庫之間相互獨(dú)立,并且往往是異構(gòu)的。而數(shù)據(jù)倉庫中的數(shù)據(jù)是在對(duì)原有分散的數(shù)據(jù)庫數(shù)據(jù)抽取、清理的基礎(chǔ)上經(jīng)過系統(tǒng)加工、匯總和整理得到的,必須消除源數(shù)據(jù)中的不一致性,以保證數(shù)據(jù)倉庫內(nèi)的信息是關(guān)于整個(gè)企業(yè)的一致的全局信息。
3、相對(duì)穩(wěn)定的。操作型數(shù)據(jù)庫中的數(shù)據(jù)通常實(shí)時(shí)更新,數(shù)據(jù)根據(jù)需要及時(shí)發(fā)生變化。數(shù)據(jù)倉庫的數(shù)據(jù)主要供企業(yè)決策分析之用,所涉及的數(shù)據(jù)操作主要是數(shù)據(jù)查詢,一旦某個(gè)數(shù)據(jù)進(jìn)入數(shù)據(jù)倉庫以后,一般情況下將被長期保留,也就是數(shù)據(jù)倉庫中一般有大量的查詢操作,但修改和刪除操作很少,通常只需要定期的加載、刷新。
4、反映歷史變化。操作型數(shù)據(jù)庫主要關(guān)心當(dāng)前某一個(gè)時(shí)間段內(nèi)的數(shù)據(jù),而數(shù)據(jù)倉庫中的數(shù)據(jù)通常包含歷史信息,系統(tǒng)記錄了企業(yè)從過去某一時(shí)點(diǎn)(如開始應(yīng)用數(shù)據(jù)倉庫的時(shí)點(diǎn))到目前的各個(gè)階段的信息,通過這些信息,可以對(duì)企業(yè)的發(fā)展歷程和未來趨勢做出定量分析和預(yù)測。
企業(yè)數(shù)據(jù)倉庫的建設(shè),是以現(xiàn)有企業(yè)業(yè)務(wù)系統(tǒng)和大量業(yè)務(wù)數(shù)據(jù)的積累為基礎(chǔ)。數(shù)據(jù)倉庫不是靜態(tài)的概念,只有把信息及時(shí)交給需要這些信息的使用者,供他們做出改善其業(yè)務(wù)經(jīng)營的決策,信息才能發(fā)揮作用,信息才有意義。而把信息加以整理歸納和重組,并及時(shí)提供給相應(yīng)的管理決策人員,是數(shù)據(jù)倉庫的根本任務(wù)。因此,從產(chǎn)業(yè)界的角度看,數(shù)據(jù)倉庫建設(shè)是一個(gè)工程,是一個(gè)過程。
整個(gè)數(shù)據(jù)倉庫系統(tǒng)是一個(gè)包含四個(gè)層次的體系結(jié)構(gòu),具體由下圖表示。
數(shù)據(jù)倉庫系統(tǒng)體系結(jié)構(gòu)
·數(shù)據(jù)源:是數(shù)據(jù)倉庫系統(tǒng)的基礎(chǔ),是整個(gè)系統(tǒng)的數(shù)據(jù)源泉。通常包括企業(yè)內(nèi)部信息和外部信息。內(nèi)部信息包括存放于RDBMS中的各種業(yè)務(wù)處理數(shù)據(jù)和各類文檔數(shù)據(jù)。外部信息包括各類法律法規(guī)、市場信息和競爭對(duì)手的信息等等;
·數(shù)據(jù)的存儲(chǔ)與管理:是整個(gè)數(shù)據(jù)倉庫系統(tǒng)的核心。數(shù)據(jù)倉庫的真正關(guān)鍵是數(shù)據(jù)的存儲(chǔ)和管理。數(shù)據(jù)倉庫的組織管理方式?jīng)Q定了它有別于傳統(tǒng)數(shù)據(jù)庫,同時(shí)也決定了其對(duì)外部數(shù)據(jù)的表現(xiàn)形式。要決定采用什么產(chǎn)品和技術(shù)來建立數(shù)據(jù)倉庫的核心,則需要從數(shù)據(jù)倉庫的技術(shù)特點(diǎn)著手分析。針對(duì)現(xiàn)有各業(yè)務(wù)系統(tǒng)的數(shù)據(jù),進(jìn)行抽取、清理,并有效集成,按照主題進(jìn)行組織。數(shù)據(jù)倉庫按照數(shù)據(jù)的覆蓋范圍可以分為企業(yè)級(jí)數(shù)據(jù)倉庫和部門級(jí)數(shù)據(jù)倉庫(通常稱為數(shù)據(jù)集市)。
·OLAP服務(wù)器:對(duì)分析需要的數(shù)據(jù)進(jìn)行有效集成,按多維模型予以組織,以便進(jìn)行多角度、多層次的分析,并發(fā)現(xiàn)趨勢。其具體實(shí)現(xiàn)可以分為:ROLAP、MOLAP和HOLAP。ROLAP基本數(shù)據(jù)和聚合數(shù)據(jù)均存放在RDBMS之中;MOLAP基本數(shù)據(jù)和聚合數(shù)據(jù)均存放于多維數(shù)據(jù)庫中;HOLAP基本數(shù)據(jù)存放于RDBMS之中,聚合數(shù)據(jù)存放于多維數(shù)據(jù)庫中。
·前端工具:主要包括各種報(bào)表工具、查詢工具、數(shù)據(jù)分析工具、數(shù)據(jù)挖掘工具以數(shù)據(jù)挖掘及各種基于數(shù)據(jù)倉庫或數(shù)據(jù)集市的應(yīng)用開發(fā)工具。其中數(shù)據(jù)分析工具主要針對(duì)OLAP服務(wù)器,報(bào)表工具、數(shù)據(jù)挖掘工具主要針對(duì)數(shù)據(jù)倉庫。
目前,數(shù)據(jù)倉庫一詞尚沒有一個(gè)統(tǒng)一的定義,著名的數(shù)據(jù)倉庫專家W.H.Inmon在其著作《Building the Data Warehouse》一書中給予如下描述:數(shù)據(jù)倉庫(Data Warehouse)是一個(gè)面向主題的(Subject Oriented)、集成的(Integrate)、相對(duì)穩(wěn)定的(Non-Volatile)、反映歷史變化(Time Variant)的數(shù)據(jù),用于支持管理決策。對(duì)于數(shù)據(jù)倉庫的概念我們可以從兩個(gè)層次予以理解,首先,數(shù)據(jù)倉庫用于支持決策,面向分析型數(shù)據(jù)處理,它不同于企業(yè)現(xiàn)有的操作型數(shù)據(jù)庫;其次,數(shù)據(jù)倉庫是對(duì)多個(gè)異構(gòu)的數(shù)據(jù)源有效集成,集成后按照主題進(jìn)行了重組,并包含歷史數(shù)據(jù),而且存放在數(shù)據(jù)倉庫中的數(shù)據(jù)一般不再修改。多維
數(shù)據(jù)倉庫的組成
數(shù)據(jù)倉庫數(shù)據(jù)庫
是整個(gè)數(shù)據(jù)倉庫環(huán)境的核心,是數(shù)據(jù)存放的地方和提供對(duì)數(shù)據(jù)檢索的支持。相對(duì)于操縱型數(shù)據(jù)庫來說其突出的特點(diǎn)是對(duì)海量數(shù)據(jù)的支持和快速的檢索技術(shù)。
數(shù)據(jù)抽取工具
把數(shù)據(jù)從各種各樣的存儲(chǔ)方式中拿出來,進(jìn)行必要的轉(zhuǎn)化、整理,再存放到數(shù)據(jù)倉庫內(nèi)。對(duì)各種不同數(shù)據(jù)存儲(chǔ)方式的訪問能力是數(shù)據(jù)抽取工具的關(guān)鍵,應(yīng)能生成COBOL程序、MVS作業(yè)控制語言(JCL)、UNIX腳本、和SQL語句等,以訪問不同的數(shù)據(jù)。數(shù)據(jù)轉(zhuǎn)換都包括,刪除對(duì)決策應(yīng)用沒有意義的數(shù)據(jù)段;轉(zhuǎn)換到統(tǒng)一的數(shù)據(jù)名稱和定義;計(jì)算統(tǒng)計(jì)和衍生數(shù)據(jù);給缺值數(shù)據(jù)賦給缺省值;把不同的數(shù)據(jù)定義方式統(tǒng)一。
元數(shù)據(jù)
元數(shù)據(jù)是描述數(shù)據(jù)倉庫內(nèi)數(shù)據(jù)的結(jié)構(gòu)和建立方法的數(shù)據(jù)??蓪⑵浒从猛镜牟煌譃閮深?,技術(shù)元數(shù)據(jù)和商業(yè)元數(shù)據(jù)。
技術(shù)元數(shù)據(jù)是數(shù)據(jù)倉庫的設(shè)計(jì)和管理人員用于開發(fā)和日常管理數(shù)據(jù)倉庫是用的數(shù)據(jù)。包括:數(shù)據(jù)源信息;數(shù)據(jù)轉(zhuǎn)換的描述;數(shù)據(jù)倉庫內(nèi)對(duì)象和數(shù)據(jù)結(jié)構(gòu)的定義;數(shù)據(jù)清理和數(shù)據(jù)更新時(shí)用的規(guī)則;源數(shù)據(jù)到目的數(shù)據(jù)的映射;用戶訪問權(quán)限,數(shù)據(jù)備份歷史記錄,數(shù)據(jù)導(dǎo)入歷史記錄,信息發(fā)布?xì)v史記錄等。
商業(yè)元數(shù)據(jù)從商業(yè)業(yè)務(wù)的角度描述了數(shù)據(jù)倉庫中的數(shù)據(jù)。包括:業(yè)務(wù)主題的描述,包含的數(shù)據(jù)、查詢、報(bào)表;
元數(shù)據(jù)為訪問數(shù)據(jù)倉庫提供了一個(gè)信息目錄(informationdirectory),這個(gè)目錄全面描述了數(shù)據(jù)倉庫中都有什么數(shù)據(jù)、這些數(shù)據(jù)怎么得到的、和怎么訪問這些數(shù)據(jù)。是數(shù)據(jù)倉庫運(yùn)行和維護(hù)的中心,數(shù)據(jù)倉庫服務(wù)器利用他來存貯和更新數(shù)據(jù),用戶通過他來了解和訪問數(shù)據(jù)。
訪問工具
為用戶訪問數(shù)據(jù)倉庫提供手段。有數(shù)據(jù)查詢和報(bào)表工具;應(yīng)用開發(fā)工具;管理信息系統(tǒng)(EIS)工具;在線分析(OLAP)工具;數(shù)據(jù)挖掘工具。
數(shù)據(jù)集市(DataMarts)
為了特定的應(yīng)用目的或應(yīng)用范圍,而從數(shù)據(jù)倉庫中獨(dú)立出來的一部分?jǐn)?shù)據(jù),也可稱為部門數(shù)據(jù)或主題數(shù)據(jù)(subjectarea)。在數(shù)據(jù)倉庫的實(shí)施過程中往往可以從一個(gè)部門的數(shù)據(jù)集市著手,以后再用幾個(gè)數(shù)據(jù)集市組成一個(gè)完整的數(shù)據(jù)倉庫。需要注意的就是再實(shí)施不同的數(shù)據(jù)集市時(shí),同一含義的字段定義一定要相容,這樣再以后實(shí)施數(shù)據(jù)倉庫時(shí)才不會(huì)造成煩。
數(shù)據(jù)倉庫管理:安全和特權(quán)管理;跟蹤數(shù)據(jù)的更新;數(shù)據(jù)質(zhì)量檢查;管理和更新元數(shù)據(jù);審計(jì)和報(bào)告數(shù)據(jù)倉庫的使用和狀態(tài);刪除數(shù)據(jù);復(fù)制、分割和分發(fā)數(shù)據(jù);備份和恢復(fù);存儲(chǔ)管理。
信息發(fā)布系統(tǒng):把數(shù)據(jù)倉庫中的數(shù)據(jù)或其他相關(guān)的數(shù)據(jù)發(fā)送給不同的地點(diǎn)或用戶?;赪eb的信息發(fā)布系統(tǒng)是對(duì)付多用戶訪問的最有效方法。
設(shè)計(jì)數(shù)據(jù)倉庫的九個(gè)步驟
)選擇合適的主題(所要解決問題的領(lǐng)域)
)明確定義fact表
)確定和確認(rèn)維
)choosingthefacts
)計(jì)算并存儲(chǔ)fact表中的衍生數(shù)據(jù)段
)roundingoutthedimensiontables
)choosingthedurationofthedatabase
)theneedtotrackslowlychangingdimensions
)確定查詢優(yōu)先級(jí)和查詢模式。
技術(shù)上
硬件平臺(tái):數(shù)據(jù)倉庫的硬盤容量通常要是操作數(shù)據(jù)庫硬盤容量的2-3倍。通常大型機(jī)具有更可靠的性能和和穩(wěn)定性,也容易與歷史遺留的系統(tǒng)結(jié)合在一起;而PC服務(wù)器或UNIX服務(wù)器更加靈活,容易操作和提供動(dòng)態(tài)生成查詢請求進(jìn)行查詢的能力。選擇硬件平臺(tái)時(shí)要考慮的問題:是否提供并行的I/O吞吐?對(duì)多CPU的支持能力如何?
數(shù)據(jù)倉庫DBMS:他的存儲(chǔ)大數(shù)據(jù)量的能力、查詢的性能、和對(duì)并行處理的支持如何。
網(wǎng)絡(luò)結(jié)構(gòu):數(shù)據(jù)倉庫的實(shí)施在那部分網(wǎng)絡(luò)段上會(huì)產(chǎn)生大量的數(shù)據(jù)通信,需不需要對(duì)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行改進(jìn)。
實(shí)現(xiàn)上
建立數(shù)據(jù)倉庫的步驟
1)收集和分析業(yè)務(wù)需求
2)建立數(shù)據(jù)模型和數(shù)據(jù)倉庫的物理設(shè)計(jì)
3)定義數(shù)據(jù)源
4)選擇數(shù)據(jù)倉庫技術(shù)和平臺(tái)
5)從操作型數(shù)據(jù)庫中抽取、凈化、和轉(zhuǎn)換數(shù)據(jù)到數(shù)據(jù)倉庫
6)選擇訪問和報(bào)表工具
7)選擇數(shù)據(jù)庫連接軟件
8)選擇數(shù)據(jù)分析和數(shù)據(jù)展示軟件
9)更新數(shù)據(jù)倉庫
數(shù)據(jù)抽取、清理、轉(zhuǎn)換、和移植
1)數(shù)據(jù)轉(zhuǎn)換工具要能從各種不同的數(shù)據(jù)源中讀取數(shù)據(jù)。
2)支持平面文件、索引文件、和legacyDBMS。
3)能以不同類型數(shù)據(jù)源為輸入整合數(shù)據(jù)。
4)具有規(guī)范的數(shù)據(jù)訪問接口
5)更好具有從數(shù)據(jù)字典中讀取數(shù)據(jù)的能力
6)工具生成的代碼必須是在開發(fā)環(huán)境中可維護(hù)的
7)能只抽取滿足指定條件的數(shù)據(jù),和源數(shù)據(jù)的指定部分
8)能在抽取中進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換和字符集轉(zhuǎn)換
9)能在抽取的過程中計(jì)算生成衍生字段
10)能讓數(shù)據(jù)倉庫管理系統(tǒng)自動(dòng)調(diào)用以定期進(jìn)行數(shù)據(jù)抽取工作,或能將結(jié)果生成平面文件
11)必須對(duì)軟件供應(yīng)商的生命力和產(chǎn)品支持能力進(jìn)行仔細(xì)評(píng)估
主要數(shù)據(jù)抽取工具供應(yīng)商:Prisolutions.Carleton’sPASSPORT.InformationBuildersInc.’s
EDA/SQL.SASInstituteInc.
高級(jí)數(shù)據(jù)庫綜合項(xiàng)目的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于高級(jí)數(shù)據(jù)庫綜合項(xiàng)目,高級(jí)數(shù)據(jù)庫:實(shí)現(xiàn)綜合項(xiàng)目,數(shù)據(jù)庫的發(fā)展簡史,數(shù)據(jù)倉庫與數(shù)據(jù)庫有什么聯(lián)系的信息別忘了在本站進(jìn)行查找喔。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
文章標(biāo)題:高級(jí)數(shù)據(jù)庫:實(shí)現(xiàn)綜合項(xiàng)目(高級(jí)數(shù)據(jù)庫綜合項(xiàng)目)
標(biāo)題路徑:http://www.dlmjj.cn/article/djjosds.html


咨詢
建站咨詢
