現在MSSQLServer 2008を使用していますが、この特定のタスクに最適なシステムかどうかはわかりません。
私はそのような単一のテーブルを持っています:
PK_ptA PK_ptB DateInserted LookupColA LookupColB ... LookupColF DataCol (ntext)
一般的なクエリは
SELECT TOP(1000000) DataCol FROM table
WHERE LookupColA=x AND LookupColD=y AND LookupColE=z
ORDER BY DateInserted DESC
このテーブルには約10億行あり、1日あたり500万行が挿入されています。
SQL Serverに関する私の主な問題は、データファイルをシャーディングまたは分散するのが簡単ではないことです。また、エクスポートは1秒あたり1000行(約1MB /秒)で最大になるようですが、これは非常に遅いようです。
私が抱えているもう1つの問題は、SQL Serverで、新しいLookupColを追加したい場合、ログファイルが非常に大きくなり、タップ時にめったに使用されない大量の空き領域が必要になることです。
この問題に対する明らかなより良い解決策はありますか?