我正在尝试测试几何cassandra后端。
我从OSM获得了大约2M点,并使用带有geotools ecql的geomesa将DWITHIN
和BBOX
查询发送到cassandra。
然后我做了一些性能测试,结果对我来说看起来不合理。
Cassandra安装在Linux机器上,具有16核xeon,32GB RAM和1个SSD驱动器。我每秒收到~150
次查询。
我开始研究我的查询的几何执行计划。
来自org.locationtech.geomesa.index.utils.Explainer
的跟踪日志非常有用,它们可以很好地解释发生了什么。
让我感到困惑的是通过cassandra进行的范围扫描次数。
例如,我在日志中看到以下内容:
Table: osm_poi_a7_c_osm_5fpoi_5fa7_attr_v2
Ranges (49): SELECT * FROM ..
数字49
表示发送到cassandra的实际扫描范围数。
不同的查询给出了不同的结果,它们的差异大约在10到130之间。
10
对我来说看起来很合理,但130
看起来很大。
请问您能解释一下导致几何体发送如此大量范围扫描的原因吗?
有没有办法减少范围扫描次数?
也许有一些配置选项?
还有其他选择吗?比如减少z-index的预设以改善这种查询?
非常感谢!
答案 0 :(得分:2)