Files
Knowledge/6. 读书笔记/分布式数据库.md
T

88 lines
3.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
### **关键特性对比表**
| 数据库 | 开源情况 | 一致性模型 | 同步协议 | 兼容性 | 典型场景 |
| -------------- | ------ | ------ | ---------- | ------------ | ------------- |
| **TiDB** | 完全开源 | 强一致性 | Raft | MySQL | 高并发 OLTP/HTAP |
| **OceanBase** | 社区版开源 | 强一致性 | Paxos | Oracle/MySQL | 金融核心系统 |
| **openGauss** | 完全开源 | 强/最终一致 | Raft/复制 | PostgreSQL | 企业级替代 Oracle |
| **TDSQL** | 云服务 | 强一致性 | MAR (Raft) | MySQL | 银行、政务云 |
| **KunlunBase** | 部分开源 | 强一致性 | Paxos | PostgreSQL | 高并发混合负载 |
| **GoldenDB** | 闭源(商业) | 强一致性 | 强同步复制 | MySQL | 银行核心交易系统 |
### **1. TiDB(PingCAP)**
| 组件 | 最小内存 | 推荐生产内存 | 说明 |
| -------- | ------- | -------------- | ----------------- |
| **PD** | 2GB | 8GB+ | 元数据管理,低负载可缩减 |
| **TiKV** | 4GB | **32GB+ 每节点** | 存储引擎,内存越大性能越优 |
| **TiDB** | 2GB | 16GB+ | 计算层,OLTP 负载需更高内存 |
| **整体集群** | **8GB** | **64GB+(3节点)** | 测试环境可缩容,生产需按数据量扩展 |
---
### **2. OceanBase(社区版)**
|场景|最小内存|推荐生产内存|说明|
|---|---|---|---|
|**单节点测试**|8GB|16GB+|需关闭内存限制参数|
|**生产集群**|**16GB**|**64GB+ 每节点**|内存占用与租户数量和事务量强相关|
|**OBServer**|-|建议总内存 ≥ 数据热集的 30%|依赖内存缓存性能|
---
### **3. openGauss(分布式部署)**
|组件|最小内存|推荐生产内存|说明|
|---|---|---|---|
|**CN**|4GB|16GB+|协调节点,复杂查询需更高内存|
|**DN**|8GB|**32GB+ 每节点**|数据节点,OLTP 场景需配置更大|
|**GTM**|2GB|8GB+|全局事务管理,轻量级|
|**整体集群**|**16GB**|**128GB+(3节点)**|需根据分片数量线性扩展|
---
### **4. TDSQL(腾讯云)**
| 配置类型 | 最小内存 | 推荐生产内存 | 说明 |
| --------- | -------- | -------------- | ---------------- |
| **Proxy** | 2GB | 8GB+ | 代理节点,低消耗 |
| **Shard** | 4GB | **32GB+ 每分片** | 每个 MySQL 分片实例需求 |
| **全局组件** | 8GB | 16GB+ | ZK/TDSQL-MGR 等 |
| **生产集群** | **16GB** | **96GB+(3分片)** | 金融级场景需 ≥ 64GB/节点 |
---
### **5. KunlunBase(百度)**
|组件|最小内存|推荐生产内存|说明|
|---|---|---|---|
|**Storage Node**|8GB|32GB+|存储节点,与数据量正相关|
|**Compute Node**|4GB|16GB+|计算节点,OLAP 需更高内存|
|**元数据服务**|2GB|8GB+|轻量级|
|**生产集群**|**24GB**|**128GB+(3节点)**|需预留 20% 内存缓冲|
---
### **6. GoldenDB(中兴通讯)**
|场景|最小内存|推荐生产内存|说明|
|---|---|---|---|
|**单节点测试**|16GB|32GB+|需关闭内存限制参数|
|**生产分片**|**32GB**|**64GB+ 每分片**|银行核心系统通常配置 ≥ 128GB/节点|
|**全局事务**|8GB|16GB+|GTM 组件|
---
### **通用建议**
1. **最小内存**:仅适用于功能验证或开发测试,生产环境需大幅提升。
2. **推荐内存**:
- OLTP 场景:建议 ≥ 32GB/节点,TiKV/OceanBase 等存储引擎需更高配置。
- 金融级应用:单节点常需 ≥ 64GB,避免频繁磁盘交换。
3. **扩展性**:分布式数据库通常支持线性扩展,内存需求随数据分片(Shard/Region)数量增加。
> **注**:具体配置需参考业务数据量(热数据规模)、并发连接数(如 TiDB 每个连接约占用 10MB 内存)及查询复杂度(OLAP 需更多内存)。