[發明專利]一種基于精準定位和快速可定制的GRIB數據提取方法在審
| 申請號: | 202011427350.8 | 申請日: | 2020-12-09 |
| 公開(公告)號: | CN112579541A | 公開(公告)日: | 2021-03-30 |
| 發明(設計)人: | 李永生;張金標;楊玉紅;鄭艷萍 | 申請(專利權)人: | 李永生 |
| 主分類號: | G06F16/16 | 分類號: | G06F16/16;G06F16/174 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 510000 廣*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 精準 定位 快速 定制 grib 數據 提取 方法 | ||
本發明公開了一種基于精準定位和快速可定制的GRIB數據提取方法。本發明能夠實現對GRIB數據塊的精準定位,節省現有方法中數據塊查找所消耗的時間,從而提高數據提取速度;實現GRIB數據提取的快速可定制,按需篩選業務所需的維度數據,減少提取業務不需要的數據的寫入和傳輸,提高數據提取的效率,減少計算和存儲資源的浪費。
技術領域
本發明涉及GRIB數據提取技術領域,具體為一種基于精準定位和快速可定制的GRIB數據提取方法。
背景技術
GRIB碼是世界氣象組織(WMO)推薦使用的與計算機操作系統無關的壓縮的二進制編碼,是一種用于交換和存儲規則分布數據的二進制文件格式,現行的GRIB碼版本有GRIB1和GRIB2兩種格式,具有多維數據存儲方便、壓縮比高、支持多種壓縮方式、擴展性強等特點,尤其擅長大容量多維度的非結構化數據的交換,廣泛應用于數值天氣預報產品、海洋水文等數據的存儲和交換。同時以GRIB碼存儲和交換的數據通常應用于以融合分析應用為主的數據應用領域,比如氣象、海洋和水文等的預報、預測和預警應用,需要對GRIB編碼的數據進行解碼,包括解壓縮、數據格式轉換等數據解析等,因此在這些領域大容量非結構化數據的快速處理技術是核心能力之一。
目前國內針對GRIB碼進行解碼工具有兩種,第一種是wgrib命令行工具,可以通過命令行的方式通過不同的參數組合對GRIB數據進行提取操作。第二種方法是的面向編程語言的GRIB API,可以通過編程使用get和set鍵值操作提取數據,其中第一種方法在國內應用比較廣泛,使用上述第一種方法基本能夠滿足數據提取的業務應用需求,但其為對整個數據塊的提取,可能會導致提取業務不需要的數據也需要在提取流程中流轉,使得數據提取效率不高,空間資源消耗大等問題。
發明內容
(一)解決的技術問題
針對現有技術的不足,本發明提供了一種基于精準定位和快速可定制的GRIB數據提取方法,能夠解決上述技術問題。
(二)技術方案
為解決上述技術問題,本發明提供如下技術方案:一種基于精準定位和快速可定制的GRIB數據提取方法,包括以下步驟:
步驟S1:獲取GRIB文件內各個GRIB數據塊的元數據信息,以獲得元數據體,其中元數據信息包括GRIB數據塊的起始位置;
步驟S2:將各個GRIB數據塊進行解碼處理為二進制數據,以獲得實體數據體;
步驟S3:根據元數據體和實體數據體的對應關系,對元數據體進行數據整理以確定GRIB數據塊的起始位置;
步驟S4:在起始位置確定后,根據數據提取所需的GRIB屬性信息計算數據的偏移量,進而定位GRIB數據塊在實體數據體的位置,進一步根據數據提取所需的空間范圍要求對定位的GRIB數據塊進行數據截取并提取所需的GRIB維度對應的數據。
優選的,基于精準定位和快速可定制的GRIB數據提取方法為采用基于文件驅動的多線程處理方式。
優選的,步驟S2中在將各個GRIB數據塊進行解碼處理為二進制數據之前還包括:過濾GRIB數據塊的元數據信息。
優選的,步驟S2的解碼處理具體包括解壓縮以及解碼。
優選的,元數據信息還包括GRIB數據塊的結束位置。
優選的,實體數據體存儲的順序與元數據體存儲的順序為一一對應。
優選的,步驟S4中對定位的GRIB數據塊進行數據截取具體包括從經度以及維度兩個方向上進行數據截取。
優選的,GRIB屬性信息包括經緯度范圍以及空間分辨率。
優選的,GRIB維度包括數值預報產品的要素種類、數值預報產品的生成時間以及預報時效。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于李永生,未經李永生許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011427350.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種智慧交通信息處理方法、裝置及服務器
- 下一篇:一種帶有溫控結構的擺頭





