本篇內容主要講解“數(shù)據(jù)庫該怎么選擇”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“數(shù)據(jù)庫該怎么選擇”吧!
創(chuàng)新互聯(lián)建站長期為數(shù)千家客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為日照企業(yè)提供專業(yè)的網(wǎng)站設計、成都網(wǎng)站設計,日照網(wǎng)站改版等技術服務。擁有10余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
這存儲數(shù)據(jù)方式往往決定讀寫的速度。
MySQL 無論數(shù)據(jù)還是索引都存放在硬盤中。到要使用的時候才交換到內存中。能夠處理遠超過內存總量的數(shù)據(jù)。
MongoDB 的所有數(shù)據(jù)實際上是存放在硬盤的,所有要操作的數(shù)據(jù)通過 mmap 的方式映射到內存某個區(qū)域內。然后,MongoDB 就在這塊區(qū)域里面進行數(shù)據(jù)修改,避免了零碎的硬盤操作。
redis 所有數(shù)據(jù)都是放在內存中的。但是它也支持數(shù)據(jù)持久化到硬盤中。
我們都知道磁盤讀取數(shù)據(jù)的效率遠遠低于內存。所以在一般情況下,這三者的讀寫數(shù)據(jù)的速度排序是:Redis > MongoDB > Mysql
MySql 是關系型數(shù)據(jù)庫,支持事務操作以及 join 方式的復結構化查詢。而 MongoDB 是非關系型數(shù)據(jù)庫, 既不支持事務操作,也不支持 join 操作。Redis 同樣不支持。
因此,針對以下場景應考慮使用 MySql:
1)業(yè)務數(shù)據(jù)中有大量結構化數(shù)據(jù),如用戶賬號、地址等。因為這些數(shù)據(jù)通常需要做結構化查詢。
2)業(yè)務存在許多事務性操作,需要保證事務的強一致性。
在一到兩年內,業(yè)務數(shù)據(jù)的增長量不在預測范圍內,優(yōu)先考慮使用 MongoDB。
因為 MongoDB 內建了sharding、很多數(shù)據(jù)分片的特性,容易水平擴展,比較好的適應大數(shù)據(jù)量增長的需求。而 MySql 在這方面表現(xiàn)要遜色些,MySql 單表數(shù)據(jù)量達到 5-10 G 時會出現(xiàn)明細的性能降級,需要做數(shù)據(jù)的水平和垂直拆分、庫的拆分完成擴展。
Redis 由于內存容量限制,不會用來存儲大量數(shù)據(jù)。一般拿它做緩存。
如果在業(yè)務場景中,數(shù)據(jù)庫表接口不明確,數(shù)據(jù)還在不斷增加。例如以下場景,內容管理平臺(如 BBS 論壇中帖子場景),用戶社交平臺(如貼吧中的帖子以及用戶評論),優(yōu)先考慮使用 MangDB 。
因為 MongoDB 是非結構化文檔數(shù)據(jù)庫,擴展字段很容易且不會影響原有數(shù)據(jù)。
到此,相信大家對“數(shù)據(jù)庫該怎么選擇”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!
新聞標題:數(shù)據(jù)庫該怎么選擇
文章位置:http://chinadenli.net/article16/ppsddg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供自適應網(wǎng)站、Google、企業(yè)建站、ChatGPT、電子商務、網(wǎng)站內鏈
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)