内存控制测试报告
1.周测负载10客户端、10存储组、50设备、每个设备500传感器、batchSize 100、loop 10000, 25G内存,master打开动态参数,mem_control打开内存控制,写入内存为总内存的40%,写入时间为1小时。
版本 | 写入方式 | 写入吞吐 | 写入延迟 | 平均每个chunk数据点数 |
Master | 顺序 | 6170258.54 | 24.09 | 3000 |
Mem_control | 顺序 | 6127491.23 | 24.11 | 9400 |
Master | 乱序 | 5578678.91 | 31.81 | 3000 |
Mem_control | 乱序 | 5574478.09 | 31.95 | 4000 |
2.其他场景测试
2.1场景1
(1)配置
客户端50个,10存储组,总共10个设备,每个设备100传感器,数据类型DOUBLE,编码PLAIN,压缩SNAPPY,无乱序,batch_size=1000,loop=300。
(2)结果
版本 | 写入吞吐 | 写入延迟 | 平均每个chunk数据点数 |
Master | 7698416.23 | 64.77 | 87000 |
内存控制 | 7105335.28 | 74.81 | 260000 |
(3)响应时间对比图
master:
内存控制:
2.2场景2
(1)配置
客户端50个,10存储组,总共10个设备,每个设备100传感器,数据类型DOUBLE,编码PLAIN,压缩SNAPPY,有乱序,batch_size=1000,loop=300。
(2)结果
版本 | 写入吞吐 | 写入延迟 | 平均每个chunk数据点数 |
Master | 7417803.17 | 68.43 | 86683 |
内存控制 | 7188300.18 | 73.04 | 243000 |
(3)响应时间对比图
master:
内存控制:
2.3场景3
(1)配置
客户端50个,10存储组,总共100个设备,每个设备1000传感器,数据类型TEXT,编码PLAIN,压缩SNAPPY,无乱序,batch_size=100,loop=30。
(2)结果 (内存控制进入reject状态)
版本 | 写入吞吐 | 写入延迟 | 平均每个chunk数据点数 |
Master | 6204590.44 | 671.24 | 310 |
内存控制 | 4022176.56 | 1110.72 | 1130 |
(3)响应时间对比图
master:
内存控制:
2.4场景4
(1)配置
客户端50个,10存储组,总共1000个设备,每个设备1000传感器,数据类型DOUBLE,编码PLAIN,压缩SNAPPY,无乱序,batch_size=10,loop=100。
(2)结果
版本 | 写入吞吐 | 写入延迟 | 平均每个chunk数据点数 |
Master | 4340073.36 | 50.55 | 54 |
内存控制 | 4898141.32 | 42.23 | 116 |
(3)响应时间对比图
master:
内存控制:
2.5场景5
(1)配置
客户端50个,50存储组,总共1000个设备,每个设备3000传感器,数据类型DOUBLE,编码PLAIN,压缩SNAPPY,无乱序,batch_size=10,loop=30。
(2)结果
版本 | 写入吞吐 | 写入延迟 | 平均每个chunk数据点数 |
Master(OOM) | N/A | N/A | N/A |
内存控制 | 5256041.42 | 208.12 | 58 |
(3)响应时间
内存控制:
2.6场景6
(1)配置
内存1G, 客户端50个,1存储组,总共250个设备,每个设备1000传感器,数据类型DOUBLE,编码PLAIN,压缩SNAPPY,无乱序,batch_size=10,loop=1000。
(2)结果
版本 | 写入吞吐 | 写入延迟 | 平均每个chunk数据点数 |
Master(OOM) | N/A | N/A | N/A |
内存控制 | 1575499.47 | 255.32 | 未记录 |
(3)响应时间
3.关闭Mem_control与Master原版本对比
周测负载10客户端、10存储组、50设备、每个设备500传感器、batchSize 100、loop 10000, 25G内存,master关闭动态参数,mem_control关闭内存控制,mem_control ArrayPool大小为写入内存的80%,memTable阈值300M,写入内存为总内存的40%,写入时间为1小时
版本 | 写入吞吐 |
Master | 6116585.01 |
内存控制 | 6080057.88 |