[發(fā)明專利]一種寫入半結(jié)構(gòu)化數(shù)據(jù)的方法和分布式NewSQL數(shù)據(jù)庫系統(tǒng)有效
| 申請?zhí)枺?/td> | 201710580754.2 | 申請日: | 2017-07-17 |
| 公開(公告)號: | CN107402991B | 公開(公告)日: | 2020-05-19 |
| 發(fā)明(設(shè)計)人: | 晉彤 | 申請(專利權(quán))人: | 云潤大數(shù)據(jù)服務(wù)有限公司 |
| 主分類號: | G06F16/21 | 分類號: | G06F16/21;G06F16/27 |
| 代理公司: | 廣州三環(huán)專利商標(biāo)代理有限公司 44202 | 代理人: | 梁順宜;郝傳鑫 |
| 地址: | 510000 廣東省廣州市天*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 寫入 結(jié)構(gòu) 數(shù)據(jù) 方法 分布式 newsql 數(shù)據(jù)庫 系統(tǒng) | ||
1.一種寫入半結(jié)構(gòu)化數(shù)據(jù)的方法,其特征在于,適用于分布式NewSQL數(shù)據(jù)庫系統(tǒng),包括:
以JDCB/ODBC的接口方式接入用戶請求,其中,所述用戶請求包括需要寫入的JSON數(shù)據(jù);
解析所述用戶請求,編譯以及生成對應(yīng)的執(zhí)行計劃;
根據(jù)執(zhí)行計劃,將所述JSON數(shù)據(jù)作為普通字符串類型整體作為一個數(shù)據(jù)字段寫入數(shù)據(jù)表;
在所述JSON數(shù)據(jù)寫入數(shù)據(jù)表時,將所述JSON數(shù)據(jù)作為一個嵌套的類型生成倒排索引形式的多個索引數(shù)據(jù),并將多個所述索引數(shù)據(jù)寫入到索引表;
將所述JSON數(shù)據(jù)完成寫入的處理結(jié)果返回用戶。
2.如權(quán)利要求1所述的寫入半結(jié)構(gòu)化數(shù)據(jù)的方法,其特征在于,還包括:將所述用戶請求轉(zhuǎn)化SQL語句形式的SQL請求。
3.如權(quán)利要求2所述的寫入半結(jié)構(gòu)化數(shù)據(jù)的方法,其特征在于,所述解析所述用戶請求,編譯以及生成對應(yīng)的執(zhí)行計劃包括:
判斷共享緩存池中是否存在與所述SQL請求相對應(yīng)的預(yù)存SQL語句,若是,則輸出相對應(yīng)的所述預(yù)存SQL語句對應(yīng)的執(zhí)行計劃,若否,則,
對所述SQL請求進(jìn)行語法檢查,若語法錯誤返回錯誤信息給用戶,否則,
對所述SQL請求進(jìn)行語義檢查,若語義錯誤返回錯誤信息給用戶,否則,
對所述SQL請求進(jìn)行視圖以及表達(dá)式轉(zhuǎn)換,獲得對應(yīng)的轉(zhuǎn)化結(jié)果;
根據(jù)所述轉(zhuǎn)換結(jié)果選擇優(yōu)化器,獲得對應(yīng)的優(yōu)化器選擇結(jié)果;
根據(jù)所述優(yōu)化器選擇結(jié)果選擇對應(yīng)的數(shù)據(jù)連接方式以及連接順序;
根據(jù)連接方式和連接順序選擇搜索的路徑;
根據(jù)搜索路徑生成執(zhí)行計劃,并輸出執(zhí)行計劃。
4.一種分布式NewSQL數(shù)據(jù)庫系統(tǒng),其特征在于,包括:
JDCB/ODBC接口單元,用于與用戶進(jìn)行交互操作,包括接收用戶請求,返回處理結(jié)果;其中,所述用戶請求包括需要寫入的JSON數(shù)據(jù);所述處理結(jié)果為JSON數(shù)據(jù)已寫入的處理結(jié)果;
master單元,用于接入JDCB/ODBC接口單元所接入的用戶請求,并協(xié)調(diào)多個處理器之間的數(shù)據(jù)通訊以及管理整體流程,并將所述用戶請求優(yōu)先發(fā)送給SQLPlaner單元;master單元還用于將JSON數(shù)據(jù)已寫入的處理結(jié)果返回JDCB/ODBC接口單元;
SQLPlaner單元,用于解析所述用戶請求,根據(jù)所述用戶請求編譯以及定制執(zhí)行計劃;
worker單元,用于并行地執(zhí)行所述計劃,將所述用戶請求的所述JSON數(shù)據(jù)寫入Hbase單元的數(shù)據(jù)表;還用于將所述Hbase單元的處理結(jié)果返回至所述master單元;
Hbase單元,用于儲存所述數(shù)據(jù)表和索引表,其中,Hbase單元的底層增加JSON類型數(shù)據(jù),所述JSON數(shù)據(jù)整體存儲在底層HFile中;
所述Hbase單元還包括coprocessor模塊,用于在所述JSON數(shù)據(jù)寫入數(shù)據(jù)表時,將待寫入的JSON數(shù)據(jù)生成倒排索引形式的多個索引數(shù)據(jù),并將多個所述索引數(shù)據(jù)寫入到索引表;其中,所述數(shù)據(jù)表和所述索引表儲存于所述Hbase單元;
分布式事務(wù)管理器,用于當(dāng)所述worker單元執(zhí)行計劃涉及事務(wù)時,協(xié)調(diào)多方完成分布式事務(wù)管理。
5.如權(quán)利要求4所述的一種分布式NewSQL數(shù)據(jù)庫系統(tǒng),其特征在于,JDCB/ODBC接口單元用于將所述用戶請求轉(zhuǎn)化SQL語句形式的SQL請求。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于云潤大數(shù)據(jù)服務(wù)有限公司,未經(jīng)云潤大數(shù)據(jù)服務(wù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710580754.2/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 卡片結(jié)構(gòu)、插座結(jié)構(gòu)及其組合結(jié)構(gòu)
- 鋼結(jié)構(gòu)平臺結(jié)構(gòu)
- 鋼結(jié)構(gòu)支撐結(jié)構(gòu)
- 鋼結(jié)構(gòu)支撐結(jié)構(gòu)
- 單元結(jié)構(gòu)、結(jié)構(gòu)部件和夾層結(jié)構(gòu)
- 鋼結(jié)構(gòu)扶梯結(jié)構(gòu)
- 鋼結(jié)構(gòu)隔墻結(jié)構(gòu)
- 鋼結(jié)構(gòu)連接結(jié)構(gòu)
- 螺紋結(jié)構(gòu)、螺孔結(jié)構(gòu)、機(jī)械結(jié)構(gòu)和光學(xué)結(jié)構(gòu)
- 螺紋結(jié)構(gòu)、螺孔結(jié)構(gòu)、機(jī)械結(jié)構(gòu)和光學(xué)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





