教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

Java培訓:數據存儲方式和NoSQL

更新時間:2023年10月24日09時34分 來源:傳智教育 瀏覽次數:

好口碑IT培訓

  一、數據存儲方式和NoSQL

  1.1 數據存儲方式

  互聯(lián)網時代各種數據存儲方式層出不窮,有傳統(tǒng)的關系型數據庫如:MySQL、Oracle等,;有全文檢索框架如:ElasticSearch、Solr;有NoSQL如:Cassandra、Redis

  這些存儲方式的特點:

  - 關系型數據庫:支持事務,二級索引,SQL語句,支持主從架。

  - 全文檢索:分布式,p2p架構,不支持事務,采用倒排索引提供全文檢索。

  - NoSQL:一般基于內存,支持分布式,面向列,不支持SQL。

  1.2 NoSQL概述

  NoSQL,泛指非關系型的數據庫,NoSQL去掉關系數據庫的關系型特性,數據之間無關系,非常容易擴展。

  NoSQL型數據庫一般包含一些共同特性:

  - 易擴展

  NoSQL數據庫種類繁多,但是一個共同的特點都是去掉關系數據庫的關系型特性。數據之間無關系,這樣就非常容易擴展,在架構的層面上帶來了可擴展的能力。

  - 大數據量,高性能

  NoSQL數據庫都具有非常高的讀寫性能,尤其在大數據量下。一般MySQL使用Query Cache。NoSQL的Cache是記錄級的,是一種細粒度的Cache,所以NoSQL在這個層面上來說性能就要高很多。

  - 靈活的數據模型

  NoSQL無須事先為要存儲的數據建立字段,隨時可以存儲自定義的數據格式。而在關系數據庫里,增刪字段是一件非常麻煩的事情。

  - 高可用

  NoSQL在不太影響性能的情況,就可以方便地實現(xiàn)高可用的架構。比如Cassandra、HBase模型,通過復制模型也能實現(xiàn)高可用。

  1.3 NoSQL的分類

  (1)鍵值(Key-Value)存儲數據庫

  這一類數據庫主要使用[哈希表],這個表中有一個特定的鍵和一個指針指向特定的數據。Key/value模型的優(yōu)勢在于簡單、易部署。代表為: Redis。

  (2)列存儲數據庫

  這類數據庫通常是用來應對分布式存儲的海量數據。鍵仍然存在,但是它們的特點是指向了多個列。這些列是由列家族來安排的。如:Cassandra, HBase。

  (3)文檔型數據庫

  文檔型數據庫和第一種鍵值存儲相類似。該類型的數據模型是版本化的文檔,半結構化的文檔以特定的格式存儲,比如JSON。文檔型數據庫可以看作是鍵值數據庫的升級版,允許之間嵌套鍵值,在處理網頁等復雜數據時,文檔型數據庫比傳統(tǒng)鍵值數據庫的查詢效率更高。如:CouchDB, MongoDb。

  (4)圖形(Graph)數據庫

  圖形結構的數據庫同其他行列以及關系型數據庫不同,它是使用靈活的圖形模型,并且能夠擴展到多個服務器上。

0 分享到:
和我們在線交談!