Nosql數(shù)據(jù)庫(kù)使用場(chǎng)景
首先需要確認(rèn)一個(gè)問(wèn)題,nosql能做什么?在現(xiàn)在的開(kāi)發(fā)領(lǐng)域中nosql可以實(shí)現(xiàn)文檔存儲(chǔ)(BSON、JSON)、緩存存儲(chǔ)、圖像緩存(圖像搜索),但是對(duì)于nosql的具體應(yīng)用場(chǎng)景完全要根據(jù)你實(shí)際的業(yè)務(wù)來(lái)講;
在傳統(tǒng)的開(kāi)發(fā)之中由于經(jīng)常要使用到多表查詢(xún),性能很差,所以可以將一些經(jīng)常顯示的數(shù)據(jù)整理到文檔型的nosql數(shù)據(jù)庫(kù)(MongoDB),但是現(xiàn)在這個(gè)文檔型的nosql使用越來(lái)越少,可以忽略了;
緩存型:例如在進(jìn)行分布開(kāi)發(fā)的時(shí)候session存儲(chǔ)、做一些臨時(shí)的數(shù)據(jù),例如:購(gòu)物車(chē)、短信驗(yàn)證碼等,現(xiàn)在使用最多的緩存數(shù)據(jù)庫(kù)就是Redis(可以保存在磁盤(pán),斷電后數(shù)據(jù)可以被保存下來(lái));
使用Redis實(shí)現(xiàn)消息隊(duì)列,可以使用更加高級(jí)的RabbitMQ,Kafka實(shí)現(xiàn)更方便。
優(yōu)點(diǎn):可以實(shí)現(xiàn)每秒近乎10W次的讀寫(xiě)處理。
數(shù)據(jù)庫(kù)優(yōu)化有很多層次。
1. 語(yǔ)句上的優(yōu)化:盡量不要去使用多表查詢(xún),盡量不要頻繁的使用各種神奇的統(tǒng)計(jì)查詢(xún)、如果需要的時(shí)候建議使用子查詢(xún)來(lái)代替(子查詢(xún)只是一種折中方案也不是最好的,只是相對(duì)的,當(dāng)你的數(shù)據(jù)量暴大的時(shí)候,那么你所有認(rèn)知的規(guī)則就全部都將改變)。
2. 數(shù)據(jù)庫(kù)的優(yōu)化只能夠體現(xiàn)在查詢(xún)上,而這個(gè)查詢(xún)還是在認(rèn)知范圍內(nèi)的數(shù)據(jù)量,例如使用索引,但是一旦使用了索引,就不能夠進(jìn)行頻繁的修改,例如:在主鍵往往會(huì)設(shè)置索引,但是從另外一個(gè)角度,數(shù)據(jù)不應(yīng)該進(jìn)行物理刪除,而要進(jìn)行邏輯刪除,只是為了保證索引不被重新創(chuàng)建;
空間換時(shí)間、時(shí)間換空間:你的數(shù)據(jù)是否需要進(jìn)行同步處理操作。
3. 當(dāng)存在有多個(gè)RPC業(yè)務(wù)端的時(shí)候,可以考慮進(jìn)行垂直拆庫(kù)的做法,這個(gè)時(shí)候只能夠按照功能進(jìn)行拆分,這個(gè)是需要強(qiáng)大的接口技術(shù)支持的;
4. 當(dāng)分庫(kù)在無(wú)法解決問(wèn)題的時(shí)候就需要考慮數(shù)據(jù)庫(kù)的水平拆分問(wèn)題(認(rèn)知范圍內(nèi)的唯一可以使用的最后方案);
5. 如果需要保證強(qiáng)大的查詢(xún)性能,那么就需要再次引入搜索引擎的概念進(jìn)行分詞處理;
更多數(shù)據(jù)庫(kù)精品課程:阿里云大學(xué)——開(kāi)發(fā)者課堂
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/18019.html
摘要:是領(lǐng)域最具代表性的問(wèn)答網(wǎng)站之一。在,開(kāi)發(fā)者能夠?yàn)楦鞣N相關(guān)的開(kāi)源代碼貢獻(xiàn)自己的力量,也可以發(fā)布軟件開(kāi)發(fā)項(xiàng)目。該網(wǎng)站發(fā)布各技術(shù)領(lǐng)域的高技術(shù)含量?jī)?nèi)容,例如大數(shù)據(jù),云計(jì)算,,物聯(lián)網(wǎng),開(kāi)發(fā)等。是一個(gè)大型的資源類(lèi)網(wǎng)站,主要涉及源代碼和代碼示例。 Java是一種面向?qū)ο蟮木幊陶Z(yǔ)言,由Sun Microsystems公司在1995年的時(shí)候正式發(fā)布。直到今天,Java都一直是最受歡迎的編程語(yǔ)言之一。如今...
摘要:開(kāi)源軟件的匯總開(kāi)源插件是一個(gè)類(lèi)似于的插件,它可以幫助你在不退出的環(huán)境下瀏覽本地文件系統(tǒng)。事件模型支持基于的事件提交。開(kāi)源容器是一個(gè)非侵入式的對(duì)象反轉(zhuǎn)控制容器容器。開(kāi)源插件提供一個(gè)可針對(duì)文件語(yǔ)法進(jìn)行著色的編輯器。 Java開(kāi)源軟件的匯總:EcSplorer 【Java開(kāi)源 Eclipse插件】EcSplorer(Eclips...
摘要:最重要的是動(dòng)力節(jié)點(diǎn)零基礎(chǔ)班現(xiàn)已開(kāi)啟免費(fèi)學(xué)習(xí),對(duì)于想學(xué)習(xí)軟件開(kāi)發(fā)的同學(xué)無(wú)疑是好消息,親自考察教學(xué)質(zhì)量,針對(duì)不方便前來(lái)的同學(xué),可以關(guān)注動(dòng)力節(jié)點(diǎn)全套免費(fèi)視頻,機(jī)會(huì)就在眼前,千萬(wàn)不要錯(cuò)過(guò)。 Java軟件開(kāi)發(fā)語(yǔ)言是一門(mén)很實(shí)用的語(yǔ)言,在互聯(lián)網(wǎng)的應(yīng)用十分廣泛,目前采用Java編程語(yǔ)言開(kāi)發(fā)的網(wǎng)站也越來(lái)越多,所以對(duì)Java軟件開(kāi)發(fā)人才的需求量也是倍增。雖然說(shuō)現(xiàn)在新的開(kāi)發(fā)語(yǔ)言在市場(chǎng)上越來(lái)越多,但是根據(jù)有關(guān)...
摘要:日期和時(shí)間處理日期和時(shí)間的函數(shù)庫(kù)。使用中可觀察序列,創(chuàng)建異步基于事件應(yīng)用程序的函數(shù)庫(kù)。為分布式系統(tǒng)提供延遲和容錯(cuò)處理。發(fā)布使用本機(jī)格式分發(fā)應(yīng)用程序的工具。將程序資源和打包成和的本機(jī)文件。圖像處理用來(lái)幫助創(chuàng)建評(píng)估或操作圖形的函數(shù)庫(kù)。 好資源要分享原文 譯者 唐尤華 翻譯自 github akullpp 構(gòu)建 這里搜集了用來(lái)構(gòu)建應(yīng)用程序的工具。 Apache Maven:Mave...
摘要:是什么是一種計(jì)算機(jī)編程語(yǔ)言,年詹姆斯高斯林等大神發(fā)明的一種編程語(yǔ)言,至今發(fā)展多年,應(yīng)用非常廣泛,使用者超級(jí)多。能干什么既然是一種計(jì)算機(jī)編程語(yǔ)言,自然它就是用來(lái)開(kāi)發(fā)程序的。比較官方的簡(jiǎn)單定義程序是數(shù)據(jù)結(jié)構(gòu)加算法。 showImg(https://segmentfault.com/img/remote/1460000012599260?w=900&h=500); 序: 從此開(kāi)始,計(jì)劃出一個(gè)...
閱讀 2590·2021-10-19 11:41
閱讀 2424·2021-09-01 10:32
閱讀 3385·2019-08-29 15:21
閱讀 1764·2019-08-29 12:20
閱讀 1172·2019-08-29 12:13
閱讀 608·2019-08-26 12:24
閱讀 2526·2019-08-26 10:26
閱讀 842·2019-08-23 18:40