You need to enable JavaScript to run this app.
文档中心
表格数据库 HBase 版

表格数据库 HBase 版

复制全文
下载 pdf
Thrift 连接地址管理
ThriftServer 性能白皮书
复制全文
下载 pdf
ThriftServer 性能白皮书
本文介绍 HBase ThriftServer 在 4C8GiB 与 8C16GiB 两种规格下的基准测试结果,帮助您选择合适的规格。​
测试环境​
​
项目​
配置​
发压机​
4 台 ECS​
ECS 规格​
ecs.g3a.2xlarge,8 vCPU、32 GiB​
HBase Master​
2 × 8C16GiB​
HBase RegionServer​
6 × 16C64GiB​
HBase ThriftServer​
2 × 4C8GiB,2 × 8C16GiB​
​
测试工具​
使用 YCSB 和 Java HBase Thrift2 Client 发压,通过高可用 Thrift Endpoint 访问 HBase。​
  • 4 台 ECS 同时发压,每台启用 48 个线程,总并发连接数为 192。​
  • 延迟指标均按客户端端到端耗时统计。​
  • 测试 API 包括 Get、Put、MultiGet 和 MultiPut 和 Scan。​
测试模型​
​
项目​
说明​
列族​
单列簇​
数据量​
10 亿行,压缩前 约 400 GB​
单行数据​
20 列,每列 20 bytes,压缩前约 400 bytes/行​
RowKey 分布​
100 个 Region;每个 Region 约 1000 万行、4 GB 数据​
Get / Put​
每次调用读写 1 行​
MultiGet​
每次调用读取 50 行​
MultiPut​
每次调用写入 100 行​
Scan​
50 行​
测试前处理​
完成 flush 和 major compaction;正式测试前预热 20 分钟​
​
测试指标​
​
指标​
说明​
call/s​
每秒完成的 Thrift API 调用数​
row/s​
每秒处理的行数;批量 API 为 call/s × 每次调用行数​
avg​
客户端端到端平均延迟​
p99​
99% 请求不超过的客户端端到端延迟,是本次测试主要关注的延迟指标​
max​
测试窗口内观察到的最大客户端端到端延迟​
​
测试结果:ThriftServer 规格 4C8GiB​
吞吐​
​
API​
单次行数​
call/s​
row/s​
Get​
1​
54,872.6​
54,872.6​
Put​
1​
171,436.8​
171,436.8​
MultiGet​
50​
10,487.3​
524,365​
MultiPut​
100​
7,684.1​
768,410​
Scan​
50​
19,286.7​
964,335​
​
延迟​
​
API​
avg​
p99​
max​
Get​
1.77 ms​
3.84 ms​
28.41 ms​
Put​
0.82 ms​
1.57 ms​
19.76 ms​
MultiGet​
7.46 ms​
15.92 ms​
61.88 ms​
MultiPut​
10.85 ms​
18.63 ms​
74.55 ms​
Scan​
6.32 ms​
13.27 ms​
49.37 ms​
​
测试结果:ThriftServer 规格 8C16GiB​
吞吐​
​
API​
单次行数​
call/s​
row/s​
Get​
1​
89,991.1​
89,991.1​
Put​
1​
250,297.7​
250,297.7​
MultiGet​
50​
16,674.8​
833,740​
MultiPut​
100​
10,988.3​
1,098,830​
Scan​
50​
32,401.7​
1,620,085​
​
延迟​
​
API​
avg​
p99​
max​
Get​
1.09 ms​
2.71 ms​
23.68 ms​
Put​
0.57 ms​
1.18 ms​
16.92 ms​
MultiGet​
4.71 ms​
11.34 ms​
51.27 ms​
MultiPut​
7.63 ms​
14.86 ms​
63.41 ms​
Scan​
3.79 ms​
9.18 ms​
40.72 ms​
​
规格选择建议​
ThriftServer 推荐使用 8C16GiB 规格,该规格尤其适合吞吐敏感、批量读写占比高、对 P99 延迟要求严格,或预期业务增长较快的场景。​
最近更新时间:2026.09.22 17:59:56
这个页面对您有帮助吗?
有用
有用
无用
无用