五月天青色头像情侣网名,国产亚洲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)方法的評論 (共 條)

分享到微博請遵守國家法律
永修县| 福建省| 通道| 阜城县| 福建省| 长武县| 山东| 阜城县| 桐城市| 建阳市| 水城县| 晋州市| 兰西县| 许昌县| 商丘市| 临夏市| 绥滨县| 桃江县| 贵阳市| 根河市| 珲春市| 浑源县| 许昌市| 呼伦贝尔市| 泽州县| 砀山县| 梅河口市| 廉江市| 奉节县| 茌平县| 洛宁县| 清丰县| 西充县| 湘潭县| 全椒县| 正阳县| 林甸县| 杭锦后旗| 体育| 略阳县| 邵阳市|