本公開涉及地圖數(shù)據(jù)處理,特別是涉及一種數(shù)據(jù)查詢方法、裝置、計算機設備、存儲介質(zhì)。
背景技術:
1、cesium?是一個強大的開源javascript?地圖引擎庫,用于在瀏覽器中創(chuàng)建?3d?地球和?2d?地圖,支持多種格式的地理空間數(shù)據(jù)和圖層,比如3d?tiles、geojson、wmts、wms等。針對矢量數(shù)據(jù)的加載有多種方法和策略,既可以加載geojson、kml、shapefile等多種格式的數(shù)據(jù),也可以加載wfs、wms等多種類型的服務。
2、然后,不同的加載方式通常會存在不同的弊端,直接加載數(shù)據(jù)有利于編輯等功能的實現(xiàn),但往往支持的數(shù)據(jù)量有限;加載wms服務圖層可以支持更高量級的數(shù)據(jù)和屬性查詢,但受限于wms的特性,數(shù)據(jù)量較大的情況下仍然無法達到很好的渲染效率;加載wmts服務圖層的渲染效率往往最優(yōu),但不能友好地支持屬性查詢、數(shù)據(jù)變更及版本管理等。
技術實現(xiàn)思路
1、基于此,有必要針對上述技術問題,提供一種數(shù)據(jù)查詢方法、裝置、計算機設備、存儲介質(zhì)。
2、第一方面,本公開提供了一種數(shù)據(jù)查詢方法。所述方法包括:
3、獲取目標地區(qū)的建圖數(shù)據(jù),將所述建圖數(shù)據(jù)按照空間數(shù)據(jù)庫中空間要素字段存入所述空間數(shù)據(jù)庫中;
4、將所述空間數(shù)據(jù)庫中的所述建圖數(shù)據(jù)映射到地圖編輯器中;
5、至少基于所述建圖數(shù)據(jù)確定邊框信息,并根據(jù)所述邊框信息配置所述建圖數(shù)據(jù)相匹配的圖層數(shù)據(jù);
6、按照預設的切片條件對所述圖層數(shù)據(jù)進行數(shù)據(jù)切片,得到瓦片數(shù)據(jù);
7、將所述瓦片數(shù)據(jù)存儲到文檔導向數(shù)據(jù)庫中,并在所述文檔導向數(shù)據(jù)庫中設置所述瓦片數(shù)據(jù)的版本信息;
8、響應于接收到查詢請求,根據(jù)所述查詢請求所指示的查詢信息在所述文檔導向數(shù)據(jù)庫中進行查詢,得到查詢結果。
9、在其中一個實施例中,所述在所述文檔導向數(shù)據(jù)庫中設置所述瓦片數(shù)據(jù)的版本信息之后,所述方法還包括:使用地球可視化平臺加載所述瓦片數(shù)據(jù);所述根據(jù)所述查詢請求所指示的查詢信息在所述文檔導向數(shù)據(jù)庫中進行查詢,得到查詢結果,包括:
10、根據(jù)所述查詢請求所指示的圖層信息、邊框信息中的至少一種,在所述文檔導向數(shù)據(jù)庫中進行空間檢索,得到查詢結果;
11、或者;所述查詢請求包括鼠標點擊事件;
12、確定在加載所述瓦片數(shù)據(jù)后的所述地球可視化平臺中觸發(fā)的所述鼠標點擊事件,以指示所述地球可視化平臺將所述鼠標點擊事件所指示的圖層信息、邊框信息發(fā)送給所述文檔導向數(shù)據(jù)庫;
13、根據(jù)所述圖層信息、邊框信息在所述文檔導向數(shù)據(jù)庫中進行空間檢索,并在所述地球可視化平臺中展示所述查詢結果。
14、在其中一個實施例中,當存在多個目標地區(qū);所述至少基于所述建圖數(shù)據(jù)確定邊框信息,并根據(jù)所述邊框信息配置所述建圖數(shù)據(jù)相匹配的圖層數(shù)據(jù),包括:
15、確定所述多個目標地區(qū)相對應的多個建圖數(shù)據(jù);
16、至少基于每個建圖數(shù)據(jù)確定的邊框信息和與每個建圖數(shù)據(jù)相匹配的圖層樣式,配置每個所述建圖數(shù)據(jù)相匹配的圖層數(shù)據(jù);
17、將每個所述建圖數(shù)據(jù)相匹配的圖層數(shù)據(jù)進行疊加,得到圖層組。
18、在其中一個實施例中,當所述圖層樣式包括多種圖層樣式;所述至少基于所述建圖數(shù)據(jù)確定邊框信息,并根據(jù)所述邊框信息配置所述建圖數(shù)據(jù)相匹配的圖層數(shù)據(jù),包括:
19、創(chuàng)建與每種圖層樣式相匹配的初始圖層;
20、至少基于每個建圖數(shù)據(jù)確定的邊框信息、與每個建圖數(shù)據(jù)相匹配的圖層樣式,在所述與每種圖層樣式相匹配的初始圖層中配置圖層數(shù)據(jù);
21、將配置的圖層數(shù)據(jù)進行疊加,得到圖層組。
22、在其中一個實施例中,所述根據(jù)所述查詢請求所指示的圖層信息、邊框信息中的至少一種,在所述文檔導向數(shù)據(jù)庫中進行空間檢索,得到查詢結果,包括:
23、確定所述圖層組中圖層數(shù)據(jù)的疊加順序;
24、按照所述疊加順序,并根據(jù)所述查詢請求所指示的圖層信息、邊框信息中的至少一種,在所述文檔導向數(shù)據(jù)庫中依次進行空間檢索,得到每個圖層數(shù)據(jù)相匹配的查詢結果。
25、在其中一個實施例中,所述方法還包括:
26、響應于數(shù)據(jù)更新請求,根據(jù)所述數(shù)據(jù)更新請求所指示的建圖更新數(shù)據(jù)在所述空間數(shù)據(jù)庫中進行更新;
27、將所述空間數(shù)據(jù)庫中更新后的數(shù)據(jù)映射到地圖編輯器中;
28、根據(jù)所述數(shù)據(jù)更新請求所指示的圖層樣式更新數(shù)據(jù),更新所述圖層數(shù)據(jù);
29、所述按照預設的切片條件對所述圖層數(shù)據(jù)進行數(shù)據(jù)切片,得到瓦片數(shù)據(jù),包括:
30、按照預設的切片條件對更新后的所述圖層數(shù)據(jù)重新進行數(shù)據(jù)切片,得到瓦片數(shù)據(jù)。
31、第二方面,本公開還提供了一種數(shù)據(jù)查詢裝置。所述裝置包括:
32、數(shù)據(jù)獲取模塊,用于獲取目標地區(qū)的建圖數(shù)據(jù),將所述建圖數(shù)據(jù)按照空間數(shù)據(jù)庫中空間要素字段存入所述空間數(shù)據(jù)庫中;
33、數(shù)據(jù)映射模塊,用于將所述空間數(shù)據(jù)庫中的所述建圖數(shù)據(jù)映射到地圖編輯器中;
34、圖層數(shù)據(jù)確定模塊,用于至少基于所述建圖數(shù)據(jù)確定邊框信息,并根據(jù)所述邊框信息配置所述建圖數(shù)據(jù)相匹配的圖層數(shù)據(jù);
35、切片模塊,用于按照預設的切片條件對所述圖層數(shù)據(jù)進行數(shù)據(jù)切片,得到瓦片數(shù)據(jù);
36、存儲模塊,用于將所述瓦片數(shù)據(jù)存儲到文檔導向數(shù)據(jù)庫中,并在所述文檔導向數(shù)據(jù)庫中設置所述瓦片數(shù)據(jù)的版本信息;
37、查詢模塊,用于響應于接收到查詢請求,根據(jù)所述查詢請求所指示的查詢信息在所述文檔導向數(shù)據(jù)庫中進行查詢,得到查詢結果。
38、第三方面,本公開還提供了一種計算機設備。所述計算機設備包括存儲器和處理器,所述存儲器存儲有計算機程序,所述處理器執(zhí)行所述計算機程序時實現(xiàn)上述任一方法實施例中的步驟。
39、第四方面,本公開還提供了一種計算機可讀存儲介質(zhì)。所述計算機可讀存儲介質(zhì),其上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)上述任一方法實施例中的步驟。
40、第五方面,本公開還提供了一種計算機程序產(chǎn)品。所述計算機程序產(chǎn)品,包括計算機程序,該計算機程序被處理器執(zhí)行時實現(xiàn)上述任一方法實施例中的步驟。
41、上述各實施例中,通過獲取目標地區(qū)的建圖數(shù)據(jù),將建圖數(shù)據(jù)按照空間要素字段存儲空間數(shù)據(jù)庫,能夠保證存儲的數(shù)據(jù)格式滿足要求,方便后續(xù)查詢。將建圖數(shù)據(jù)映射到地圖編輯器中,后續(xù)使用地圖編輯器進行處理,能夠便于發(fā)布和編輯,并且能夠定義圖層數(shù)據(jù)。至少根據(jù)建圖數(shù)據(jù)來確定邊框信息,并配置根據(jù)所述邊框信息配置所述建圖數(shù)據(jù)相匹配的圖層數(shù)據(jù),然后對配置好的圖層數(shù)據(jù)進行數(shù)據(jù)切片,得到瓦片數(shù)據(jù),能夠在請求某個特定區(qū)域的地圖時,在數(shù)據(jù)量較大時,服務可以快速提供這些切片,以提高顯示速度和用戶體驗。最后將所述瓦片數(shù)據(jù)存儲到文檔導向數(shù)據(jù)庫中,并在所述文檔導向數(shù)據(jù)庫中設置所述瓦片數(shù)據(jù)的版本信息。能夠在文檔導向數(shù)據(jù)庫更好的管理瓦片數(shù)據(jù),方便數(shù)據(jù)變更和版本管理。響應于接收到查詢請求,根據(jù)所述查詢請求所指示的查詢信息在所述文檔導向數(shù)據(jù)庫中進行查詢,得到查詢結果,能夠更好的支持屬性查詢。