1、NOSQL概念正則表達式
隨着大數據時代的到來,分佈式存儲獲得了快速發展,其中比較受歡迎的,主要以key-value鍵值對存儲的非關係型數據庫進入了你們的視野。sql
NOSQL的全稱是Not Only Sql,是非關係型數據存儲的廣義定義。它存儲的再也不是結構化的數據,即數據再沒有固定的長度,類型和固定的格式等,比較主流的是以key-value鍵值對存儲。數據庫
2、NOSQL優勢express
(1)快速的讀寫:NOSQL數據存儲不須要固定的表結構,一般也不會存在取鏈接,釋放鏈接的操做,在大數據存儲上具有關係型數據庫所不具有的性能優點。數組
(2)方便的擴展:在關係型數據庫中爲某一條記錄擴展字段,須要修改表結構,而NOSQL數據庫存儲的數據結構不穩定,每條記錄能夠根據業務須要隨意增長鍵值對數據。服務器
(3)低廉的成本:相比關係型數據庫改表,重構過程帶來的人力資源的浪費,以及單個計算機能夠容納多個獨立的NOSQL數據庫等方面來看,NOSQL在成本上具有很大的優點數據結構
(4)靈活的數據類型:拿MongoDB來講,支持的數據類型多樣,具體可見以下分佈式
String : 這是最經常使用的數據類型來存儲數據。在MongoDB中的字符串必須是有效的UTF-8。性能
Integer : 這種類型是用來存儲一個數值。整數能夠是32位或64位,這取決於您的服務器。大數據
Boolean : 此類型用於存儲一個布爾值 (true/ false) 。
Double : 這種類型是用來存儲浮點值。
Min/ Max keys : 這種類型被用來對BSON元素的最低和最高值比較(該類型不瞭解...)
Arrays : 使用此類型的數組或列表或多個值存儲到一個鍵。
Timestamp : 時間戳。這能夠方便記錄時的文件已被修改或添加。
Object : 此數據類型用於嵌入式的文件。
Null : 這種類型是用來存儲一個Null值。
Symbol : 此數據類型用於字符串相同,但它一般是保留給特定符號類型的語言使用。
Date : 此數據類型用於存儲當前日期或時間的UNIX時間格式。能夠指定本身的日期和時間,日期和年,月,日到建立對象。
Object ID : 此數據類型用於存儲文檔的ID。
Binary data : 此數據類型用於存儲二進制數據。
Code : 此數據類型用於存儲到文檔中的JavaScript代碼。
Regular expression : 此數據類型用於存儲正則表達式
3、NOSQL缺點
(1)不提供對sql的支持
(2)支持的特性不夠豐富(不支持事務,不支持多表聯查)
(3)現有的NOSQL產品,相對於已有的Mysql,Oracle等關係型數據庫來講成熟度不高。