Glossary

  • $cmd

  • _id

    • 每个 MongoDB document中都需要一个字段。 _id字段必须具有唯一值。您可以将_id字段视为文档的primary key。如果您创建的新文档没有_id字段,则 MongoDB 会自动创建该字段并分配唯一的 BSON ObjectId
  • accumulator

  • action

  • admin database

    • 特权数据库。用户必须有权访问admin数据库才能运行某些 Management 命令。有关 Management 命令的列表,请参见Administration Commands
  • aggregation

    • 减少和汇总大量数据的各种操作中的任何一种。 MongoDB 的aggregate()mapReduce()方法是聚合操作的两个示例。有关更多信息,请参见Aggregation
  • aggregation framework

  • arbiter

  • Atlas

  • authentication

  • authorization

  • B-tree

    • 数据库 Management 系统通常用于存储索引的数据结构。 MongoDB 使用 B 树为其索引。
  • balancer

  • BSON

    • 一种用于在 MongoDB 中存储documents并进行远程过程调用的序列化格式。 “ BSON”是单词“ binary”和“ JSON”的组合。将 BSON 视为 JSON(JavaScript 对象表示法)文档的二进制表示形式。参见BSON TypesMongoDB 扩展 JSON
  • BSON types

    • BSON序列化格式支持的一组类型。有关 BSON 类型的列表,请参见BSON Types
  • CAP Theorem

    • 给定计算系统的三个属性,一致性,可用性和分区容限,分布式计算系统可以提供这些功能中的任何两个,但不能提供全部三个。
  • capped collection

  • cardinality

    • 一组值中元素数量的度量。例如,集合A = { 2, 4, 6 }包含 3 个元素,并且基数为 3.请参见分片基数
  • checksum

    • 用于确保数据完整性的计算值。 md5算法有时用作校验和。
  • chunk

    • 特定shard中的shard key个值的连续范围。块范围包括下边界,不包括上边界。当 MongoDB 超出配置的块大小(默认为 64 兆字节)时,MongoDB 将对其进行拆分。当一个分片相对于其他分片包含一个集合的太多分块时,MongoDB 会迁移这些分块。参见使用块进行数据分区分片集群平衡器
  • client

    • 使用数据库进行数据持久性和存储的应用程序层。 Drivers提供应用程序层与数据库服务器之间的接口级别。

