DolphinDB VS kdb+的個人測評

DolphinDB VS kdb+的個人測評

6 人贊了文章

kdb+是一款性能極佳的時間序列資料庫。它是美國華爾街各大金融機構20多年來處理大規模數據的首選系統。它通常用於高頻交易,非常適用於高速存儲、分析、處理和檢索大型數據集。在存取和實時分析海量股票、外匯等高頻數據這個領域內,唯kdb+獨尊。kdb+還提供了專門的編程語言q語言,它天生具有處理大規模數據的能力。

DolphinDB作為新一代的高性能時間序列資料庫,與kdb+在編程語言和技術架構上有非常大的區別:

  1. DolphinDB的編程語言與Python和SQL非常相似,非常簡單易學,而很多使用過kdb+的人都表示它的q語言極其晦澀難懂,學習曲線陡峭,難以掌握。

2. 在技術架構上,DolphinDB採用了分散式文件系統和分散式計算,可以通過增加集群的物理伺服器來擴展分散式計算的速度。之前發表的文章《揭秘高性能DolphinDB》詳細講解了DolphinDB架構。kdb+是為高性能計算機設計的,對伺服器的要求較高。它沒有集群的概念,也就是說它無法在多個物理伺服器組成的分散式文件系統上運行。

kdb+號稱是速度最快的時序資料庫,很多客戶和合作夥伴一直好奇DolphinDB與kdb+的性能對比。根據kdb+的license合規性要求,我們不提供官方的性能評測報告。最近有資料庫領域的知乎網友使用紐約證券交易所的公開數據對DolphinDB和kdb+進行了性能測試對比。感興趣的朋友可以查看原文。

根據網友的測試結果顯示,

  1. 在載入數據和保存數據,「DolphinDB比kdb+要略勝一籌」。

2. 在網友測試的16種數據查詢和38種計算任務中,「在數據沒有分區的情況下,DolphinDB查詢的速度是kdb+的2.5倍;在數據分區的情況下,DolphinDB查詢的速度是kdb+的2倍」,「在其中的35種測試中,DolphinDB比kdb+表現得更出色。DolphinDB計算性能指標的中位數是kdb+的2.7倍。在包含NULL值的整數排序,移動最大值和移動平均值這些測試項目上,DolphinDB的的速度是kdb+的10倍以上 」。

3.「左連接的時候,DolphindB稍微慢於kdb+,但在進行等值連接、asof join和窗口連接的情況下,DolphinDB比kdb+的速度明顯要快得多。對於左連接,kdb+的速度大約比DolphinDB快10%~30%,對於等值連接,DolphinDB的速度大約是kdb+的2~4倍,對於asof join,DolphinDB的速度大約是kdb+的4~8倍,對於在窗口連接中使用常用的聚合函數(min、max、first、last、avg、wavg),DolphinDB比kdb+快1個數量級」。

最後測評的結論是,「DolphinDB表現著實耀眼,大部分場景下都比kdb+要快,小部分場景與kdb+相差不大。」

聲明:測評結果為網友個人觀點,僅供讀者參考。浙江智臾科技有限公司不對測評內容和測評結果的準確性、可靠性和完善性提供任何明示或暗示的保證。如果有需要,讀者可以自行驗證。浙江智臾科技有限公司將不承擔任何責任。

以上聲明內容的最終解釋權歸浙江智臾科技有限公司所有。

推薦閱讀:

ARCH & GARCH入門
時間序列計量經濟學近20年進展綜述 | 6個方向10張插圖
44頁PPT詳解R語言、時間序列與機器學習
對銀行人「拉存款」的效果估計
DARNN:一種新的時間序列預測方法——基於雙階段注意力機制的循環神經網路

TAG:時間序列分析 | 資料庫 | 大數據 |