五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

一起探索內(nèi)存數(shù)據(jù)庫中代碼生成的實現(xiàn)方法

2022-07-15 11:42 作者:今晨資訊  | 我要投稿


根據(jù)軟件基本方法:程序 = 數(shù)據(jù)結(jié)構(gòu) + 算法,那么依托代碼生成來提升內(nèi)存數(shù)據(jù)庫的查詢性能十分可行,這篇內(nèi)容想通過一個實例來為大家介紹如何依托代碼生成來提升查詢性能,我想舉一個RapidsDB的例子。

?

首先看代碼生成的架構(gòu)。代碼生成使用專門的編程語言,選用這門語言的原因是使用簡單、管理嚴(yán)密。SQL操作符樹將會被直接轉(zhuǎn)化為抽象語法樹,以化解在查詢編譯時對昂貴的解析和語義解析的需求。

?

除了語言的簡單性以外,其還受益于將許多關(guān)系操作作為原語公開,如“索引查找”和標(biāo)量操作,如“BIGINT加法”。這些操作符是與服務(wù)器一起靜態(tài)編譯的,可以很容易地組合成查詢。這樣,許多編譯工作就可以提前完成。

?

接下來,再來看數(shù)據(jù)庫字節(jié)編碼。編譯查詢時,RapidsDB首先展開成緊湊的格式,也可以稱為RapidsDB字節(jié)碼。這種格式的執(zhí)行計劃可以輕易的進(jìn)行序列化、解釋或轉(zhuǎn)換為LLVM位代碼,以便編譯成x86_64機(jī)器代碼。這種直接解釋字節(jié)碼基本消除了第一次運(yùn)行查詢的成本,但會影響查詢執(zhí)行的性能:

?


在這個例子中,第一個請求沒有額外的延遲產(chǎn)生,因為該查詢被解釋了。

?


上面例子的第一個請求的額外延遲是代碼生成的結(jié)果。但是,后續(xù)的請求速度是上門解釋執(zhí)行的速度的兩倍。

?

在RapidsDB的應(yīng)用項目實例中,在國有大行普惠金融項目應(yīng)用中,50%左右的查詢是結(jié)構(gòu)重復(fù)的查詢,而RapidsDB依托代碼生成的優(yōu)化特性降低了50%-80%的查詢時間,獲得很好的使用體驗。

?

好了,代碼生成我們介紹到這。


一起探索內(nèi)存數(shù)據(jù)庫中代碼生成的實現(xiàn)方法的評論 (共 條)

分享到微博請遵守國家法律
迭部县| 武清区| 突泉县| 温宿县| 晋江市| 镇雄县| 闵行区| 邵武市| 东源县| 江华| 延安市| 瑞丽市| 新龙县| 屏山县| 松潘县| 肥城市| 溧水县| 万荣县| 博湖县| 西充县| 淳安县| 正宁县| 叙永县| 永康市| 塘沽区| 安丘市| 澳门| 宿州市| 十堰市| 东宁县| 怀柔区| 吴川市| 盘锦市| 蒙自县| 合肥市| 梨树县| 清远市| 浦县| 军事| 微山县| 太湖县|