首頁技術(shù)文章正文

數(shù)據(jù)庫是什么?數(shù)據(jù)庫的由哪幾部分組成?

更新時間:2020-09-18 來源:黑馬程序員 瀏覽量:

數(shù)據(jù)庫是按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲和管理數(shù)據(jù)的倉庫,它可以被看作電子化的文件柜——存儲文件的處所,用戶可以對文件中的數(shù)據(jù)進行增加、刪除、修改、查找等操作。需要注意的是,這里所說的數(shù)據(jù)不僅包括普通意義上的數(shù)字,還包括文字、圖像、聲音等。

大多數(shù)初學者認為數(shù)據(jù)庫就是數(shù)據(jù)庫系統(tǒng),其實,數(shù)據(jù)庫系統(tǒng)的范圍要比數(shù)據(jù)庫大很多。數(shù)據(jù)庫系統(tǒng)是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng),除了數(shù)據(jù)庫,還包括數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫應用程序等。為了讓讀者更好地理解,下面通過一張圖來描述數(shù)據(jù)庫系統(tǒng),如圖1所示。

1600419940887_數(shù)據(jù)庫.png


圖1中描述了數(shù)據(jù)庫系統(tǒng)的3個重要部分,各部分的介紹如下:

(1) 數(shù)據(jù)庫(DBS,Database Sysfem)。數(shù)據(jù)庫提供了存儲空間來存儲各種數(shù)據(jù),可將其視為一個存儲數(shù)據(jù)的容器。

(2) 數(shù)據(jù)庫管理系統(tǒng)(DBMS,Data Base Management System)。數(shù)據(jù)庫管理系統(tǒng)是專門創(chuàng)建和管理數(shù)據(jù)庫的一套軟件,介于應用程序和操作系統(tǒng)之間,例如MySQL、Oracle、MongoDB和Redis等。

(3) 數(shù)據(jù)庫應用程序。數(shù)據(jù)庫應用程序是用戶定制的符合自身需求的程序,用戶通過該應用程序與數(shù)據(jù)庫管理系統(tǒng)進行通信,并訪問和管理數(shù)據(jù)庫中存儲的數(shù)據(jù)。

需要注意的是,后續(xù)小節(jié)中提到的數(shù)據(jù)庫均指的是數(shù)據(jù)庫管理系統(tǒng)。

數(shù)據(jù)庫是計算機領(lǐng)域中最重要的技術(shù)之一,在諸如互聯(lián)網(wǎng)、銀行、通信、政府部門、企業(yè)單位、科研機構(gòu)等領(lǐng)域都有應用。數(shù)據(jù)庫具有以下優(yōu)點:

·精準高效的數(shù)據(jù)查詢。數(shù)據(jù)庫按照一定的結(jié)構(gòu)組織數(shù)據(jù)庫中的數(shù)據(jù),可準確且快速地查詢到要求的數(shù)據(jù);

·減小數(shù)據(jù)冗余度。數(shù)據(jù)庫從整體的角度上描述數(shù)據(jù),使得數(shù)據(jù)可面向整個體系的應用程序,而不只針對某個應用程序,從而大大地減少數(shù)據(jù)的冗余,節(jié)省存儲空間。

·較高的數(shù)據(jù)獨立性。數(shù)據(jù)獨立性是指應用程序與存儲在數(shù)據(jù)庫中數(shù)據(jù)的相互獨立性。也就是說,數(shù)據(jù)在數(shù)據(jù)庫中的存儲是由數(shù)據(jù)庫管理系統(tǒng)負責的,應用程序一般無需了解,只需要處理數(shù)據(jù)的邏輯結(jié)構(gòu)。這樣當數(shù)據(jù)庫結(jié)構(gòu)修改時應用程序盡可能不改變或少改變,減少了應用程序開發(fā)人員的工作量。

·良好的數(shù)據(jù)共享性。數(shù)據(jù)庫中的數(shù)據(jù)是共享的,這樣不僅使應用程序的編寫更加方便,而且系統(tǒng)易維護、易擴充。

猜你喜歡:

數(shù)據(jù)庫存儲結(jié)構(gòu)介紹

數(shù)據(jù)庫和數(shù)據(jù)庫系統(tǒng)分別是什么?

常見的數(shù)據(jù)庫有哪幾種?

Python培訓課程

分享到:
在線咨詢 我要報名
和我們在線交談!