Shared 数据库引擎与 Shared Catalog 配合使用,用于管理其表使用无状态表引擎 (例如 SharedMergeTree) 的数据库。
这些表引擎不会将持久状态写入磁盘,并且适用于动态 compute 环境。
Cloud 中的 Shared 数据库引擎消除了对本地磁盘的依赖。
它是纯内存引擎,只需要 CPU 和内存。
工作原理是什么?
Shared 数据库引擎将所有数据库和表定义存储在由 Keeper 支持的集中式 Shared Catalog 中。它不将这些定义写入本地磁盘,而是维护一个由所有计算节点共享的、带版本的全局状态。
每个节点只会跟踪最后一次应用的版本,并在启动时拉取最新状态,无需本地文件或手动配置。