[發明專利]基于多個數據庫的數據查詢方法及裝置在審
| 申請號: | 201410670879.0 | 申請日: | 2014-11-21 |
| 公開(公告)號: | CN105677681A | 公開(公告)日: | 2016-06-15 |
| 發明(設計)人: | 李忠浩;王慶磊;張國波 | 申請(專利權)人: | 北京神州泰岳軟件股份有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京弘權知識產權代理事務所(普通合伙) 11363 | 代理人: | 逯長明;許偉群 |
| 地址: | 100107 北京市海淀區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 數據庫 數據 查詢 方法 裝置 | ||
技術領域
本發明涉及計算機技術領域,尤其涉及一種基于多個數據庫的數據查詢方法及裝置。
背景技術
大數據(BigData)是指無法用現有的軟件工具提取、存儲、搜索、共享、分析和處理 的海量的、復雜的數據集合,可以包括多個數據庫,例如Hadoop、內存數據庫、關系數據 庫等等。目前,一般采用數據共享平臺或者數據開放平臺對外開放超文本傳送協議 (Hypertexttransferprotocol,HTTP)應用程序編程接口(ApplicationProgramming Interface,API),從而實現用戶查詢多個數據庫中的數據。
通常,每個API接口都對應特定參數,API接口接收到用戶的請求后,根據該請求中攜 帶的特定參數進行數據查詢,將查詢到的數據返回給用戶,由于一個API只能提供一部分 特定需求,若用戶需要的數據存在于多個數據庫中,就需要組合眾多API接口聯合實現數 據查詢。例如,公司的人力資源主管要查詢某個員工的個人信息,個人信息包括工作簡歷、 發表論文等等,若工作簡歷、發表論文等等信息保存在不同的數據庫中,那么該人力資源 主管只能分別通過這些數據庫對應的API接口才能獲取到該員工的個人信息。可見,若用 戶需要的數據存在于多個數據庫中,用戶需要多次請求才能夠獲取到需要的數據,用戶的 操作步驟非常繁瑣,查詢數據的效率也非常低。
發明內容
本發明實施例提供一種基于多個數據庫的數據查詢,用以解決現有技術中存在的用戶 的操作步驟非常繁瑣,查詢數據的效率也非常低的問題。
根據本發明實施例例,提供一種基于多個數據庫的數據查詢方法,包括:
解析用戶發送的結構化查詢語言SQL語句,得到所述SQL語句中包括的關鍵表,所述 SQL語句用于請求從所述多個數據庫中查詢所述用戶需要的數據;
對所述用戶進行鑒權;
若所述用戶通過鑒權,確定每個所述關鍵表所在的數據庫;
分別從每個所述關鍵表所在的數據庫中獲取所述SQL語句請求的數據;
合并獲取的數據后發送給所述用戶。
具體的,解析用戶發送的SQL語句,得到所述SQL語句中包括的關鍵表,具體包括:
提取所述SQL語句中包括的關鍵字;
判斷所述關鍵字的拼寫以及所述關鍵字之間的邏輯關系是否正確;
若所述關鍵字的拼寫以及所述關鍵字之間的邏輯關系正確,則根據所述關鍵字和對應 的關鍵元素建立所述SQL語句對應的語法樹,獲取所述語法樹中的關鍵表。
可選的,所述方法還包括:
按照SQL語句的標準格式調整所述SQL語句;
將調整后的所述SQL語句發送給所述用戶。
具體的,對所述用戶進行鑒權,具體包括:
獲取用戶與關鍵表的對應關系,若所述對應關系中對應保存有所述用戶和每個所述關 鍵表,則確定所述用戶通過鑒權;或者,
獲取預先設置的白名單,若所述白名單中保存有所述用戶,則確定所述用戶通過鑒權。
具體的,確定每個所述關鍵表所在的數據庫,具體包括:
獲取預先保存的關鍵表描述信息;
從所述關鍵表描述信息中獲取每個所述關鍵表所在的數據庫;
分別從每個所述關鍵表所在的數據庫中獲取所述SQL語句請求的數據,具體包括:
確定每個所述關鍵表所在的數據庫的類型;
將所述SQL語句翻譯成每個所述關鍵表所在的數據庫的類型對應的標準語句;
使用翻譯后的標準語句分別從對應的數據庫中獲取所述SQL語句請求的數據。
具體的,合并獲取的數據后發送給所述用戶,具體包括:
緩存獲取的所述SQL語句請求的數據;
采用流計算方式合并緩存的數據;
將合并后的數據發送給所述用戶。
根據本發明實施例,還提供一種基于多個數據庫的數據查詢裝置,包括:
解析單元,用于解析用戶發送的結構化查詢語言SQL語句,得到所述SQL語句中包括 的關鍵表,所述SQL語句用于請求從所述多個數據庫中查詢所述用戶需要的數據;
鑒權單元,用于對所述用戶進行鑒權;
確定單元,用于若所述用戶通過鑒權,確定每個所述關鍵表所在的數據庫;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京神州泰岳軟件股份有限公司,未經北京神州泰岳軟件股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410670879.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:車庫外墻后澆帶封閉蓋板
- 下一篇:一種采用旋流分離的雨水截污井
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





