默认的MongoDB读/写关注

在本页面

Read/Write Concern Inheritance

默认读取问题

默认的 read concern如下:

操作 默认读取问题
针对主要的读取 "local"
注意,这个读取的关注点可以返回可能被回滚的数据。此读取关注点保证因果一致性
如果读操作与因果一致的会话相关联,则读取二级会话。 "local"
注意
这个读关注可以返回可能回滚的数据。
此读取关注点保证因果一致性
如果读操作与因果一致的会话没有关联,则对辅助会话进行读取。 "available"
注意
这个读关注可以返回可能回滚的数据
这种已读关注点不能保证因果关系的一致性
对于分片集合,这个读关注也可以返回孤立的文档

指定读取关注:MongoDB驱动程序

  • 外部事务操作

注意

以下内容适用于在事务外部发出的操作。

要阅读与事务内部发出的操作相关的关注信息,请单击事务中的操作选项卡。

使用MongoDB 驱动,您可以覆盖默认的read concern,并设置以下级别的操作的read concern:

水平 描述
客户级别 应用于操作,除非在数据库/集合/操作级别设置了更细致的读取关注。否则将应用于操作。
数据库级别 应用于数据库集合上的操作(即覆盖客户端读关注),除非已在集合级别或操作级别设置了读关注。
注意:
不适用于事务内部的操作。
集合级别 应用对集合的读操作(即覆盖数据库/客户端读关注),除非已在操作级别设置了读关注。
注意:
不适用于事务内部的操作。
操作级别 应用特定的读操作(例如,覆盖数据库/客户端/集合读关注)。在操作中设置read concern的能力取决于驱动程序。请参考您的驱动程序文档
注意:
不适用于事务内部的操作。
  • 事务中的操作

注意

以下内容适用于在事务内部发出的操作。

要阅读与发出外部事务的操作相关的关注信息,请单击“外部事务的操作”选项卡。

使用MongoDB 驱动,您可以覆盖默认的read concern,并设置以下级别的操作的read concern:

水平 描述
客户级别 应用于事务,除非在会话/事务级别设置了更细致的读取关注。
注意
事务中的所有操作都使用事务读关注;即,在事务内部忽略在操作/集合/数据库级别设置的任何读关注。
会话级别 应用于在会话中启动的事务(即覆盖客户端读取关注),除非在特定事务级别上设置了更细致的读取关注级别。
注意
事务中的所有操作都使用事务读关注;即,在事务内部忽略在操作/集合/数据库级别设置的任何读关注。
有关更多信息,请参阅事务的阅和读关注
事务级别 应用于特定的事务。
事务写关注应用于提交操作和事务内部的操作。
注意
事务中的所有操作都使用事务读关注;即,在事务内部忽略在操作/集合/数据库级别设置的任何读关注。

额外的信息

有关可用的读取关注点的更多信息,请参见read Concern

写关注

Read/Write Concern Inheritance

默认写问题

默认的 write concernw: 1

请注意

  • 使用默认的写关注,数据可以回滚。
  • 此写关注点保证因果一致性

指定写关注:MongoDB驱动程序

  • 外部事务操作

注意

以下内容适用于在transactions外部发出的操作。

要阅读与事务内部发布的操作相关的关注信息,请单击“事务中的操作”选项卡。

使用MongoDB drivers,您可以覆盖默认的write concern,并在以下级别设置操作的write concern:

Level Description
客户级别 除非在操作/数据库/集合中为操作设置了更细的写关注点,否则将应用于操作。
数据库级别 应用于数据库集合上的写操作(即覆盖客户端写关注点),除非在集合级别或操作级别上设置了写关注点
注意
不适用于事务内部的操作。
集合级别 应用于集合上的写操作(即覆盖数据库和客户端写关注点),除非在操作级别上设置了写关注点。
注意
不适用于事务内部的操作。
操作级别 应用于特定的写操作。在操作中设置写关注点的能力取决于驱动程序。请参考您的驱动程序文档
注意
不适用于事务内部的操作。
  • 事务中的操作

注意

以下内容适用于在事务内部发出的操作。

要阅读与发出外部事务的操作相关的关注信息,请单击“外部事务的操作”选项卡。

水平 描述
客户级别 应用于事务,除非在会话/事务级别设置了更细致的读取关注。
事务写关注点适用于提交操作和事务内部的操作。
注意
事务中的所有操作都使用事务读关注;即,在事务内部忽略在操作/集合/数据库级别设置的任何读关注。
会话级别 应用于在会话中启动的事务(即覆盖客户端读取关注),除非在特定事务级别上设置了更细致的读取关注级别。
事务写关注点适用于提交操作和事务内部的操作。
注意
事务中的所有操作都使用事务读关注;即,在事务内部忽略在操作/集合/数据库级别设置的任何读关注。
有关更多信息,请参阅事务的阅和读关注
事务级别 应用于特定的事务。
事务写关注应用于提交操作和事务内部的操作。
注意
事务中的所有操作都使用事务读关注;即,在事务内部忽略在操作/集合/数据库级别设置的任何读关注。

使用MongoDB驱动程序,你可以覆盖默认的写关注和设置写关注为以下级别的事务:

额外的信息

有关可用的写关注点的更多信息,请参见写关注点

因果一致性的保证

使用因果一致的客户端会话,客户端会话仅在以下情况下保证因果一致:

Copyright © 上海锦木信息技术有限公司 all right reserved,powered by Gitbook文件修订时间: 2023-09-01 17:10:26

results matching ""

    No results matching ""