伺服器出現了一個新軟體,一幫大佬吵起來了!

2023-04-27 15:01:44

一天深夜,加班的程式設計師都已經下班,而伺服器卻熱鬧了起來。

 

「聽說了嗎?這家公司即將有一個大專案要來!」,tomcat神祕的說到。

隔壁的Nginx聞聲說到:「什麼大專案?」

「說是什麼巨量資料,要實現10億級資料秒級檢索!」

「啥,10億,秒級?」

「是啊,這次不知道又是哪個資料庫要受苦了」,tomcat笑著說到。

「MySQL呢,來活兒了!」,Nginx喊到。

MySQL一聽這專案情況,連連搖頭,「別開玩笑了,我這小本買賣,哪承接的了這種業務啊,這資料量太大了,還要秒級檢索,我可幹不了」

「你這專業的資料庫都幹不了,那誰能幹?」

「我是以事務為基礎的關係型資料庫管理系統,關注ACID特性和資料完整性,在傳統業務場景中是我的強項。你說的這個場景它不是我的擅長啊!我感覺HBase老哥能攬這活兒,他不是號稱巨量資料的資料庫嗎,鐵定能行」

一旁的HBase一臉淡定,畢竟是巨量資料領域的大佬,氣場還是很穩,緩緩問道:「區區10億資料,有什麼好怕的,他們準備用多少臺伺服器?」

「聽說是單機」,tomcat說到。

一聽這話,HBase瞪大了眼睛,「單機?那我可幹不了」

「你不是幹巨量資料的嗎,怎麼也幹不了?」,Nginx問到。

「我確實是幹巨量資料的,但我要依賴Hadoop生態,從來都是組團戰鬥,採用叢集化部署,這單機要實現這麼巨量資料量秒級檢索,我可沒把握!」

「還是看我的吧」,一個聲音從角落裡傳來。

大夥尋聲看去,原來是ElasticSearch。

「我還沒說話呢」,這時,又一個聲音從另一個角落出來。

大夥再次看去,MongoDB也從角落裡走了過來。

「你們倆,能行嗎?」,MySQL有些懷疑的問到。

「我是專門用於全文搜尋和分析的資料庫,使用倒排索引進行快速搜尋。我在處理大型資料集時非常擅長,叢集和單機我都能部署,雖然單機10億資料量還要秒級查詢挑戰很大,但我相信還是可以試一試」,ES自信的說到。

大夥聽完都點了點頭。

「再快你也是用Java寫的,而我是用C++寫的!我是一款基於檔案的資料庫,提供靈活的資料模型,可以輕鬆地處理非結構化資料。我的查詢速度很快,並且能夠支援高並行讀寫操作,這個專案我也可以試一試」

「你C++寫的怎麼了,未必有我快!我的全文檢索效能,你能比嗎?」,ES有些不服。

MongoDB也不退讓,「這專案又沒說要全文檢索,恐怕是英雄無用武之地。反倒是你那寫入資料的高延遲才讓人擔心呢。」

「這專案也沒強調資料的實時性啊!」

見兩位爭執不下,MySQL站了出來,「好了好了,大家都彆嘴上工夫逞強了,到底誰更技高一籌,到時候看測試結果就知道了!我打聽到明天程式設計師就要來做效能測試,你們準備準備吧!」

這倆又互放了幾句狠話就離開了,喧鬧的伺服器總算安靜了下來。

 

第二天,大家都在關注著這個ElasticSearch和MongoDB的比試,等了很久卻一直沒有訊息。

一直到了下午,Nginx才傳來了訊息:「兄弟們,ES和MongoDB兩位都沒戲了!我剛剛聽瀏覽器告訴我,程式設計師從網上下載了一個新的資料庫軟體,一會兒就要傳上來安裝了!」

「叫什麼名字?」,大夥齊聲問到。

「叫什麼Click···,哎,我有點想不起來了!」,Nginx支支吾吾的說到。

「沒聽過這號人物啊,咱資料庫圈啥時候來的新人?」,MySQL說到。

MongoDB不屑的說到,「新人啊,那不用怕」

倒是ES有些不安,眉頭緊鎖,低聲說到:「這名字有點耳熟,好像有點厲害的樣子」,

就在大夥說話間,這新的資料庫軟體已經安裝完成。

這一下大家看清楚了他的名字:ClickHouse

 

他熱情地跟大家打招呼,「大家好,我是ClickHouse,大家都叫我CK,剛來到這裡,多多關照」

大夥一陣寒暄後,程式設計師對CK的效能測試開始了。

只見資料來源源不斷的通過網路灌了進來,才沒多一會兒就超過10億條了。

「你的寫入速度怎麼這麼快?」,MySQL驚訝的問到。

「你這確定是寫了10億條資料嗎,怎麼才佔了10幾個G儲存?」

「我是一個列式儲存的資料庫,使用高效能的壓縮演演算法壓縮資料,來儲存和檢索大量資料,所以佔用空間會省很多,這對查詢也有幫助,可以減少很多I/O數量,提升查詢效能」

「有那麼厲害嗎,能查多快?」

ClickHouse只是笑了一下,並沒有回答。

 

說話間,程式設計師開始了查詢效能測試。

tomcat說到:「來了老哥,查詢請求過來了。」

話音剛落,tomcat就收到了資料,前後不過800毫秒的時間。

接著程式設計師又進行了多次查詢測試,CK基本上都能做到秒級響應,有時候甚至在幾十毫秒。這一波操作下來,大夥看得歎為觀止。

連一向自負的MongoDB也忍不住問到:「好傢伙,你咋這麼快」

「我跟您一樣,也是用C++寫的,除了列式儲存、壓縮資料,我還有稀疏索引、跳數索引、SIMD指令應用等技術,所以比較快」

大夥都紛紛點頭,湊了過來,圍了一圈兒,讓CK詳細的分享起他高效能的祕密。

一旁的HBase嘆了口氣說到:「真是長江後浪推前浪啊!」

 

【完】

大家好,我是軒轅,我的ChatGPT網站(無需賬號,無需梯子)又又又更新了,全新UI,更多新功能,歡迎大家來白嫖使用:

電腦版:

 

手機版:

 

地址:

https://chatgpt.ctfcode.com