Client 端也可以引用单个线程或进程。

  • cluster

  • collection

    • MongoDB documents的分组。集合等效于RDBMS表。一个database中存在一个集合。集合不强制执行架构。集合中的文档可以具有不同的字段。通常,集合中的所有文档都具有相似或相关的目的。参见Namespaces
  • collection scan

    • 集合扫描是一种查询执行策略,其中 MongoDB 必须检查集合中的每个文档以查看其是否符合查询条件。这些查询效率很低,并且不使用索引。有关查询执行策略的详细信息,请参见Query Optimization
  • compound index

  • concurrency control

    • 并发控制确保可以在不影响正确性的情况下同时执行数据库操作。悲观并发控制(例如在带有locks的系统中使用)将阻止任何潜在冲突的操作,即使这些操作可能最终并未 true 冲突。乐观并发控制(由WiredTiger使用的方法)将延迟检查,直到发生冲突为止,然后中止并重试出现的任何write conflict所涉及的操作之一。
  • config database

    • 一个内部数据库,其中保存与sharded cluster关联的元数据。应用程序和 Management 员不应在正常操作过程中修改config数据库。参见Config Database
  • config server

  • CRUD

    • 数据库基本操作的首字母缩写:创建,读取,更新和删除。参见MongoDB CRUD 操作
  • CSV

    • 一种基于文本的数据格式,由逗号分隔的值组成。由于该格式非常适合表格数据,因此通常用于在关系数据库之间交换数据。您可以使用mongoimport导入 CSV 文件。
  • cursor

  • daemon

    • 背景,非交互过程的常规名称。
  • data directory

    • mongod存储数据文件的文件系统位置。 dbPath选项指定数据目录。
  • data partition

  • data-center awareness

  • database

    • collections的物理容器。每个数据库在文件系统上都有其自己的文件集。一台 MongoDB 服务器通常具有多个数据库。
  • database command

    • MongoDB 操作,而不是插入,更新,删除或查询。有关数据库命令的列表,请参见Database Commands。要使用数据库命令,请参见Issue Commands
  • database profiler

    • 启用该工具后,将记录数据库system.profile集合中所有长时间运行的操作的工具。探查器最常用于诊断慢查询。参见Database Profiling
  • dbpath

    • MongoDB 数据文件存储的位置。参见dbPath
  • delayed member

    • replica set成员,不能成为主要成员,并在指定的延迟内应用操作。延迟对于保护数据免受人为错误(即意外删除的数据库)或对生产数据库产生无法预料影响的更新很有用。参见延迟副本集成员
  • document

    • MongoDB collection中的记录以及 MongoDB 中的基本数据单位。文档类似于JSON对象,但是以类型更丰富的格式BSON存在于数据库中。参见Documents
  • dot notation

    • MongoDB 使用点表示法来访问数组的元素并访问嵌入式文档的字段。参见Dot Notation
  • draining

  • driver

    • 用于以特定语言与 MongoDB 进行交互的 Client 端库。参见/drivers
  • durable

    • 当写操作在关闭(或崩溃)并重新启动一个或多个服务器进程时会持续存在时,它是持久的。对于单个mongod服务器,将写入操作写入服务器的journal文件时,该写入操作被认为是持久的。对于replica set,一旦写入操作在大多数投票节点上是持久的,则认为该写入操作是持久的;即写给大多数投票节点的日记。
  • election

  • eventual consistency

    • 分布式系统的属性,允许对系统的更改逐渐传播。在数据库系统中,这意味着不需要可读成员始终反映最新的写入。
  • expression

  • failover

  • field

    • document中的名称/值对。一个文档具有零个或多个字段。字段类似于关系数据库中的列。参见Document Structure
  • field path

    • 文档中字段的路径。要指定字段路径,请使用在字段名称前加一个美元符号($)的字符串。
  • firewall

    • 系统级网络过滤器,该过滤器基于 IP 地址等来限制访问。防火墙是有效的网络安全策略的一部分。参见Firewalls
  • fsync

    • 将所有脏的内存中页面刷新到磁盘的系统调用。 MongoDB 至少每 60 秒对其数据库文件调用fsync()。参见fsync
  • geohash

  • GeoJSON

  • geospatial

  • GridFS

    • 在 MongoDB 数据库中存储大文件的约定。所有正式的 MongoDB 驱动程序都支持此约定,而mongofiles程序也支持此约定。参见GridFS
  • 哈希分片键

  • haystack index

  • hidden member

  • high availability

    • 高可用性表示系统是为持久性,冗余和自动故障转移而设计的,因此该系统支持的应用程序可以连续运行,并且无需长时间停机。根据我们的文档best practices部署时,MongoDB replica sets支持高可用性。

