简述数据库系统
一、數據庫系統
數據庫系統是由數據庫、數據庫管理系統、應用程序和數據庫管理員組成的存儲、管理、處理和維護數據的系統。
以上這句話是對數據庫系統非常嚴謹的定義。我這篇博客是想從自己的角度來重新認識一下數據庫系統。在逐個剖析以上這些名詞的含義之前先考慮一個問題:我們為什么要引入數據庫系統?換句話說,引入數據庫系統可以幫助我們解決什么問題?
二、引入數據庫系統的必要性
數據,也叫做信息資源,已經成為各個組織最寶貴的無形財產,因此各個組織機構也都十分需要一個可以存儲和處理數據的技術。尤其是進入互聯網時代以來,數據量大幅度的增長,用戶每天用各種終端訪問各種服務器里的數據,那么數據的存儲和處理技術就顯得更為重要了。數據庫系統由此產生,數據庫系統就是存儲、管理、處理和維護數據的系統。介紹完這個后就接著聊一下數據庫系統的組成部分。
三、數據庫系統的組成部分
數據庫系統由數據庫、數據庫管理系統、應用程序、數據庫管理員四部分組成。
1.數據庫
顧名思義,數據庫就是存放數據的倉庫,只不過這個倉庫是在計算機的存儲設備上,類似于我們會將現實中的倉庫中的貨物按一定規律存放,數據也是按一定的格式存放在數據庫中的。
2.數據庫管理系統
我們有了數據庫這個倉庫來存放我們的數據了,那么,是不是就需要一個有效組織管理數據的工具?完成這個任務的就是數據庫管理系統。
3.應用程序
用與數據庫接口的高級語言開發出的應用程序。
4.數據庫管理員
人員也算是數據庫系統的一部分。數據庫管理員負責管理和控制數據庫系統。
?
到此,數據庫系統是個什么東西我們就理解了。接下來,我們聊一聊數據庫系統在計算機中處于什么位置。我們從底層往上層說,首先最底層的一定是硬件,接下來硬件上面有計算機的操作系統,然后是數據庫管理系統,接下來是應用開發工具,最后是應用程序。也就是:硬件->計算機操作系統->數據庫管理系統->應用開發工具->應用程序。
看到這里,我就會想起另一種數據集合的存儲管理系統:文件系統。相信大家會有一個疑問產生:文件系統和數據庫系統之間有什么區別?這里我先暫不詳述,留待以后討論。現在先討論一下數據庫系統的主要特點。
?
四、數據庫系統的主要特點
1.數據結構化
???
如圖,這里我創建了兩個表,一個表用于存儲學生的基本信息,另一個表用于存儲學生的詳細情況。有些學生的經歷比較豐富,詳細情況的敘述也比較長,有些同學沒有詳細情況的敘述。表創建好之后,直接可以用insert into插入數據。然后使用select就可以查詢出我們需要的信息??雌饋肀容^簡潔明了。
如若該系統比較復雜,也是可以創建這種表與表之間的關系。那么,什么是數據結構化呢?
數據結構化是指數據庫中的數據不再僅僅是面向應用的,而是面向整個組織的。不僅數據的內部具有結構,數據之間也具有聯系。數據庫整體是結構化的。
2.數據的高共享性、低冗余性且易于擴充
數據庫數據是面向組織的,所以它可以被多個用戶、多個應用使用。
數據的共享可以減少冗余,節約存儲空間。
數據的共享不僅僅可以讓多個應用同時使用數據庫,而且可以增加新的應用。我們可以使用數據庫整體的各種子集用于不同的應用系統,當需求改變,只需重新選取不同子集,或者加上一部分數據便可滿足新的需求。
3.數據獨立性高
數據獨立性又分為物理獨立性與邏輯獨立性。這里不詳述。好處在于減少了應用程序的維護與修改。
4.數據由數據庫管理系統統一管理和控制
數據庫的共享會帶來數據的安全隱患,所以數據庫管理系統必須提供一些管理控制功能。
?
五、文件系統與數據庫系統的本質區別
分析完數據庫系統的特點,想必文件系統與數據庫系統之間的區別就出來了。實際上,它們的本質區別在于數據庫系統的數據有結構化的特點,而文件系統數據內部是有結構化的,但數據整體不具備這一特點。我們可以考慮一下上面的例子,如果用文件系統來做這樣的學生信息管理系統該如何做呢?顯然也是可以的,不過程序員的許多精力要放在不同文件中記錄之間的聯系,使用fopen、fread、fwrite、fseek、fclose等調用來操作,會特別麻煩。而用擁有數據結構化特點的數據庫系統只需要一個語句就可以實現這些功能。
???
總結
- 上一篇: Symantec Endpoint Pr
- 下一篇: otg模拟器_全能模拟器 RetroAr