集群术语表

术语 描述

分配器

集群中一个组件,根据指定的拓扑约束和分配策略将数据库分配到服务器。

异步复制

支持高效的辅助数据库副本扩展,但在故障情况下不提供任何保证。辅助副本中存在的数据不能保证与数据库大多数主副本保持最新。

可用性

访问数据库中数据的能力。数据库可以用于读写、只读或完全不可用。集群数据库具有容错性,即如果某些主副本发生故障,它可以保持读写可用性(有关更多信息,请参阅容错性)。如果发生故障的主副本数量超过容错限制,则数据库将变为只读。如果所有副本都发生故障,则数据库将不可用。

书签

客户端可以从集群请求的标记,以确保它能够读取自己的写入,从而使应用程序的状态保持一致,并且只有拥有书签副本的数据库才能响应。

因果一致性

当客户端(驱动程序)创建会话并执行查询时,响应服务器会向客户端发出书签。这反映了服务器在执行查询时数据库副本的状态。书签会在会话中的所有后续查询中传递和更新,无论哪个服务器执行哪个查询。书签只能单调递增地更新。如果服务器落后于书签中的状态,它将等待直到赶上,或超时查询。因此,在会话中执行查询的客户端保证能够读取自己的写入,并且只能看到数据库的后续状态。这有时也称为会话一致性

集群

配置为相互通信的一组运行 Neo4j 的服务器。这些服务器可用于托管数据库,并且可以将数据库配置为跨集群中的服务器进行复制,从而实现读取扩展或高可用性。集群至少需要三台服务器才能具有容错性。

数据库

构成图的节点、关系和属性的数据存储。多个数据库可以托管在数据库管理系统 (DBMS) 上。

数据库管理系统 (DBMS)

在单个服务器或集群实例上运行的 Neo4j 服务和系统数据库,以提供一个或多个数据库。

释放

安全地从服务器中移除数据库(即,不会丢失数据或降低容错性)或从集群中移除服务器的行为。

灾难恢复

手动干预以恢复集群或集群中数据库的可用性。

选举

如果领导者无响应,则跟随者会自动触发选举并投票选出新的领导者。投票成功需要获得多数票。

容错性

保证数据库在发生一个或多个故障时能够保持持久性和可用性。可以容忍的故障数量 f 取决于数据库的主副本数量 n,并遵循公式 f = (n-1)/2。如果超过 f 个主副本发生故障,则数据库将无法再处理写入事务,并变为只读。

跟随者

充当跟随者的数据库主副本,接收并确认来自领导者的同步写入。

领导者

数据库的单个主副本被指定为领导者。它接收来自客户端的所有写入事务,并同步复制到跟随者,异步复制到数据库的辅助副本。每个数据库在集群中可以有不同的领导者。

主副本

能够处理写入事务并有资格被选为领导者的数据库副本。它参与容错写入,因为它是在确认和提交写入事务所需的多数副本的一部分。

读取扩展

向集群添加数据库的辅助副本可以将读取查询从主数据库中卸载,从而减少负载并帮助提高集群的写入性能。

辅助副本

数据库的异步复制副本,在集群中提供读取扩展。它也适用于在使用图数据科学的集群中运行图分析工作负载并在不给主副本带来负载的情况下进行备份。

种子

用于在单个实例或集群成员上创建数据库副本的文件。这可以是数据库转储或数据库备份。种子也可以用作动词,来描述从备份播种集群的行为。

服务器

运行 Neo4j DBMS 的物理机、虚拟机或容器。服务器可以是独立的,也可以是集群的一部分。

会话一致性

Neo4j 的因果一致性的另一个名称。

独立服务器

单个服务器或容器,运行 Neo4j DBMS 且不是集群的一部分。

同步复制

在尝试提交事务时,领导者主副本会复制事务并阻塞,要求跟随者主副本确认复制,然后才能继续进行提交。这种阻塞复制称为同步,并确保集群内的数据持久性和一致性。另请参阅异步复制

拓扑

描述数据库副本应如何在集群中的服务器之间传播的配置。