亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

【九月打卡】第20天 MongoDB的使用場景列舉

標簽:
Java MongoDB

课程名称:Spring Cloud 进阶 Alibaba 微服务体系自媒体实战
课程章节: 第5章 Admin 平台运营管理中心服务
主讲老师: 风间影月


课程内容


https://img1.sycdn.imooc.com//633062fc00019f1a03680302.jpg

  1. 历史数据快照:比如在电商系统里用户购买一个商品,都会涉及到订单,那么在用户下单购买的时候,该订单对应的商品数据就是此时此刻的数据,该商品数据不会随着商户的更改而更改,这就是快照数据。比如今天用户购买价格是100块钱,明天涨价10块钱,那么用户在查看订单的时候,价格就应该是下单的价格,这些都是快照数据。而快照数据对于每个用户来说有很多,所以往往把他们剥离出来放到MongoDB中去。

  2. 用户浏览记录:用户在电商系统会浏览很多商品,那么如果存到数据库,那么该张表的数据就是指数级增长了,db压力相当大,所以可以剥离放入到mongodb中。

  3. 客服聊天记录:虽然我们对外称聊天记录不存保存,但是我们还是会存储一下,而聊天记录都是非关键数据,哪怕没有也无所谓,所以完全可以放到mongodb中去。

  • 能不能把这些数据都存redis中呢?
    不行,因为redis数据保存到内存,内存很贵的,如果你们公司老板土豪,可以无限购买内存的话,无所谓。但是需要考虑内存成本的时候,这就需要使用mongodb了。
    所以说,Redis主要用来分摊读压力,提供缓存机制。而MongoDB为数据库分摊大数据量的存储压力,此外这些都是非核心业务数据,哪怕全部丢失了,也无所谓,不会造成整个系统崩溃。


MongoDB的使用场景

MongoDB除课程上使用的一些场景外,外有一下几个场景:

mongodb的主要目标是在键/值存储方式(提供了高性能和高度伸缩性)以及传统的RDBMS系统(丰富的功能)架起一座桥梁,集两者的优势于一身。mongo适用于以下场景:

a.网站数据:mongo非常适合实时的插入,更新与查询,并具备网站实时数据存储所需的复制及高度伸缩性。

b.缓存:由于性能很高,mongo也适合作为信息基础设施的缓存层。在系统重启之后,由mongo搭建的持久化缓存可以避免下层的数据源过载。

c.大尺寸、低价值的数据:使用传统的关系数据库存储一些数据时可能会比较贵,在此之前,很多程序员往往会选择传统的文件进行存储。

d.高伸缩性的场景:mongo非常适合由数十或者数百台服务器组成的数据库。

e.用于对象及JSON数据的存储:mongo的BSON数据格式非常适合文档格式化的存储及查询。

课程截图

https://img1.sycdn.imooc.com//6330638e0001df3316980938.jpg

https://img1.sycdn.imooc.com//6330639d0001f64f17980953.jpg

https://img1.sycdn.imooc.com//633063ab00012d9117010932.jpg


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
JAVA開發工程師
手記
粉絲
1
獲贊與收藏
3

關注作者,訂閱最新文章

閱讀免費教程

  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消