NOSQL概念入門


  一、NOSQL概念

  隨着大數據時代的到來,分布式存儲得到了快速發展,其中比較受歡迎的,主要以key-value鍵值對存儲的非關系型數據庫進入了大家的視野。

  NOSQL的全稱是Not Only Sql,是非關系型數據存儲的廣義定義。它存儲的不再是結構化的數據,即數據再沒有固定的長度,類型和固定的格式等,比較主流的是以key-value鍵值對存儲。

  二、NOSQL優點

  (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 : 此數據類型用於存儲正則表達式

  三、NOSQL缺點

  (1)不提供對sql的支持

  (2)支持的特性不夠豐富(不支持事務,不支持多表聯查)

  (3)現有的NOSQL產品,相對於已有的Mysql,Oracle等關系型數據庫來說成熟度不高。

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM