MongoDB入门

简介

MongoDB是一个开源、高性能、支持海量数据存储的文档型数据库

是NoSQL数据库产品中的一种,是最像关系型数据库(MySQL)的非关系型数据库

内部采用BSON(二进制JSON)格式来存储数据,并支持水平扩展。

MongoDB本身并不是完全免费的,它对于一些商业场景是收费的。

MongoDB的收费条款和价格因版本、支持类型和付费周期而异。

特点

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

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

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

内部实现

与redis和mysql对比

与Redis的对比

Redis纯内存数据库,内存不足触发淘汰策略

结构化存储格式(Bson),方便扩展
与MySQL的对比

MongoDB不支持事务和多表操作

MongoDB支持动态字段管理
查询效率对比

Redis > MongoDB > MySQL

使用场景

游戏装备数据、游戏道具数据

特征:修改频度较高
物流行业数据

特征:地理位置信息,海量数据
直播数据、打赏数据、粉丝数据

特征:数据量大,修改频度极高
日志数据

特征:数据量巨大,结构多变

docker安装mongoDB

bash 复制代码
docker pull mongo

docker run -itd --name mongo -p 27017:27017  -v ~/data/mongodata:/data  mongo --auth

-p 27017:27017 :映射容器服务的 27017 端口到宿主机的 27017 端口。外部可以直接通过 宿主机 ip:27017 访问到 mongo 的服务。
--auth:需要密码才能访问容器服务。
相关推荐
剩下了什么9 小时前
MySQL JSON_SET() 函数
数据库·mysql·json
山峰哥10 小时前
数据库工程与SQL调优——从索引策略到查询优化的深度实践
数据库·sql·性能优化·编辑器
较劲男子汉10 小时前
CANN Runtime零拷贝传输技术源码实战 彻底打通Host与Device的数据传输壁垒
运维·服务器·数据库·cann
java搬砖工-苤-初心不变10 小时前
MySQL 主从复制配置完全指南:从原理到实践
数据库·mysql
山岚的运维笔记12 小时前
SQL Server笔记 -- 第18章:Views
数据库·笔记·sql·microsoft·sqlserver
roman_日积跬步-终至千里13 小时前
【LangGraph4j】LangGraph4j 核心概念与图编排原理
java·服务器·数据库
汇智信科13 小时前
打破信息孤岛,重构企业效率:汇智信科企业信息系统一体化运营平台
数据库·重构
野犬寒鸦13 小时前
从零起步学习并发编程 || 第六章:ReentrantLock与synchronized 的辨析及运用
java·服务器·数据库·后端·学习·算法
晚霞的不甘14 小时前
揭秘 CANN 内存管理:如何让大模型在小设备上“轻装上阵”?
前端·数据库·经验分享·flutter·3d
市场部需要一个软件开发岗位15 小时前
JAVA开发常见安全问题:纵向越权
java·数据库·安全