PDA

View Full Version : 用於Tick數據的HDF5



PlochettEgo
02-06-2010 05:59, 05:59 AM


有沒有人使用HDF5而不是像(MySQL,PostgreSQL)這樣的關係數據庫

如果是這樣,您使用外匯數據的經驗是什麼?

tng883
12-23-2021 07:25, 07:25 AM
嗨,有沒有人使用HDF5代替關係數據庫,如(MySQL,PostgreSQL)如果是這樣,你使用外匯數據的經驗是什麼?
我已經調查了它的蜱存儲,發現它次優(至少對我來說)。主要問題是它專為不會發生變化的海量數據而設計。這意味著您必須指定數組的大小(即:4 mil刻度)。添加新的刻度需要調整數組的大小(可能很快)。這是可能的,但我不喜歡這樣工作。順便說一句,我只研究了幾個小時,所以我可能錯了。我已經下載了4個經紀商的所有價格數據:FXCM,dbFX,Dukascopy和GAIN Capital。我已經創建了一個自定義壓縮刻度存儲格式來存儲它們。我有10 GB的刻度數據,如果將它們存儲為未壓縮的CSV文件,則需要200 GB。我的二進制結構和壓縮平均為2個字節/刻度。我使用所需的最小字節數存儲節拍(時間戳為4個字節,出價為3個字節,傳播為2個字節,請求為出價 點差)。我使用LZMA(7-Zip壓縮器之一)進行壓縮。我將每天的刻度存儲在一個單獨的文件中,如FXCMEUR_USD2009_01_28.tick,...我還在每個文件的標題中輸入我擁有的所有信息 - 經紀人名稱,使用的API,對名稱,數字計數,檢索日期,這樣如果文件以某種方式混淆,我就不會有問題。我現在有100.000個文件,但我希望通過將它們存儲在月度檔案中來聚合它們。我最初嘗試使用SQLite,但它不能擴展,甚至不適用於M1蠟燭。 PostgreSQL會處理更多,但它肯定無法處理我所擁有的滴答數量。在工作中(我是計算機程序員)我們的一個使用HBase進行海量數據存儲。您可能想要對此進行調查,但它需要一個集群才能實現最佳使用(它們現在有10台機器,存儲大約2 TB的數據,10億條記錄)。編輯:我正在進行的滴答下載的屏幕截圖 - http://dl.dropbox.com/u/190212/public/tick.png

PlochettEgo
12-23-2021 08:46, 08:46 AM
謝謝阿達爾,看起來很有趣。目前我決定使用HDF5。

looxyw
12-23-2021 10:07, 10:07 AM
有沒有人對您的刻度存儲體驗有任何新的意見?我也在研究這個問題。謝謝!