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(内容)

相关推荐
倔强的石头_1 分钟前
深度解析:数据库内核如何通过逻辑推理与常值推导突破去重性能瓶颈
数据库
devilnumber2 分钟前
MySQL 部门表:树结构 (自关联) vs 非树结构 (扁平化 / 冗余字段)
数据库·mysql
fengxin_rou15 分钟前
【MySQL 三大日志深度解析】:redo log、undo log、binlog 作用与两阶段提交原理
数据库·mysql·日志·redo log
ECT-OS-JiuHuaShan16 分钟前
存在是微分张量积,标量是参数但不可能是本质。还原论泛化,是语义劫持和以偏概全的逻辑谋杀伪科学庞氏骗局
数据库·人工智能·算法·机器学习·数学建模
IT策士20 分钟前
Django 从 0 到 1 打造完整电商平台:使用 Django 消息框架与用户权限初步
数据库·django·sqlite
星河耀银海26 分钟前
JAVA 注解(Annotation):从原理到实战应用
java·开发语言·数据库
lzp079128 分钟前
基于多模态视觉模型和图文向量模型的工业图像知识库研究与应用(伍)
数据库·学习·neo4j
sunshine88534 分钟前
合并报表自动化:数据治理如何助力集团企业突破成本与合规瓶颈?
大数据·数据库·人工智能
云边有个稻草人36 分钟前
金仓数据库KingbaseES自动创建表空间目录:简化运维,适配国产生态
数据库·数据加密·kingbasees·信创适配·国产化数据库·表空间自动创建
imuliuliang1 小时前
Laravel5.x核心特性全解析
android·运维·数据库·nginx