您好,登錄后才能下訂單哦!
1.數據庫概述
1.1.引言
以上圖片是什么?
答案:車庫
車庫用來做什么?
答案:停放車輛,換句話說:存儲汽車。
數據庫用來做什么?
答案:存儲數據。
思考1:老師讓你匯總下本周遲到人數,你如何記錄?
數據量比較小,用一個excel表格就存放遲到人的名單。
思考2:2017年四川高考成績如何存儲?
數據量大了,顯然excel不能滿足,就需要存儲在數據庫里面。
不僅如此,很多企業都有自己的數據需要管理,都需要使用數據庫。
1.2.什么是數據庫
數據庫(Database)是按照數據結構來組織、存儲和管理數據的倉庫,它產生于距今六十多年前,隨著信息技術和市場的發展,特別是二十世紀九十年代以后,數據庫技術得到了更加快速的發展,應用得更加廣泛。主要用它進行管理各種系統的數據,作為科學研究和決策的重要技術手段。
常見的數據庫有哪些:
下圖是2015年數據庫排行
關系型數據庫[什么是關系型數據庫?
關系型數據庫 以行和列的形式存儲數據,以便于用戶理解。這一系列的行和列被稱為表,一組表組成了數據庫。表與表之間的數據記錄有關系。
]:Access mySql SqlServer oracle db2等。
非關系型數據庫: MongoDB,Redis,HBase,CouchDB等。
文檔型數據這個名字中,“文檔”兩個字很容易誤解。其實這個文檔就是 bson 。bson 是 json 的超集,比如 json 中沒法儲存二進制類型,而 bson 拓展了類型,提供了二進制支持。mongodb 中存儲的一條條記錄都可以用 bson 來表示。所以你也可以認為,mongodb 是個存 bson 數據的數據庫。
數據庫是一門學科,專門做數據庫運維的人叫Database Administrator,簡稱DBA,有的DBA指深入專研一種數據庫。
思考:在這兩天的學習過程中,對于我們web前端學科的同學來說,我們如何去學它,掌握到什么程度?
我們對大家的要求:
?了解數據庫發展歷史。(面試用)
?會安裝MongoDB和配置環境變量。
?學會常用的命令。
?學會用后端語言進行MongoDB的CRUD操作。
1.3.NoSQL簡介
NoSQL,指的是非關系型的數據庫。NoSQL有時也稱作Not Only SQL的縮寫,是對不同于傳統的關系型數據庫的數據庫管理系統的統稱。
NoSQL用于超大規模數據的存儲。(例如谷歌或Facebook每天為他們的用戶收集萬億比特的數據)。這些類型的數據存儲不需要固定的模式,無需多余操作就可以橫向擴展。
1.4.MongoDB簡介
MongoDB 是一個基于分布式[物理上不在一起,是分開的。例如一個網頁里面有html標簽,該頁面中加載了css樣式,圖片,還有視頻,這些資源中,html,js,css可能在服務器A上面,圖片可能在服務器B上面,視頻可能在服務器c上面。
]文件存儲的數據庫。由 C++ 語言編寫。旨在為 WEB 應用提供可擴展的高性能數據存儲解決方案。
MongoDB 是非關系型數據庫當中功能最豐富,最像關系型數據庫的。
隨著大數據的不斷發展,非關系型數據庫已經變得越來越重要,相關的產品也都得到了飛速發展。而其中MongoDB更是佼佼者,作為高性能開源文檔數據庫,MongoDB以敏捷、可擴展和對企業應用友好而著稱,因其操作簡單、完全免費、源碼公開等特點,受到了IT從業人員的青睞,并被廣泛部署于實際的生產環境中。
使用MongoDB的公司包括:BAT、360、Foursquare、Craiglist,、迪士尼、SAP、Intuit、EA等。
很多大公司在用,并且越來越多的公司也要用,我們以后就可能接觸到相關的項目,雖然數據庫是后端人員做的事情,但是做為高級前端,有必要對它有所了解,才更好的和后端開發人員合作,做到知己知彼,百戰不殆。
1.5.MongoDB優點
它的特點是高性能、易部署、易使用,存儲數據非常方便。主要功能特性有:
?面向集合存儲,易存儲對象類型的數據。
?模式自由。
?支持動態查詢。
?支持完全索引,包含內部對象。
?支持查詢。
?支持復制和故障恢復。
?使用高效的二進制數據存儲,包括大型對象(如視頻等)。
?自動處理碎片,以支持云計算層次的擴展性
?支持RUBY,PYTHON,JAVA,C++,PHP等多種語言。
?文件存儲格式為BSON(一種JSON的擴展)
1.6.BSON
BSON是一種類似json的二進制形式的存儲格式,簡稱Binary JSON,它和JSON一樣,支持內嵌的文檔對象和數組對象,但是BSON有JSON沒有的一些數據類型,如Date和BinData類型。
BSON可以做為網絡數據交換的一種存儲形式,這個有點類似于Google的Protocol Buffer,但是BSON是一種schema-less的存儲形式,它的優點是靈活性高,但它的缺點是空間利用率不是很理想。
BSON有三個特點:輕量性、可遍歷性、高效性。
后面大家會看到我們存在數據庫里面的全部都是bson格式的數據。
1.7.非關系型數據庫與關系型數據庫區別
非關系型數據庫的優勢:
性能
NOSQL是基于鍵值對的,可以想象成表中的主鍵和值的對應關系,而且不需要經過SQL層的解析,所以性能非常高。
關系型數據庫的優勢:
復雜查詢
可以用SQL語句方便的在多個表之間做非常復雜的數據查詢。
總結:
?數據庫功能是用來存儲數據的。
?數據庫分為關系系數據庫和非關系型數據庫(nosql)
?關系型數據庫是由表和表之間的關系組成的,nosql是由集合組成的,集合下面是很多的文檔。
?非關系型數據庫文件存儲格式為BSON(一種JSON的擴展)。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。