2009-05-11 13 views
0

約500の異なるソースからデータをインポートするデータベースを構築するという面白い課題があります。リレーショナルデータベース設計パターンの質問 - 大規模な読み取り専用データベース

各ソースには独自のスキーマがあり、多くは非常に異なっています。しかし、それらはすべて共通のエンティティに関するデータです。

最初の考えは、典型的なエンティティ/属性/値スキーマですが、非正規化インポートを1つのソース(550k行)からAEVに変換した後、Attribute_Valueテーブルに3600万行あります。適切なインデックスを使用すると、これはまだ非常に高速ですが、これはこれまでの500のインポートソースのうちの1つに過ぎません。

私はこのスケールはと思っていませんが、非常に素敵な論理パーティショニングを行うためには、インポートソース間でジョインする必要はありませんので、理論的には50個程度のデータベースを構築できます。

私は大量のデータソースを扱ってきた人物を探しています。行数が何億人にものぼる場合の処理​​方法についての経験があります。

答えて

2

OLAPソリューションについて考えましたか?彼らはおそらくあなたのような状況のために設計されています。大量のデータを読み込んで分析する。私は億の+行のテーブルを持っている

+1

うん、それは彼らのためだ。そして、多くの道具と、大きくて成長している知恵の体があります。 – dkretz

2

は、行数が断片化レベルとテーブル自体の幅と同じくらい重要ではなく、より広いテーブルより少ないあなたがページに収まることができOLAP/SSASの横

パーティション化された関数を使用したことがありますか(SQL Server 2005の新機能)

これは、より多くのデータをRAMに格納するのに役立つページと行レベルの圧縮(SQL Server 2008の新機能)を利用することもできます。圧縮を使用した独自のテスト、このリンクをチェックして圧縮なしと比較する方法を確認するA Quick Look At Compression In SQL 2008

関連する問題