バックグラウンド
私は ak の n 次元の時系列を持っており、それぞれが float 値 (n 列と日付を表す 1 列) を保持する mx (n+1) 配列として表されます。
例:
k (約 400 万) の時系列
20100101 0.12 0.34 0.45 ...
20100105 0.45 0.43 0.21 ...
... ... ... ...
毎日、データ セットのサブセット (< k) に追加の行を追加したいと考えています。すべてのデータセットは、1 つのhd5f ファイルにグループで保存されます。
質問
行をデータセットに追加する最も時間効率の良い方法は何ですか?
入力は次のような CSV ファイルです。
key1, key2, key3, key4, date, value1, value2, ...
日付は特定のファイルに対して一意であり、無視できます。私は約400万のデータセットを持っています。問題は、キーを検索し、完全な numpy 配列を取得し、配列のサイズを変更し、行を追加して、配列を再度保存する必要があることです。hd5f ファイルの合計サイズは約 100 GB です。これをスピードアップする方法はありますか?SQLite などを使用してもうまくいかないことに同意できると思います。すべてのデータを取得するとすぐに、平均的なデータ セットには 100 万要素× 400 万データ セットが含まれます。
ありがとう!