近期正在對(duì) Doris 的性能問題展開排查,發(fā)現(xiàn)了一個(gè)極為“吊詭”的函數(shù)執(zhí)行性能問題。經(jīng)過一系列的CPU熱點(diǎn)代碼分析之后,發(fā)現(xiàn)“罪魁禍?zhǔn)住本尤皇?..
DuckDB 是近年來頗受關(guān)注的OLAP數(shù)據(jù)庫,號(hào)稱是OLAP領(lǐng)域的SQLite,以精巧簡單,性能優(yōu)異而著稱。筆者前段時(shí)間在調(diào)研Doris的Pi...
最近居家中,對(duì)自己之前做的一些工作進(jìn)行總結(jié)。正好有Doris社區(qū)的小伙伴吐槽向量化的導(dǎo)入性能表現(xiàn)并不是很理想,就借這個(gè)機(jī)會(huì)對(duì)之前開發(fā)的向量化導(dǎo)入...
轉(zhuǎn)眼間,C++20的標(biāo)準(zhǔn)已經(jīng)發(fā)布快兩年了。不少C++的開源項(xiàng)目也已經(jīng)將標(biāo)準(zhǔn)升級(jí)到最新的C++20了,筆者也開啟了新標(biāo)準(zhǔn)的學(xué)習(xí)歷程了。所以借這系列...
Apache Doris的BE部分是由C++編寫,當(dāng)出現(xiàn)一些內(nèi)存越界,非法訪問的問題時(shí)會(huì)導(dǎo)致BE進(jìn)程的Crash。這部分的問題常常較難排查,同時(shí)...
最近一直在進(jìn)行Doris的向量化計(jì)算引擎的開發(fā)工作,在進(jìn)行CPU熱點(diǎn)排查時(shí),發(fā)現(xiàn)了存儲(chǔ)層上出現(xiàn)的CPU熱點(diǎn)問題。于是嘗試通過SIMD的指令優(yōu)化了...
分析完成了聚合以及向量化過濾,向量化的函數(shù)計(jì)算之后。本篇,筆者將分析數(shù)據(jù)庫的一個(gè)重要算子:排序。讓我們從源碼的角度來剖析ClickHouse作為...
乍一看這個(gè)標(biāo)題很玄乎,但是其實(shí)這只是涉及一個(gè)很簡單的CPP的模板推導(dǎo)的知識(shí)點(diǎn)。筆者近期進(jìn)行CPP開發(fā)工作時(shí),在編譯時(shí)遇到了如下的模板類型的推斷錯(cuò)...
筆者在源碼筆記1之中分析過ClickHouse的聚合函數(shù)的實(shí)現(xiàn),但是對(duì)于各個(gè)接口函數(shù)的實(shí)際如何共同工作的源碼,回頭看并沒有那么明晰,主要原因是沒...