有关副本集部署体系结构的指导,请参阅副本集部署体系结构

  • idempotent

    • 给定相同的 Importing(一次运行或多次运行)产生相同结果的操作质量。
  • index

    • 一种优化查询的数据结构。参见Indexes
  • init script

    • Linux 平台的init system使用一个简单的 shell 脚本来启动,重新启动或停止daemon进程。如果通过软件包 Management 器安装了 MongoDB,则在安装过程中会为您的系统提供一个初始化脚本。请参阅适用于您的 os 的Installation Guide
  • init system

    • 内核启动后,init 系统是在 Linux 平台上启动的第一个进程,它 Management 系统上的所有其他进程。初始化系统使用init script启动,重新启动或停止daemon进程,例如mongodmongos。 Linux 的最新版本倾向于使用使用systemctl命令的 systemd 初始化系统,而较早版本则倾向于使用使用service命令的 System V 初始化系统。请参见适用于您 os 的Installation Guide
  • initial sync

  • intent lock

  • interrupt point

    • 操作生命周期中可以安全终止的时间点。 MongoDB 仅在指定的中断点终止操作。参见终止正在运行的操作
  • IPv6

    • IP(Internet 协议)标准的修订版,提供了明显更大的地址空间,可以更有效地支持当代 Internet 上的主机数量。
  • ISODate

    • mongo用于显示日期的国际日期格式。格式为:YYYY-MM-DD HH:MM.SS.millis
  • JavaScript

    • 一种最初用于 Web 浏览器的流行脚本语言。 MongoDB Shell 和某些服务器端功能使用 JavaScript 解释器。有关更多信息,请参见Server-side JavaScript
  • journal

    • Sequences 的二进制事务日志,用于在硬关闭的情况下使数据库进入有效状态。日志记录首先将数据写入日志,然后再写入核心数据文件。默认情况下,MongoDB 会为 MongoDB 2.0 版及更高版本的 64 位版本启用日记功能。日志文件是预先分配的,并作为data directory中的文件存在。参见Journaling
  • JSON

    • JavaScript 对象表示法。一种人类可读的纯文本格式,用于表达结构化数据,并支持许多编程语言。有关更多信息,请参见http://www.json.org。某些 MongoDB 工具以 JSON 格式呈现 MongoDB BSON文档的近似形式。参见MongoDB 扩展 JSON
  • JSON document

  • JSONP

    • JSON(带有填充)。指将 JSON 注入应用程序的方法。 存在潜在的安全隐患
  • least privilege

    • 一种授权策略,仅向用户提供对该用户的工作必不可少的访问量,而没有更多权限。
  • 旧版坐标对

    • MongoDB 2.4 版之前的geospatial数据使用的格式。此格式将地理空间数据存储为平面坐标系上的点(例如[ x, y ])。参见Geospatial Queries
  • LineString

  • lock

  • LVM

    • 逻辑卷 Management 器。 LVM 是一个程序,可从物理设备中提取磁盘映像,并提供许多对系统 Management 有用的原始磁盘操作和快照功能。有关 LVM 和 MongoDB 的信息,请参阅在 Linux 上使用 LVM 备份和还原
  • map-reduce

    • 一种数据处理和聚合范例,由选择数据的“Map”阶段和转换数据的“减少”阶段组成。在 MongoDB 中,您可以使用 map-reduce 对数据运行任意聚合。有关 map-reduce 的实现,请参见Map-Reduce。有关聚合的所有方法,请参见Aggregation
  • mapping type

    • 用编程语言将键与值关联的结构,其中键可以嵌套其他对键和值(例如,字典,哈希,Map 和关联数组)。这些结构的属性取决于语言规范和实现。通常,Map 类型中键的 Sequences 是任意的,不能保证。
  • master

    • 在常规 masterslave复制中接收所有写操作的数据库。在 MongoDB 中,大多数情况下replica sets替换主从复制。有关主从复制的更多信息,请参见主从复制
  • md5

    • 一种散列算法,用于有效提供可重现的唯一字符串以标识和checksum数据。 MongoDB 使用 md5 标识GridFS的数据块。参见filemd5
  • MIB

    • Management 信息库。 MongoDB 使用 MIB 文件定义 MongoDB Enterprise 版本中 SNMP 跟踪的数据类型。
  • MIME

    • 多用途 Internet 邮件扩展。一组标准的类型和编码定义,用于声明多个数据存储,传输和电子邮件上下文中数据的编码和类型。 mongofiles工具提供了一个选项,用于指定 MIME 类型来描述插入GridFS存储的文件。
  • mongo

  • mongod

    • MongoDB 数据库服务器。 mongod进程以daemon的身份启动 MongoDB 服务器。 MongoDB 服务器 Management 数据请求和格式,并 Management 后台操作。参见mongod
  • mongos

    • MongoDB 分片群集查询 Router。 mongos进程以daemon的身份启动 MongoDBRouter。 MongoDBRouter 充当应用程序和 MongoDB sharded cluster之间的接口,并处理集群中的所有路由和负载平衡。参见mongos
  • namespace

    • MongoDB 中集合或索引的规范名称。命名空间是数据库名称和集合或索引名称的组合,例如:[database-name].[collection-or-index-name]。所有文档都属于一个名称空间。参见Namespaces
  • natural order

  • network partition

    • 网络故障将分布式系统分为多个分区,从而一个分区中的节点无法与另一分区中的节点通信。

