首页 > 数据库 > 国内数据库 > YashanDB 共享集群
本文内容来自 YashanDB 官网,原文内容请见 https://doc.yashandb.com/yashandb/23.3/zh/ 概念手册 / YashanDB 体系架构 / 共享集群.html
共享集群基于 YashanDB 内核持续演进,硬件上依赖共享存储实现 shared-Disk 的架构,同时引入了 Cohesive Memory 核心技术实现 Shared-Cache 能力,可在集群数据库多个实例之间协同数据页的读写访问以及各种非数据类资源的并发控制,主要特点包括:
YCK 通过聚合内存(Cohesive Memory)技术,聚合多实例对数据资源和非数据资源的并发访问。

GRC
GRC(Global Resource Catalog)负责管理全局资源状态信息,例如一个数据块当前持有者是哪个实例、是以读 / 写哪种模式持有、哪些实例请求正在排队等。GRC 相关元数据采用了一致性哈希算法平均分配到所有实例,任一资源的元数据信息在集群内只有一份。由 GRC 线程组负责处理多实例对全局资源的并发访问控制,并提供排队服务。
GCS
GCS(Global Cache Service)负责管理数据块类全局资源的调度,GCS 在 GRC 提供的能力基础上实现实例之间数据块请求的完整流程,包括路由请求消息、数据传输以及状态维护等,由 GCS 线程组提供相应的服务。
GLS
GLS(Global Lock Service)负责管理非数据块类全局资源的调度,主要是各种类型的锁,GLS 在 GRC 提供的能力基础上实现实例之间申请全局锁的完整流程,由 GLS 线程组提供相应的服务。
YCS 负责管理共享集群数据库,包括集群服务器配置管理,集群资源配置管理,启停、监控服务器以及资源,提供查询服务器资源拓扑状态能力,在各种故障时负责投票仲裁并重组集群。
YCS 是高可用的关键部件,通过网络心跳和磁盘心跳来确认其他服务器以及服务器上运行的资源是否正常。监控任务感知到资源运行状态异常时,会进行投票仲裁决定允许留在集群中的幸存者列表,并通知所有服务器的所有资源采取必要的重组动作。
共享集群每台服务器上会部署 YCS 实例(一组为 YCS 服务的线程称为一个 YCS 实例)和数据库实例,同一集群中不同服务器上运行的 YCS 实例和数据库实例完全一样,并通过内网互联。
YCS 要求在共享存储上划分至少三块盘,是用作配置的 [YCR File] 和 Voting File,所有服务器上的 YCS 实例和数据库实例均可读写这三块盘。
YFS 是 YashanDB 的专用并行文件系统,提供存储设备管理、存储高可用、文件系统接口等功能。
在共享集群部署中,必须依赖 YFS 进行所有文件操作,包括但不限于控制文件、数据文件、日志文件等的增删改操作。
与通用文件系统相比,YFS 的差异主要有:
YFS 无独立进程,作为内嵌资源与 YCS 实例同进程运行,随 YCS 启动而启动,无需用户干预。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70028812/viewspace-3072797/ ,如需转载,请注明出处,否则将追究法律责任。