对象存储加速的
实用架构方案

高性能、S3兼容的云对象存储缓存与写入加速方案

KyteStore ecosystem: S3 applications, gateway, cache and storage tiers, and public cloud object storage

生态定位:为您的应用提供S3兼容的前端接口,实现读取缓存加速与写入回传加速。

核心功能

S3兼容。透明加速。

KyteStore在完全兼容S3协议的同时,提供本地缓存与远程对象存储的写入加速,无需修改任何应用代码。

协议兼容

与现有S3兼容应用无缝对接,只需将端点地址切换为KyteStore的S3网关地址即可。

多层架构

结合ChunkServer存储层与缓存子系统,实现可靠的高性能读写加速。

数据可靠性

不同于简单文件缓存,KyteStore支持多副本可靠存储,并具备自动数据修复能力。

热数据缓存

对频繁访问的数据进行智能缓存,降低远程存储带宽成本与访问延迟。

写入加速

通过带本地持久化的缓冲写入,实现快速写操作,同时保障数据持久性。

水平扩展

无状态S3网关层可横向扩展,从容应对流量增长。

系统架构

面向性能与可靠性的多层架构设计

KyteStore将无状态S3网关、缓存层、多副本块存储与元数据服务分离,使每一层均可独立扩展与演进。下图展示了请求在系统各层间的流转过程。

KyteStore architecture diagram: S3 gateway, cache subsystem, ChunkServer, MetaServer, and remote object storage
为什么选择KyteStore?

超越简单文件缓存

传统S3加速方案

  • 基于文件的简单缓存
  • 大文件量时性能下降
  • 不支持多副本
  • 不支持自动数据修复
  • 仅支持读加速
  • 可靠性保障有限

KyteStore

  • 基于ChunkServer的多层架构
  • 大规模下持续高性能
  • 多副本存储,支持自动故障转移
  • 可靠的本地持久化
  • 全面支持读写加速
  • 企业级可靠性
性能指标

实测性能数据

基准测试环境:单节点Docker集群(1个前端 + 1个数据节点),单块SSD,使用MinIO warp通过S3兼容接口测试。

注意:在配备多块SSD的真实生产服务器上,实际性能将远优于此基准数据。

1)基础吞吐性能

128 并发压测下的基础吞吐表现,体现持续读写带宽能力。

25K+
读取QPS
17K+
写入QPS
1570.07
MiB/s 读取
3ms
平均延迟
操作 并发数 QPS 吞吐量 平均延迟 P50/P90/P99
GET (64KB) 128 25,121 1570.07 MiB/s 3.0 ms 1.7 / 6.0 / 10.0 ms
PUT (64KB) 128 17,195 1447.8 MiB/s 4.9 ms 2.4 / 10.2 / 15.6 ms
GET (64KB) 128并发
QPS 25,121
吞吐量 1570.07 MiB/s
平均延迟 3.0 ms
P50/P90/P99 1.7/6.0/10.0 ms
PUT (64KB) 128并发
QPS 17,195
吞吐量 1447.8 MiB/s
平均延迟 4.9 ms
P50/P90/P99 2.4/10.2/15.6 ms

2)基础延迟性能

单路请求下的基础延迟数据,体现低延迟响应能力。

操作 平均延迟 P50 P90 P99 对象速率
PUT 64KiB 1.00 ms 0.90 ms 1.30 ms 1.70 ms 986.45 obj/s
GET 64KiB range 0.50 ms 0.50 ms 0.70 ms 1.00 ms 1920.67 obj/s
HEAD 0.30 ms 0.30 ms 0.50 ms 0.60 ms 43979.64 obj/s
LIST 68.70 ms 68.40 ms 72.20 ms 82.30 ms 146256.01 obj/s
PUT 64KiB 单路请求
平均延迟 1.00 ms
P50 0.90 ms
P90 1.30 ms
P99 1.70 ms
对象速率 986.45 obj/s
GET 64KiB range 单路请求
平均延迟 0.50 ms
P50 0.50 ms
P90 0.70 ms
P99 1.00 ms
对象速率 1920.67 obj/s
HEAD 单路请求
平均延迟 0.30 ms
P50 0.30 ms
P90 0.50 ms
P99 0.60 ms
对象速率 43979.64 obj/s
LIST 单路请求
平均延迟 68.70 ms
P50 68.40 ms
P90 72.20 ms
P99 82.30 ms
对象速率 146256.01 obj/s

3)DuckDB TPC-DS 测试

KyteStore 单机最小规模部署, 同时 TPCDS 测试是逐个 SQL 顺序执行,SQL 内部允许并行处理

方案 总数据量 算子并行数 Query 数量 总耗时 单 Query 平均耗时 最慢 Query 最慢 Query 耗时
S3 直连 1 GiB 32 99 43.99 s 187.28 ms Q64 477.29 ms
KyteStore 加速 1 GiB 32 99 19.04 s 89.54 ms Q67 314.67 ms
部署建议

部署建议

推荐配置

以下配置建议覆盖单机验证与正式集群部署,便于按业务规模规划 KyteStore 的资源。

单机部署配置建议

适用于 FE + DS + MS + FDB 全部部署在同一台服务器上的场景。

档位 CPU 内存 SSD 网络 适用场景
最低配置 8 vCPU 32 GiB 500 GB SSD 1 Gbps 功能验证、开发测试、低并发 PoC
推荐配置 16 vCPU 64 GiB 1 TB NVMe 10 Gbps 小规模正式使用、稳定读写加速
性能配置 32 vCPU 128 GiB 2-4 TB NVMe 25 Gbps 更高并发、较大缓存、持续写入场景
  • 单机版适合验证功能、跑小规模业务,不适合作为高可用生产架构。
  • DS 是资源消耗最大的角色,CPU、内存和本地盘性能最关键。
  • 如果开启写缓冲和异步回刷,网络带宽也会直接影响整体吞吐。

集群部署配置建议

适用于多节点正式部署,建议将数据面和控制面分开规划。

档位 典型拓扑 FE 节点规格 DS 节点规格 网络
最低配置 1 FE + 2 DS + 1 控制面 4 vCPU / 8 GiB / 100 GB SSD 8 vCPU / 32 GiB / 1 TB SSD 10 Gbps
推荐配置 2 FE + 3 DS + 3 控制面 8 vCPU / 16 GiB / 100 GB SSD 16 vCPU / 64 GiB / 2 TB NVMe 10-25 Gbps
性能配置 2-4 FE + 6+ DS + 3 控制面 16 vCPU / 32 GiB / 200 GB SSD 32 vCPU / 128 GiB / 4+ TB NVMe 25 Gbps+
  • 集群版更适合正式生产,尤其是在需要稳定吞吐和更好扩展能力时。
  • FE 主要承担网关和协议处理,DS 负责本地缓存和写缓冲,因此 DS 节点应优先使用 NVMe。
  • 控制面建议至少准备 3 个 FDB coordinator;MS 可以与其中一台控制面节点同机部署。
  • 如果业务以写入加速为主,优先增加 DS 节点数量和本地盘容量;如果业务以接入和转发为主,再增加 FE 节点。
联系我们

开始使用KyteStore

希望进一步了解KyteStore?欢迎联系我们,进行技术交流、商务合作或获取支持。

service@kytestore.com