有时,分区是部分或不对称的。部分分区的一个示例是将网络的节点分为三个集合,其中第一集合的成员不能与第二集合的成员通信,反之亦然,但是所有节点都可以与第三集合的成员通信。在非对称分区中,仅当通信源自某些节点时才可能进行通信。例如,分区一侧的节点只有在它们发起通信通道时才能与另一侧通信。

  • ObjectId

    • 一种特殊的 12 字节BSON类型,可确保collection内的唯一性。 ObjectId 是根据时间戳,计算机 ID,进程 ID 和进程本地增量计数器生成的。 MongoDB 使用 ObjectId 值作为_id字段的默认值。
  • operator

    • $开头的关键字,用于表示更新,复杂查询或数据转换。例如,$gt是查询语言的“大于”运算符。有关可用的运算符,请参见Operators
  • oplog

  • optime

    • 在版本 3.2 中进行了更改:以下内容描述了 MongoDB 3.2 中引入的protocolVersion: 1所使用的 optime 格式。

对复制oplog中位置的引用。 optime 值是一个包含以下内容的文档:

  • ts,即操作的Timestamp

  • t,即最初在主数据库上生成操作的term

  • 有序查询计划

    • 以返回与sort()Sequences 一致的 Sequences 返回结果的查询计划。参见Query Plans
  • orphaned document

    • 在分片群集中,孤立文档是分片上的那些文档,由于迁移失败或由于异常关闭而导致迁移清除不完全,这些文档也以其他分片的形式存在。使用cleanupOrphaned删除孤立的文档,以回收磁盘空间并减少混乱。
  • padding

  • padding factor

    • 一个自动校准的常数,用于确定 MongoDB 应该为磁盘上的每个文档容器分配多少额外空间。填充因子为 1 意味着 MongoDB 将仅分配文档所需的空间量。填充因子 2 意味着 MongoDB 将分配文档所需空间的两倍。参见记录分配策略
  • page fault

    • 使用 MMAPv1 存储引擎时,由于 MongoDB 从其数据文件的当前不在物理内存中的部分读取数据或将数据写入其中的数据,可能会发生页面错误。相反,当物理内存用完并且物理内存的页面交换到磁盘时,就会发生 os 页面错误。

参见Page Faults什么是页面错误?

MongoDB 不允许外环自相交。内圈必须完全包含在外圈内,并且不能相交或重叠。参见GeoJSON Objects

  • powerOf2Sizes

  • pre-splitting

    • 在插入数据之前执行的一项操作,该操作将可能的分片键值的范围划分为多个块,以方便插入和提高写入吞吐量。在某些情况下,通过手动分割集合而不是 awaitMongoDB balancer这样做,预分割可以加快sharded cluster中文档的初始分发。参见在分片群集中创建块
  • prefix compression

    • 通过在每页内存中仅存储一次相同的索引键前缀来减少内存和磁盘消耗。有关 WiredTiger 压缩行为的更多信息,请参见:Compression
  • primary

  • primary key

    • 记录的唯一不变标识符。在RDBMS中,主键通常是存储在每一行的id字段中的整数。在 MongoDB 中,_id字段保存文档的主键,通常是 BSON ObjectId
  • primary shard

  • priority

  • privilege

  • projection

  • query

  • query optimizer

    • 生成查询计划的过程。对于每个查询,优化器都会生成一个使查询与索引匹配的计划,该索引将尽可能高效地返回结果。每次查询运行时,优化器都会重用查询计划。如果集合发生重大变化,则优化器将创建一个新的查询计划。参见Query Plans
  • query shape

    • 查询谓词,排序和投影规范的组合。

