999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Web的地下管網溯源分析算法研究

2021-04-29 11:18:34董萬虎
地理空間信息 2021年4期
關鍵詞:分析

董萬虎

(1.浙江省測繪科學技術研究院,浙江 杭州 310030)

隨著我國科技與經濟的不斷發展,城市人口和規模不斷擴大,人們日常生活和生產所產生的廢水污水也日益增多,同時地下污水管網錯綜復雜,管理稍有不慎,就會給環境帶來巨大的破壞[1]。為了保護自然環境,對城市排水系統進行強化,對城市生活和工業廢水排放進行管理勢在必行[2]。各級政府在地下污水管網建設方面投入了巨大的資金,鋪設地下污水管網,建設綜合地下管線系統,在各主要節點安裝各類管線監測設備,利用信息化手段實時準確的監測城市“大靜脈”的各項指標狀態。

城市管線管理系統應用了包括GIS 地圖、物聯網、云計算、在線監測、工業自動化控制、網絡通信及排水管網模擬在內的復雜系統[3],目的是建立起了一個能夠長期、有效、動態管理排水管網大量空間數據和屬性數據的基礎平臺,并融合排水管網智慧化管理過程中所需的各種業務數據、監測數據和分析數據,為政府城市管理和規劃提供決策支持[4]。本文主要是針對排水管網綜合管理系統的溯源分析功能方面進行研究,通過設計后臺高性能并進行算法,實現快速分析出當前管點可能來源區域,有助于下管網管理人員能夠快速排查和定位異常指標位置,并進行異常處理,從而提高城市污水管網的管理效率和水平[5]。

1 技術思路

針對溯源分析功能設計要求,主要從后臺分析算法和前端渲染算法輸出進行逐一闡述,已達到溯源分析和展示要求。本文主要整體技術思路如圖1 所示。

管網數據一般在關系數據庫中進行存儲和管理,考慮到管網數據變更周期較長,為了提高分析管網數據存取效率,將管網需要分析的管網數據緩存到Redis高速緩存中,方便后臺分析運算單元進行存取[6]。后臺分析運算單元采用.NetCore3.1 進行編寫,主要任務是響應Web 服務器的運算請求。服務根據管網點號,計算所有可能源頭的管網數據,并進行合并優化處理后返回給Web 服務器。本文采用IIS 7.0 作為Web 服務器,用于響應客戶端Web 請求,前端瀏覽器管網顯示采用Leaflet.js 組件進行渲染,已達到動態顯示效果。

圖1 整體技術思路圖

2 設計實現

2.1 數據結構設計

管網數據一般來源于日常的管線探測和測量成果數據。主要數據結構應該兼容管線探測數據結構標準[3],由于主要內容是研究管線的溯源分析算法,故只選取部分涉及計算的字段,主要管線數據表結構如表1 所示。

表1 管線數據結構(WS-LINE)

2.2 后臺算法設計

根據上文的表結構很明確地標記了各個管網的首尾連換編號,根據分析點的管點編號,并利用SQL Server 自帶的遞歸SQL 存儲算法可以便捷地查找出對應的所有相連點編號。關鍵存儲過程代碼如下:

以上代碼雖然簡單,但執行效率普遍較低,當管線數據線段在3 000 條以下時,采用該算法進行溯源管點查詢比較方便。但當數據量大于10 000,或者查詢溯源結果集大于2 000 個節點以上時,只想效率較低。實際測試結果表明,當源節點在2 000 個節點以上時,查詢時間高達200 多秒,這個查詢延遲時間,是遠遠不能滿足我們日常業務使用需求的,所以必須采用更加高效的算法進行查詢和計算。

分析以上利用SQL 存儲過程算法機制,不難發現性能瓶頸:其一是數據庫的頻繁打開和關閉連換損耗了部分的性能;其二是存儲過程的SQL 語句內部的計算方法是一種遞歸算法,也是導致我們運算慢的主要原因。當管線數據量不斷增加時運算時間大幅度增加。為了避免以上兩個性能瓶頸,本文主要采用了“數據緩存+后臺運算”的方式進行解決,利用Redis高性能緩存(以下簡稱緩存)中間件用來存儲數據庫里的管線數據,以減少數據庫頻繁打開和關閉的性能損耗,提高讀取效率。后臺運算思路是利用循環算法,對管點緩存數據進行遍歷查詢,主要算法設計步驟如下:

1)定義一個結果列表集合對象(Dictionary),以下簡稱結果集,用于按照各個分支存儲各個計算結果。

2)首先根據管點編號在緩存列表中取出第一個管點的起點編號(SPoint),并將管點對象存儲到以“0”為關鍵字的隊列中,“0”隊列將作為主干管線進行存儲,其他1,…,n關鍵字作為分支隊列進行管理,同一隊列中的管點首尾相連且管徑大小一致。結果集存儲結構如圖2 所示。

3)根據起點編號(SPoint)到緩存列表中查找對應的終點編號(EPoint)和SPoint 相等的所有管點集合(以下稱nextPoints)。

4)換下來循環處理nextPoints 內的所有管點數據。首先刪除緩存中的nextPoints 管點數據,主要是為了減少后一節點的運算壓力。其次,在結果集中查找每一個隊列最后一個節點是否與當前節點相連換。如果相連換且管徑一致,那么將該節點加入該隊列中;如果不一致那么將該管點作為新的管點隊列存入到結果集中。

