sql與各個nosql數(shù)據(jù)庫使用場景的講解
sql為主干為什么我這樣理解:
單從技術(shù)角度來說
- 關(guān)系型網(wǎng)格 充分的體現(xiàn)了現(xiàn)實事務(wù)
- 對事務(wù),審計,閃存等等對數(shù)據(jù)的重視所以如何一些特別主要的數(shù)據(jù),一定要放到sql里面。一個系統(tǒng)里面至少有用戶信息是重要的數(shù)據(jù)。
- 所以sql必須有,而且數(shù)據(jù)存儲的主干
什么時候引入nosql
先看看sql - > sql + nosql的過程。
http://www.dbjr.com.cn/article/79236.htm 為什么要使用NoSQL
這些nosql?
對java語言而言:
- redis:用于緩存 - 讀速度極快(內(nèi)存中)
- mongoDb - 讀寫事務(wù)都是均衡的.node.js開發(fā)的json
- Neo4j - .java的的比較像SQL但查詢更快,可惜高級功能收費… - 社交(圖像數(shù)據(jù)庫)
- Cassandra - 寫數(shù)據(jù)比讀快.-用于日志的存放。
- HBase 離線分析
我的設(shè)想:
java語言而言:
- - redis用于緩存(值里面存javabean)和不需要存儲的熱數(shù)據(jù)
- - mongoDb用于不太重要的但要儲的內(nèi)容.
- - Cassandra 用于管理 日志強烈建議(把日志放到數(shù)據(jù)庫里面。)
- - HBASE 離線分析,大數(shù)據(jù)
- - solr,ES - 站內(nèi)搜索和代替里面的SQL等
- - 或者用neo4j代替sql數(shù)據(jù)庫 , 有對事務(wù)要求的時候,單獨起一個優(yōu)先級為2的線程存到sql里面.
NoSQL紀元
當下已經(jīng)存在很多的NoSQL數(shù)據(jù)庫,比如MongoDB、Redis、Riak、HBase、Cassandra等等。每一個都擁有以下幾個特性中的一個:
- 不再使用SQL語言,比如MongoDB、Cassandra就有自己的查詢語言
- 通常是開源項目
- 為集群運行而生
- 弱結(jié)構(gòu)化——不會嚴格的限制數(shù)據(jù)結(jié)構(gòu)類型
適用的場景
儲存用戶信息,比如會話、配置文件、參數(shù)、購物車等等。這些信息一般都和ID(鍵)掛鉤,這種情景下鍵值數(shù)據(jù)庫是個很好的選擇。
不適用場景
1)取代通過鍵查詢,而是通過值來查詢。Key-Value數(shù)據(jù)庫中根本沒有通過值查詢的途徑。
2)需要儲存數(shù)據(jù)之間的關(guān)系。在Key-Value數(shù)據(jù)庫中不能通過兩個或以上的鍵來關(guān)聯(lián)數(shù)據(jù)。
3)事務(wù)的支持。在Key-Value數(shù)據(jù)庫中故障產(chǎn)生時不可以進行回滾。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
- 數(shù)據(jù)庫語言分類DDL、DCL、DML詳解
- 詳解數(shù)據(jù)庫_MySQL: mysql函數(shù)
- MySQL數(shù)據(jù)庫中CAST與CONVERT函數(shù)實現(xiàn)類型轉(zhuǎn)換的講解
- mysql 8.0.15 安裝圖文教程及數(shù)據(jù)庫基礎(chǔ)
- SQL SERVER 數(shù)據(jù)庫備份代碼實例
- PostgreSQL數(shù)據(jù)庫中窗口函數(shù)的語法與使用
- 如何合理使用數(shù)據(jù)庫冗余字段的方法
- Mysql主從數(shù)據(jù)庫(Master/Slave)同步配置與常見錯誤
- PHP單例模式數(shù)據(jù)庫連接類與頁面靜態(tài)化實現(xiàn)方法
- 如何在一個千萬級的數(shù)據(jù)庫查詢中提高查詢的效率?
相關(guān)文章
Centos7 移動mysql5.7.19 數(shù)據(jù)存儲位置的操作方法
這篇文章主要介紹了Centos7 移動mysql5.7.19 數(shù)據(jù)存儲位置的實現(xiàn)方法,需要的朋友可以參考下2017-10-10linux mysql忘記密碼的多種解決或Access denied for user ''root''@''local
linux mysql忘記密碼的多種解決方法。2009-07-07MySQL函數(shù)CONCAT、CONCAT_WS、GROUP_CONCAT用法詳解
這篇文章主要介紹了MySQL函數(shù)CONCAT、CONCAT_WS、GROUP_CONCAT用法詳解,CONCAT 函數(shù)用于將兩個字符串連接為一個字符串,本文通過實例代碼詳細講解,需要的朋友可以參考下2023-02-02MySQL查詢優(yōu)化--調(diào)整內(nèi)部變量的詳解
本篇文章是對MySQL查詢優(yōu)化中的調(diào)整內(nèi)部變量進行了詳細的分析介紹,需要的朋友參考下2013-06-06