Mongodb学习

mongodb应用场景:

mongodb特点:高扩展性(分片水平扩展)、高可用,对事务性要求不高、应用需要大量的地理位置查询、文本查询

mongodb部署架构:副本集、分片集群

MongoDB 是一个开源、高性能、无模式的文档型数据库,数据以类似 JSON 的文档形式存储。mongodb中记录是一个文档,它是一个由字段和值对(filed:value)组成的数据结构,mongodb文档类似于json对象,即一个文档就是一个对象,字段的数据类型是字符型,

MongoDB使用集合(Collections)来组织文档(Documents),每个文档都是由键值对组成的。

数据库(Database):存储数据的容器,类似于关系型数据库中的数据库。

集合(Collection):数据库中的一个集合,类似于关系型数据库中的表。

文档(Document):集合中的一个数据记录,类似于关系型数据库中的行(row),以 BSON 格式存储。

SQL术语/概念

database 对应mongodb --database

table 对应mongodb --collection

row 对应mongodb --document 数据记录行/文档

column 对应mongodb --field 数据字段/域

index 对应mongodb --index 索引

table joins 对应mongodb --表连接mongodb不支持 通过嵌入式文档来代替多表连接

primary key 对应mongodb --主建 mongodb自动将_id字段设置为主键

存储引擎

MongoDB的存储原理与其所使用的存储引擎紧密相关。自MongoDB 3.2版本起,WiredTiger成为了默认的存储引擎。WiredTiger是一个高性能、支持事务的存储引擎,它结合了B树索引和LSM树(Log-Structured Merge Tree)的优点,为MongoDB提供了出色的读写性能。

具体来说,WiredTiger通过其B树索引结构实现了快速的数据检索。同时,它利用LSM树的设计原理,将数据首先写入内存中的数据结构(MemTable),随后在合适的时机将这些数据合并到磁盘上的持久化存储中。这种设计使得WiredTiger能够高效地处理大量的写入操作,特别适用于需要高写入性能的应用场景。

默认数据库

admin

local

config

操做

db.dropdabase()

插入

db.collection(要插入数据的集合).insert(内容)

查询

db.collection(要插入数据的集合).find(内容)

相关推荐
40岁的系统架构师14 分钟前
17 一个高并发的系统架构如何设计
数据库·分布式·系统架构
安的列斯凯奇44 分钟前
Redis篇 Redis如何清理过期的key以及对应的解决方法
数据库·redis·缓存
小小虫码1 小时前
MySQL和Redis的区别
数据库·redis·mysql
飞翔的佩奇3 小时前
Java项目: 基于SpringBoot+mybatis+maven+mysql实现的图书管理系统(含源码+数据库+答辩PPT+毕业论文)
java·数据库·spring boot·mysql·spring·毕业设计·图书管理
一 乐4 小时前
基于vue船运物流管理系统设计与实现(源码+数据库+文档)
前端·javascript·数据库·vue.js·spring boot·后端·船运系统
jerry6095 小时前
注解(Annotation)
java·数据库·sql
vcshcn7 小时前
DBASE DBF数据库文件解析
数据库·dbase
AIGC大时代8 小时前
对比DeepSeek、ChatGPT和Kimi的学术写作撰写引言能力
数据库·论文阅读·人工智能·chatgpt·数据分析·prompt
如风暖阳8 小时前
Redis背景介绍
数据库·redis·缓存
lingllllove9 小时前
Redis脑裂问题详解及解决方案
数据库·redis·缓存