MST

星途 面试题库

面试题:MongoDB读关注配置基础

在MongoDB中,读关注(Read Concern)有哪些常见级别?请简要描述每个级别的含义及适用场景。
25.1万 热度难度
数据库MongoDB

知识考点

AI 面试

面试题答案

一键面试

常见读关注级别及含义、适用场景

  1. local
    • 含义:从本地节点读取数据,不保证读到的是最新数据,可能读取到未复制到其他节点的本地暂存数据。
    • 适用场景:适用于对数据实时性要求不高,追求快速读取的场景,例如一些后台分析任务,不需要精确实时数据的情况。
  2. majority
    • 含义:从大多数副本集成员已确认写入的节点读取数据,确保读到的数据是大多数节点认可的最新数据。
    • 适用场景:适用于对数据一致性要求较高的场景,如涉及金融交易、关键业务数据读取等,确保读到的数据是相对可靠和最新的。
  3. linearizable
    • 含义:提供线性化读,保证读取操作反映所有已提交的写入操作的最新状态,是一种强一致性的读关注级别。
    • 适用场景:适用于对数据一致性要求极高的场景,例如分布式系统中的全局配置数据读取,任何读取操作都必须获取到最新的已提交数据。
  4. available
    • 含义:尝试从任何可用节点读取数据,即使副本集处于降级状态(例如某些节点不可用),也会尽力返回数据,但不保证数据的一致性和完整性。
    • 适用场景:适用于对系统可用性要求极高,允许一定程度数据不一致的场景,如一些监控指标的读取,即使数据可能不准确但需要确保始终能获取到数据。