对于查询谓词,只有谓词的结构(包括字段名)才有意义;查询谓词中的值无关紧要。这样,查询谓词{ type: 'food' }等同于查询形状的查询谓词{ type: 'utensil' }

  • RDBMS

    • 关系数据库 Management 系统。基于关系模型的数据库 Management 系统,通常使用SQL作为查询语言。
  • read concern

    • 指定读取操作的隔离级别。例如,您可以使用读取关注来仅读取已传播到replica set中的大多数节点的数据。参见Read Concern
  • read lock

  • read preference

    • 该设置确定 Client 端如何指导读取操作。读取首选项会影响所有副本集,包括分片副本集。默认情况下,MongoDB 将读取定向到primaries。但是,您也可以将读取定向到eventually consistent读取的次要位置。参见Read Preference
  • record size

  • recovering

    • replica set成员状态,指示成员尚未准备好开始辅助或主要成员的正常活动。恢复成员不可读取。
  • replica pairs

从 1.6 版开始不推荐使用。

  • replica set

    • MongoDB 服务器集群,实现主从复制和自动故障转移。 MongoDB 推荐的复制策略。参见Replication
  • replication

    • 该功能允许多个数据库服务器共享同一数据,从而确保冗余并促进负载平衡。参见Replication
  • replication lag

    • primary's oplog中的最后一个操作与应用于特定secondary的最后一个操作之间的时间长度。通常,您希望使复制滞后时间尽可能小。参见Replication Lag
  • resident memory

    • 当前存储在物理 RAM 中的应用程序内存的子集。驻留内存是virtual memory的子集,其中包括 Map 到物理 RAM 和磁盘的内存。
  • resource

  • role

    • 一组权限,允许在指定的resources上使用actions。分配给用户的角色确定用户对资源和操作的访问权限。参见Security
  • rollback

  • secondary

    • replica set成员,用于复制 master 数据库的内容。次要成员可以处理读取请求,但是只有primary成员可以处理写操作。参见Secondaries
  • secondary index

    • 数据库index通过最小化查询引擎为完成查询而必须执行的工作量来提高查询性能。参见Indexes
  • set name

    • 赋予副本集的任意名称。副本集的所有成员必须具有通过replSetName设置或--replSet选项指定的相同名称。
  • shard

  • shard key

  • sharded cluster

    • 包含sharded MongoDB 部署的节点集。分片群集由配置服务器,分片和一个或多个mongos路由进程组成。参见分片集群组件
  • sharding

    • 一种数据库体系结构,可按键范围对数据进行分区,并将数据分布在两个或多个数据库实例之间。分片可实现水平缩放。参见Sharding
  • shell helper

  • single-master replication

    • replication拓扑,其中仅单个数据库实例接受写操作。单主复制确保一致性,并且是 MongoDB 使用的复制拓扑。参见副本集主要
  • slave

    • 一个只读数据库,它以常规主/从复制方式从master数据库复制操作。在 MongoDB 中,大多数情况下replica sets替换主/从复制。但是,有关主/从复制的信息,请参见主从复制
  • snappy

    • 压缩/解压缩库旨在平衡有效的计算要求和合理的压缩率。 Snappy 是 MongoDB 使用WiredTiger的默认压缩库。有关更多信息,请参见SnappyWiredTiger 压缩文档
  • split

  • SQL

    • 结构化查询语言(SQL)是一种用于与关系数据库进行交互的通用特殊编程语言,包括访问控制,插入,更新,查询和删除。不同的数据库供应商支持的基本 SQL 语法中也有一些相似的元素,但是大多数实现都有自己的方言,数据类型和所提议的 SQL 标准的解释。通常,复杂 SQL 不能直接在主要RDBMS产品之间移植。 SQL通常用作关系数据库的代名词。
  • SSD

    • 固态磁盘。与传统机械硬盘驱动器使用的旋转盘片和可移动读/写磁头相反,使用固态电子设备实现持久性的高性能磁盘驱动器。
  • standalone

  • storage engine

    • 数据库的一部分,负责 Management 内存和磁盘中数据的存储和访问方式。对于特定的工作负载,不同的存储引擎性能更好。有关 MongoDB 中内置存储引擎的特定详细信息,请参见Storage Engines
  • storage order

  • strict consistency

    • 分布式系统的属性,要求所有成员始终反映系统的最新更改。在数据库系统中,这意味着任何可以提供数据的系统都必须始终反映最新的写入。
  • sync

  • syslog

    • 在类似 UNIX 的系统上,是一个日志记录过程,为服务器和进程提供统一的标准以提交日志记录信息。 MongoDB 提供了将输出发送到主机的 syslog 系统的选项。参见syslogFacility
  • tag

    • 应用于副本集成员的标签,Client 端使用它来发出数据中心感知的操作。有关将标签与副本集一起使用的更多信息,请参见本手册的以下部分:Tag Set

