簡體   English   中英

在自己安裝的OpenStreetMap的Overpass API中增加最大內存限制

[英]Increase maximum memory limit in own install of OpenStreetMap's Overpass API

為了我的特定目的,我需要更改一個area Overpass API定義,以包括所有建築物,無論它們是否具有名稱(因此is_in()將在請求時返回這些建築物)。

為此,我已經在3個特定國家/地區安裝了API的本地副本,並修改了os3m腳本,該腳本生成了適合我的定義的區域-到目前為止,一切都很好。

很明顯,因為它是處理多了很多 ,該腳本將需要比默認的一個更多的內存ways 我正在運行的計算機具有16GB of RAM 如果我為腳本指定2GB或更少的空間(即element-limit="2073741824" ),那么它將耗盡內存,但是指定更多(甚至100MB)將始終導致錯誤:

Dispatcher_Client :: request_read_and_idx ::超時

幾秒鍾后。

問題是,如何告訴Overpass API /調度程序使用2GB以上的2GB是完全可以的,實際上,允許它為此查詢分配~15GB 2GB嗎?

您可以嘗試增加total_available_space中的total_available_space兩個值(當前為4GB),並從源代碼重新編譯Overpass API。

AFAIK之前沒有人嘗試過通過區域處理大量建築物,因此請為進一步的問題做好准備。 Overpass API開發人員列表可能是討論此問題的好地方,也可以引起Roland的注意(Overpass API開發人員/維護人員),因為Roland不在stackoverflow上。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2025 STACKOOM.COM