API 响应时间与过滤器数量呈线性关系
API response time linear in number of filters
我正在调用 Overpass API 的本地实例以获取给定边界框中的所有 "roads"。奇怪的是,所有道路/路径/轨道似乎都归类在 "highway" 键下(这不是一个非常糟糕的名字吗??)。我只对汽车/公共汽车可以行驶的道路感兴趣,所以我确定了一堆(大约 17 个)不同的高速公路值,并将它们全部添加为我的查询字符串中的过滤器。看起来像这样:
"way[highway = motorway];
方式[高速公路=主干];
方式[高速公路=主要];
方式[高速公路=二级];
方式[高速公路=第三级];
方式[高速公路=未分类];
方式[高速公路=住宅];
方式[高速公路=服务];
方式[高速公路= motorway_link];<br>
方式 [高速公路 = trunk_link];
方式 [高速公路 = primary_link];
方式 [高速公路 = secondary_link];
方式 [高速公路 = tertiary_link];
方式 [高速公路 = living_street];
方式 [高速公路 = bus_guideway];
方式[高速公路=道路];
方式[高速公路=轨道]; "
问题是,据我所知,响应时间似乎随着每个添加的标签而线性增加。我可以进行更智能的查询以加快响应速度吗?感觉应该有一个标签来定义这种方式(我会称之为 "road"),这意味着只有一个过滤器。
只需使用一个正则表达式即可:
way[highway~"^(motorway|trunk|primary|secondary|tertiary)$"];
当然,在撰写本文时,推荐使用当前版本 0.7.53 以获得最佳性能。
我正在调用 Overpass API 的本地实例以获取给定边界框中的所有 "roads"。奇怪的是,所有道路/路径/轨道似乎都归类在 "highway" 键下(这不是一个非常糟糕的名字吗??)。我只对汽车/公共汽车可以行驶的道路感兴趣,所以我确定了一堆(大约 17 个)不同的高速公路值,并将它们全部添加为我的查询字符串中的过滤器。看起来像这样:
"way[highway = motorway];
方式[高速公路=主干];
方式[高速公路=主要];
方式[高速公路=二级];
方式[高速公路=第三级];
方式[高速公路=未分类];
方式[高速公路=住宅];
方式[高速公路=服务];
方式[高速公路= motorway_link];<br>
方式 [高速公路 = trunk_link];
方式 [高速公路 = primary_link];
方式 [高速公路 = secondary_link];
方式 [高速公路 = tertiary_link];
方式 [高速公路 = living_street];
方式 [高速公路 = bus_guideway];
方式[高速公路=道路];
方式[高速公路=轨道]; "
问题是,据我所知,响应时间似乎随着每个添加的标签而线性增加。我可以进行更智能的查询以加快响应速度吗?感觉应该有一个标签来定义这种方式(我会称之为 "road"),这意味着只有一个过滤器。
只需使用一个正则表达式即可:
way[highway~"^(motorway|trunk|primary|secondary|tertiary)$"];
当然,在撰写本文时,推荐使用当前版本 0.7.53 以获得最佳性能。