5)分別取出結果集最后一個節點的編號,根據以上步驟循環啟動不同線程進行并行運算,直到找不到下一個節點為止。

在整個算法運算過程中,也充分利用.NetCore 并行計算Parallel 類的特性,最大限度的利用CPU 多核心并行計算優勢,以最快的速度找出所有關聯的管點數據,大大提高了運算效率。當后端完成所有管點的運算后,將計算結果以JSON 格式返回到前端進行渲染顯示。

圖2 運算結果集存儲結構

2.3 前端技術實現

前端采用Leaflet.js 作為地圖展示框架,并通過L.polyline.antPath 插件進行動態展示。同時,根據后臺運算結果按照管徑大小進行分批次不同樣式進行展示,主要渲染原則是:不同管徑以不同顏色和不同線條寬度進行渲染展示,管徑越大渲染線條越粗。

為了前端地圖渲染插件的展示要求,數據必須處理成標準的JSON 格式,具體JSON 格式要求如下:

最終前端JS 頁面渲染效果如圖3 所示。

圖3 前端JS 渲染圖

3 結 語

以管線地理空間數據為基礎,利用Redis 高速緩存和.NetCore 的并行運算功能,實現了高效的管線溯源分析算法,分析運算性能得到了顯著提升。根據實際管網數據(10 萬條記錄)進行對比測試,采用傳統算法統計分析了所有管點的溯源分析平均時間在115 s 左右,而采用本文的算法分析了所有管點溯源分析平均時間在0.9 s 左右,分析運算性能提升了100 多倍。在當前城市人口和規模不斷擴大,城市管網錯綜復雜,維護管理成本日益增加的背景下[7],本文的研究成果算法在綜合管線管理、污染源查詢和市政管網管理等方面具有一定的應用價值。

猜你喜歡
分析
禽大腸桿菌病的分析、診斷和防治
隱蔽失效適航要求符合性驗證分析
電力系統不平衡分析
電子制作(2018年18期)2018-11-14 01:48:24
電力系統及其自動化發展趨勢分析
經濟危機下的均衡與非均衡分析
對計劃生育必要性以及其貫徹實施的分析
現代農業(2016年5期)2016-02-28 18:42:46
GB/T 7714-2015 與GB/T 7714-2005對比分析
出版與印刷(2016年3期)2016-02-02 01:20:11
中西醫結合治療抑郁癥100例分析
偽造有價證券罪立法比較分析
在線教育與MOOC的比較分析
主站蜘蛛池模板: 亚洲天堂在线视频| 国产精品漂亮美女在线观看| 亚洲激情区| 老熟妇喷水一区二区三区| 高清国产在线| 天天做天天爱夜夜爽毛片毛片| 91色老久久精品偷偷蜜臀| 看你懂的巨臀中文字幕一区二区| 国产成人91精品| 亚洲精品老司机| 婷婷亚洲视频| 99这里只有精品免费视频| 国产精品原创不卡在线| 亚洲国产精品美女| 亚洲欧洲一区二区三区| 久996视频精品免费观看| 亚洲精品无码成人片在线观看| 久久无码高潮喷水| 人人91人人澡人人妻人人爽| 黄色网址手机国内免费在线观看| 91欧美亚洲国产五月天| 日韩无码真实干出血视频| 日韩中文精品亚洲第三区| 亚洲精品片911| 毛片在线播放网址| 久热re国产手机在线观看| 无码免费视频| 国产香蕉在线视频| 99视频全部免费| 成人日韩欧美| 第九色区aⅴ天堂久久香| 亚洲中文字幕23页在线| 99久久精品视香蕉蕉| 亚洲欧美成aⅴ人在线观看| 女人天堂av免费| 国产91视频观看| 中文字幕欧美日韩| 成人毛片免费在线观看| 亚洲另类第一页| 亚洲成人精品| 99这里精品| 亚洲bt欧美bt精品| 午夜日韩久久影院| 亚洲午夜国产精品无卡| 色综合热无码热国产| lhav亚洲精品| 五月天久久综合| 91麻豆国产视频| a毛片在线播放| 性网站在线观看| 在线观看视频一区二区| 久久不卡精品| 精品国产网| 亚洲综合经典在线一区二区| 视频二区中文无码| 亚洲精品第一页不卡| 91区国产福利在线观看午夜| 国产精品毛片在线直播完整版| 超清人妻系列无码专区| 日韩无码视频专区| 亚洲成人一区在线| 69国产精品视频免费| 日韩免费成人| 女人av社区男人的天堂| 日韩中文精品亚洲第三区| 精品国产香蕉伊思人在线| 国产电话自拍伊人| 国产香蕉一区二区在线网站| 国产v精品成人免费视频71pao| 黄色片中文字幕| 亚洲IV视频免费在线光看| 日韩精品久久无码中文字幕色欲| 国产网友愉拍精品视频| 男女性色大片免费网站| 国产精品蜜芽在线观看| 欧美丝袜高跟鞋一区二区| 激情综合图区| 搞黄网站免费观看| 国产欧美网站| 国产在线一区视频| 青青操国产| 国产黄在线观看|