[發明專利]數據查詢方法、裝置、電子設備及存儲介質在審
| 申請號: | 202010593984.4 | 申請日: | 2020-06-24 |
| 公開(公告)號: | CN111782923A | 公開(公告)日: | 2020-10-16 |
| 發明(設計)人: | 阮謝全;田輝 | 申請(專利權)人: | 平安科技(深圳)有限公司 |
| 主分類號: | G06F16/9532 | 分類號: | G06F16/9532 |
| 代理公司: | 深圳市沃德知識產權代理事務所(普通合伙) 44347 | 代理人: | 高杰;于志光 |
| 地址: | 518000 廣東省深圳市福田區福*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據 查詢 方法 裝置 電子設備 存儲 介質 | ||
1.一種數據查詢方法,應用于服務器集群,所述服務器集群包括多臺查詢服務器及Nginx服務器,其特征在于,該方法包括:
所述Nginx服務器接收用戶通過客戶端發出的數據查詢請求,所述數據查詢請求攜帶加密形式的待查詢字段、接口入參及驗簽數據;
所述Nginx服務器對所述數據查詢請求進行限流驗證,當判斷所述數據查詢請求限流驗證通過時,基于負載均衡算法從所述多臺查詢服務器中確定與所述數據查詢請求對應的目標查詢服務器,將所述數據查詢請求分配至所述目標查詢服務器;
當所述目標查詢服務器接收到所述數據查詢請求,解析所述加密形式的待查詢字段、接口入參及驗簽數據,基于解析結果及預設校驗規則對所述數據查詢請求進行校驗;
當所述數據查詢請求校驗通過時,基于預先管理的元數據將所述數據查詢請求分解為多個子任務,分別將所述多個子任務的參數填充進sql查詢語句模板,生成所述多個子任務對應的sql查詢語句;
將所述多個子任務對應的sql查詢語句轉換為所述多個子任務對應的數據源執行引擎可識別的接口函數,采用多線程將所述接口函數分發到對應的數據源執行引擎中,以供所述數據源執行引擎多線程并行調用所述接口函數查詢數據;及
接收所述數據源執行引擎返回的所述多個子任務對應的數據查詢子結果,將所述數據查詢子結果寫入結果集,向所述用戶返回并展示所述查詢結果集。
2.根據權利要求1所述的數據查詢方法,其特征在于,所述對所述數據查詢請求進行限流驗證,包括:
確定所述數據查詢請求對應的調用方,獲取所述調用方的實時請求數,判斷所述調用方的實時請求數是否小于或等于第一預設閾值;及
當所述調用方的實時請求數小于或等于第一預設閾值時,獲取所述所述調用方對應的接口的實時請求數,當所述接口的實時請求數小于或等于第二預設閾值時,判斷所述數據查詢請求限流驗證通過。
3.根據權利要求2所述的數據查詢方法,其特征在于,所述對所述數據查詢請求進行限流驗證,還包括:
當所述調用方的實時請求數大于第一預設閾值、小于或等于第三預設閾值,且,所述接口的實時請求數大于所述第二預設閾值、小于或等于第四預設閾值時,將所述數據查詢請求寫入緩沖隊列中;或
當所述調用方的實時請求數大于第三預設閾值,或,當所述接口的實時請求數大于第四預設閾值時,判斷所述數據查詢請求限流驗證失敗。
4.根據權利要求1所述的數據查詢方法,其特征在于,所述基于解析結果及預設校驗規則對所述數據查詢請求進行校驗,包括:
基于所述元數據確定所述待查詢字段對應的表名,確定所述數據查詢請求中所述調用方對應的表名,并獲取預先設置的調用方與表格權限的映射數據,判斷所述調用方是否通過權限校驗;
獲取所述接口入參,檢驗所述接口入參中是否包含所述接口的必填參數,根據檢驗結果判斷所述數據查詢請求是否通過參數校驗;及
當所述數據查詢請求同時通過權限校驗及參數檢驗時,判斷所述數據查詢請求通過校驗。
5.根據權利要求1中所述的數據查詢方法,其特征在于,所述基于預先管理的元數據將所述數據查詢請求分解為多個子任務,包括:
當所述數據查詢請求包括多個待查詢字段時,基于所述元數據分別確定每個所述待查詢字段所對應的表名及數據源;及
根據所述待查詢字段對應的數據源將所述數據查詢請求分解為多個子任務。
6.根據權利要求1所述的數據查詢方法,其特征在于,所述負載均衡算法包括:最小連接數法、輪詢法、加權輪詢法、隨機法、加權隨機法或一致性哈希法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于平安科技(深圳)有限公司,未經平安科技(深圳)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010593984.4/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種燈具光源的控制系統
- 下一篇:一種高溫陶瓷阻斷防火門的膠黏劑
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