在版本 3.4 中进行了更改:在 MongoDB 3.4 中,分片群集zones替换了tags

  • tag set

    • 包含零个或多个tags的文档。
  • tailable cursor

    • 对于capped collection,可尾游标是在 Client 端用尽初始游标中的结果之后仍保持打开状态的游标。当 Client 将新文档插入有上限的集合中时,可尾光标将 continue 检索文档。
  • term

    • 对于副本集的成员,对应于选举尝试的单调递增数字。
  • topology

    • MongoDB 实例的部署状态,包括部署类型(即独立,副本集或分片集群)以及服务器的可用性,以及每个服务器的角色(即primarysecondaryconfig servermongos)。 )
  • TSV

    • 基于文本的数据格式,由制表符分隔的值组成。此格式通常用于在关系数据库之间交换数据,因为该格式非常适合表格数据。您可以使用mongoimport导入 TSV 文件。
  • TTL

    • 代表“生存时间”,表示在系统删除信息或使之过期之前,给定信息保留在缓存或其他临时存储器中的到期时间或期限。 MongoDB 具有 TTL 收集功能。参见通过设置 TTL 使集合中的数据过期
  • unique index

    • 一个索引,用于在单个集合中对特定字段实施唯一性。参见Unique Indexes
  • unix epoch

    • 1970 年 1 月 1 日世界标准时间 00:00:00.常用于表示时间,此处是自此点开始算起的秒数或毫秒数。
  • 无序查询计划

    • 返回查询计划的查询结果的 Sequences 与sort()Sequences 不一致。参见Query Plans
  • upsert

  • virtual memory

    • 应用程序的工作内存,通常同时驻留在磁盘和物理 RAM 中。
  • WGS84

    • MongoDB 在GeoJSON对象上进行地理空间查询时,MongoDB 用于计算类似地球的球体上的几何图形的默认参考系统和大地基准。请参阅“ EPSG:4326:WGS 84”规范:http://spatialreference.org/ref/epsg/4326/
  • working set

    • MongoDB 最常使用的数据。此数据最好保存在 RAM,固态驱动器(SSD)或其他快速介质中。参见什么是工作集?
  • write concern

    • 指定写操作是否成功。写关注使您的应用程序可以检测到插入错误或不可用的mongod实例。对于replica sets,您可以配置写关注,以确认复制到指定数量的成员。参见Write Concern
  • write conflict

    • 一种情况,其中两个并发操作(其中至少一个是写操作)试图以一种违反使用乐观concurrency control的存储引擎施加的约束的方式使用资源。 MongoDB 将透明地中止并重试其中一个冲突的操作。
  • write lock

    • 资源(例如集合或数据库)上的独占lock。当某个进程写入资源时,它将采取排他性写锁定,以防止其他进程对该资源进行读写。有关锁的更多信息,请参见FAQ: Concurrency
  • writeBacks

  • zlib

  • zone

    • 3.4 版中的新功能:基于给定分片集合的shard key值范围对文档进行分组。分片群集中的每个分片可以与一个或多个区域关联。在平衡群集中,MongoDB 仅将区域覆盖的读写定向到区域内的那些分片。有关更多信息,请参见Zones手册页。

区域取代了 MongoDB 3.2 中tags所描述的功能。