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

相关推荐
MarkHard1234 小时前
如何利用redis使用一个滑动窗口限流
数据库·redis·缓存
island13145 小时前
【Redis#10】渐进式遍历 | 数据库管理 | redis_cli | RES
数据库·redis·bootstrap
心想事成的幸运大王5 小时前
Redis的过期策略
数据库·redis·缓存
倔强的石头_5 小时前
CentOS 上安装KingbaseES(ISO包)详细教程
数据库
2401_897930066 小时前
使用Docker轻松部署Neo4j图数据库
数据库·docker·neo4j
诗句藏于尽头6 小时前
Django模型与数据库表映射的两种方式
数据库·python·django
寻星探路7 小时前
数据库造神计划第六天---增删改查(CRUD)(2)
java·大数据·数据库
盖世英雄酱581368 小时前
Read timed out问题 排查
java·数据库·后端
云动雨颤9 小时前
Spring Boot配置优化:Tomcat+数据库+缓存+日志,全场景教程
数据库·spring boot·tomcat
RestCloud9 小时前
Kafka实时数据管道:ETL在流式处理中的应用
数据库·kafka·api