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:需要密码才能访问容器服务。
相关推荐
Java 码农1 分钟前
MySQL索引添加与删除方法详解
数据库·mysql
正在走向自律7 分钟前
电科金仓KingbaseES数据库全面语法解析与应用实践
数据库·国产数据库·kingbasees·数据定义语言ddl·数据操作语言dml·kingbasees语法
web安全工具库16 分钟前
Linux进程的:深入理解子进程回收与僵尸进程
java·linux·数据库
麦聪聊数据24 分钟前
大数据与云原生数据库中的 SQL2API:优化跨平台数据访问与查询
数据库·sql·云原生
虚伪的空想家34 分钟前
记录次etcd故障,fatal error: bus error
服务器·数据库·k8s·etcd
笨手笨脚の44 分钟前
Mysql 的锁机制
数据库·mysql··死锁·间隙锁
老友@1 小时前
一次由 PageHelper 分页污染引发的 Bug 排查实录
java·数据库·bug·mybatis·pagehelper·分页污染
hzk的学习笔记1 小时前
Redisson解锁失败,watchdog会不会一直续期下去?
数据库·redis·缓存
合作小小程序员小小店1 小时前
web网页开发,在线%商城,电商,商品购买%系统demo,基于vscode,apache,html,css,jquery,php,mysql数据库
开发语言·前端·数据库·mysql·html·php·电商
TDengine (老段)2 小时前
TDengine 字符串函数 CONCAT 用户手册
java·数据库·tdengine