本文介绍Ganos时空服务与开源GeoMesa(HBase)、云数据库MongoDB分片集群在处理时空轨迹数据时的性能测试对比。
测试环境
本次性能测试中需要准备以下测试数据库,具体配置如下表:
数据库 | 配置说明 |
云原生多模数据库 Lindorm 宽表引擎(已开通Ganos时空服务) |
|
开源GeoMesa(HBase) |
|
云数据库MongoDB分片集群 | 配置Mongos节点和Shard节点。
|
测试结果
本次性能测试的结果如下:
时空轨迹数据的写入耗时
Lindorm Ganos引擎继承了Lindorm宽表引擎高效的数据写入能力,写入耗时约为开源GeoMesa(HBase)的1/2,约为云数据库MongoDB分片集群的1/5。以时空轨迹数据为7.6 GB为例,写入耗时的测试结果如下:
数据库
写入耗时
云原生多模数据库 Lindorm Ganos引擎
7分钟
开源GeoMesa(HBase)
13分钟
云数据库MongoDB分片集群
34分钟
创建时空索引后的时空数据存储空间占用情况
创建时空主键索引场景中,Lindorm Ganos引擎中时空数据占有的存储空间更少,约为开源GeoMesa(HBase)的80%,约为云数据库MongoDB分片集群的47%。存储空间占用测试结果如下:
数据库
表大小
时空主键索引大小
云原生多模数据库 Lindorm Ganos引擎
4.7 GB
无需占用空间
开源GeoMesa(HBase)
5.9 GB
无需占用空间
云数据库MongoDB分片集群
8.2 GB
1.6 GB
空间范围的查询耗时
在空间范围查询场景中,随着返回结果的数量增加,查询耗时也在增加。Lindorm Ganos引擎在大部分查询中的耗时都比较低,耗时约为开源GeoMesa(HBase)的1/3,约为云数据库MongoDB分片集群的1/2,测试结果如下:
时间和空间范围的查询耗时
在时间范围和空间范围查询场景中,Lindorm Ganos引擎的查询耗时都比较低,耗时约为开源GeoMesa(HBase)的1/3,约为云数据库MongoDB分片集群的1/2。只有小部分查询耗时与开源GeoMesa(HBase)和云数据库MongoDB分片集群相同,测试结果如下:
总结
从测试过程和结果来看,Lindorm Ganos引擎相比于开源GeoMesa(HBase)和云数据库MongoDB分片集群具有以下优势:
使用简单,通过SQL语句方便处理各种查询场景。
与宽表引擎深度融合,覆盖大部分业务场景,减少解决方案的复杂度。
写入时空数据耗时少。
存储成本低于开源GeoMesa(HBase)和云数据库MongoDB分片集群,能够降低20%~50%的存储成本。
在大部分查询场景中查询性能较高,性能高于开源GeoMesa(HBase)或者云数据库MongoDB分片集群的2~3倍。
Lindorm Ganos引擎在时空数据的写入速度、存储成本、查询性能以及易用性上优势较为明显,能够满足车联网、出行等场景中对时空数据的处理需求。