PostgreSQL Executor(7): JIT

PostgreSQL 11版本有一個和性能提升相關(guān)的重要特性:對JIT(just-in-time)編譯的支持。在TPC-H等數(shù)據(jù)庫測試中,發(fā)現(xiàn)用于PostgreSQL的JIT編譯表達式速度快了不止20%。在這種JIT模式下,創(chuàng)建索引的速度甚至可以提高 5~19%。

表達式計算的JIT編譯使用LLVM編譯器的架構(gòu)來提升在WHERE條件、指定列表、聚合以及一些內(nèi)部操作表達式的編譯執(zhí)行。

JIT常用于CPU密集型SQL(分析統(tǒng)計SQL),執(zhí)行很快的SQL使用JIT由于產(chǎn)生一定開銷,反而可能引起性能下降。

參考1:https://yq.aliyun.com/articles/672471

參考2:http://llvm.org/devmtg/2016-09/slides/Melnik-PostgreSQLLLVM.pdf

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 背景 PostgreSQL 11 LLVM JIT,目前支持tuple deform(將磁盤上的tuple轉(zhuǎn)換為內(nèi)...
    hemny閱讀 1,825評論 0 4
  • 由PostgreSQL全球開發(fā)組發(fā)布于2019-05-23 PostgreSQL全球開發(fā)組宣布PostgreSQL...
    磐石數(shù)據(jù)閱讀 1,266評論 0 0
  • LLVM (底層虛擬機 Low-Level Virtual Machine),這是一個開源項目,最開始作為伊利諾伊...
    XLsn0w閱讀 1,767評論 0 1
  • --- layout: post title: "如果有人問你關(guān)系型數(shù)據(jù)庫的原理,叫他看這篇文章(轉(zhuǎn))" date...
    藍墜星閱讀 914評論 0 3
  • 注意多培養(yǎng)孩子為自己爭取權(quán)利的本領(lǐng),不要聽話的孩子,要有思想的孩子。不能用哭來達到目的,要用能說服父母的理由。 突...
    冰糖糖冰閱讀 198評論 3 0

友情鏈接更多精彩內(nèi)容