當下,數據庫開發已經是一門炙手可熱的技術方向,從事數據庫開發的人也越來越多,但是你知道數據庫技術的發展由來嗎?來來來,今天小編就帶大家重走一遍數據庫技術發展史,相信你在讀完后會對數據庫有更深的了解,以后和小伙伴們聊起數據庫也更加有底氣!
數據庫技術是因數據管理任務的需要而產生,數據管理是指對數據進行分類、組織、編碼、存儲、檢索和維護,是數據處理的中心問題。在數據管理的發展歷史中經歷了三個階段。
第一:人工管理階段
在20世紀50年代中期以前,這個階段如果要使用和進行數據計算,需要程序開發人員自己設計程序,沒有相應的軟件系統負責數據管理工作。應用程序中不僅要規定數據邏輯結構,還要設計物理結構,包括存儲結構、存取方法、輸入方式等。程序員負擔非常重,非程序員無法使用計算機系統。
第二:文件系統階段
這個時期大約從20世紀50年代后期到60年代中期,這個階段里數據組織成獨立的數據文件,按文件名訪問,按記錄進行存取的方式進行數據管理,由文件系統提供文件打開、關閉、讀寫和存取。
第三:20世紀60年代后期
進入到了數據庫系統階段,出現了數據庫系統、專有的軟件系統來進行大規模的數據管理。這個階段也隨著歷史不斷發展,涌現出了層次型數據庫、網狀型數據庫以及最經典的關系型數據庫。
在這三個階段里面,人工管理階段是最原始的階段,數據不具有共享性,因為數據面向應用程序的一組數據對應一個程序,多個應用程序處理相同數據時必須各自定義,無法互相利用,所以程序之間有大量的冗余數據。
另外數據不具獨立性,也就是說數據邏輯結構和物理結構發生變化后,必須對應用程序做出相對應的修改。數據完全依賴于應用程序,我們稱之為數據缺乏獨立性,文件系統階段相對而言具有一定共享性,但這種共享性還是比較差,冗余度也大,文件仍然是面向應用的,不同的應用程序,即使使用相同數據也必須各自建立文件。所以相同數據重復存儲數據榮譽度大,各自管理容易產生數據不一致。
獨立性差是指文件為特定應用服務文件的邏輯結構,是指針對應用的來設計的。數據邏輯結構改變時候,應用程序中文件結構的定義就必須修改。數據依賴于應用程序,缺乏獨立性。另外文件之間因為是孤立的,所以不能反映出現實世界事物之間的內在聯系。而從文件系統到數據庫系統,則標志著數據管理技術的飛躍。
我們來看一下數據庫系統的優勢。
整體數據結構化,數據結構是面向整個組織的,而不是針對某一個應用的。記錄的結構和記錄之間的聯系,由數據庫管理、系統維護,從而減輕了程序員的工作量。數據共享度高,數據共享可以被多個應用共享,可以減少數據冗余節約存儲空間,數據共享能夠避免數據之間不相容和不一致性。
另外擴充是因為要考慮整體系統的需求,形成有結構的數據,所以數據庫系統彈性高,易于擴充,可以適應多種要求。數據獨立性高,物理獨立性,數據的物理存儲特性有數據庫管理、系統管理,用戶程序不需要了解,應用程序只需要處理邏輯結構,數據的物理存儲改變時,應用程序不用做出變化,邏輯獨立性,數據庫的數據邏輯結構改變時,用戶程序可以不變。數據獨立性,簡化了應用程序的開發,大大降低了應用程序的復雜度。第四方面統一管理和控制。
數據的安全性保護是指保護數據,以防止不合法使用而造成的數據泄密和破壞。數據的完整性檢查指的是數據的正確性、有效性和相同性。完整的完整性檢查,將數據控制在有效的范圍內,并保證數據之間滿足一定的關系。并發控制是指多個用戶并發訪問數據庫,為避免相互干擾而得到的結果,需要對多用戶的并發操作加以控制和協調。
數據庫恢復是指在發生硬件故障、軟件故障、操作失誤等情況時,管理系統應具備將數據庫從錯誤狀態恢復到某一已知的正確狀態的功能。
數據庫系統的發展有以下三個特點:
數據庫的發展集中在數據模型的發展上,數據模型是數據庫系統的核心和基礎,所以數據庫系統的發展和數據模型的發展密不可分。數據庫模型的劃分維度是數據庫系統劃分的一個重要標準。
與其他計算機技術的交叉結合,計算機新技術層出不窮,數據庫和其他計算機技術交叉結合,是數據庫技術的一個顯著特征。比如和分布式處理技術結合產生的分布式數據庫和云技術結合產生的云數據庫等。
面向應用領域發展數據庫、新技術、通用數據庫在特定領域無法滿足應用需求,需要根據領域的特定需求來研制特定的數據庫系統。
責任編輯:lq
-
數據管理
+關注
關注
1文章
296瀏覽量
19626 -
數據庫
+關注
關注
7文章
3816瀏覽量
64449 -
數據模型
+關注
關注
0文章
49瀏覽量
10033
原文標題:敲黑板!不知道這些事兒,怎么和人家聊數據庫開發?
文章出處:【微信號:Huawei_Developer,微信公眾號:華為開發者社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論