CORE CONCEPTS · 宽列数据库 · Cassandra 兼容
ScyllaDB 核心知识
ScyllaDB 兼容 CQL,但 shard-per-core、Seastar 调度和节点资源隔离改变了容量规划与尾延迟治理方式。
学完应该能做到
- 能解释 shard-per-core
- 能复用并验证 CQL 模型
- 能执行安全滚动升级
三个必须建立的心智模型
Shard-per-core
每个 CPU 核心拥有独立 shard,减少共享锁;分区到 shard 的映射影响均衡。
- 绑定 CPU/NUMA
- 控制 cross-shard 操作
- 按 shard 观察负载
CQL 与数据模型
仍需按分区键与聚簇键设计有界分区,兼容不意味着所有 Cassandra 行为一致。
- 验证驱动和 system 表
- 避免大分区
- 核对 LWT 语义
Compaction 与维护
压缩、repair、streaming 和 tablet/ring 管理直接影响尾延迟。
- 限制维护并发
- 监控 reactor stall
- 逐节点演练恢复
把知识落到工程决策
建模前
先写出访问模式、正确性边界、数据生命周期和故障预算,再决定表、键、索引或分区。
上线前
使用接近生产的数据分布与并发压测,记录查询计划、资源水位和恢复时间作为基线。
运行中
监控延迟分位数、容量增长、后台维护与复制健康;报警必须能映射到可执行处置步骤。