当前位置: 首页 > article >正文

【圈友app】为什么要使用MongoDB数据库?什么样的数据适合存储到MongoDB数据库?

为什么要使用MongoDB数据库?

本项目涉及到的圈子(动态)功能,用户会对朋友圈进行点赞、评论;那么随着用户的不断增多,评论点赞收藏等信息也会不断增多;相对来说用户对这些信息看的比较多,写比较少,也就是读多写少;且评论/点赞数等数据多一条少一条都没什么关系,没有什么影响,数据价值低;且后续还涉及到一个功能,附近人的展示,还会涉及到地理位置的相关数据;所有综合以上,本项目涉及到对海量数据的处理,且读多写少,存储的数据价值低,且还需包括地理位置相关数据等;如果这个时候使用mysql或者redis的时候就不合适,无法高效的对海量数据进行处理,所有这里就用到了MongoDB数据库。


什么样的数据适合存储到MongoDB数据库?

数据特征

数据存储量较大,甚至是海量数据;

之前有两种选择:MySQL和redis

redis:是基于内存的数据库,可以存储海量数据,但是成本极高;如果要存储1TB的数据,那么redis至少要准备1TB的内存,内存是很贵的。因此排除

mySQL:可以存储海量数据

对数据读写的响应要求较高

mysql:对于mysql来说虽然可以处理大量数据,但是随着数据的不断增加 ,进行查询或保存的时速度会逐渐降低;当然也可以进行优化,会耗费大量的人力去进行sql调优;那这个时候针对某些并不是太重要的数据,耗费大量时间人力,就有点浪费资源了。所以排除mysql

对某些数据安全性要求不高,可以接受一定范围内的误差

故此,综上三点需求,可以采用mongodb数据库存储数据


http://www.kler.cn/news/17429.html

相关文章:

  • 【C++学习】类和对象--多态
  • 牛客网HJ31 单词倒排
  • 第七章 使用ssh服务管理远程主机
  • 中盐集团:加快推进数智化转型,引领盐行业高质量发展
  • leetcode刷题之有关树的算法
  • Codeforces Round 863 (Div 3)总结
  • cmake编译
  • 截图的背景色如何去除?这里介绍一个小工具
  • buildroot系统调试苹果手机网络共享功能
  • 人机智能中几个困难问题浅析
  • API接口的对接流程和注意事项
  • STM32F4_十进制和BCD码的转换
  • 【地铁上的设计模式】--结构型模式:装饰器模式
  • IJKPLAYER源码分析-重要字段
  • LeetCode 1003. Check If Word Is Valid After Substitutions【栈,字符串】中等
  • 【GAMES101】03 Transformation
  • 回忆我的爷爷
  • 什么是图数据库Neo4j
  • 力扣---LeetCode141/142. 环形链表 (I)和(II) (代码详解+流程图+数学逻辑拓展)
  • 自动驾驶技术:前景、优势与挑战
  • kubernetes安装
  • Docker 架构
  • Vue生命周期
  • 第二十四回:如何屏蔽事件
  • SpringMVC(后)SSM整合
  • [创新工具和方法论]-01- DOE课程基础知识
  • K8s 安全是云安全的未来
  • AI仿写软件-仿写文章生成器
  • 计算机组成原理4.2.3提高存储器访问速度的措施
  • 送了老弟一台 Linux 服务器,它又懵了!