1

クリック、ビュー、到達した目標を保存するデータベースがあります。ご想像のとおり、データベースのクリック数は数百万回に達しているため、統計を高速化するためにデータの集計を開始しました。現時点では、すべてのレコードを削除し、集計テーブルに新しいレコードを書き込みます (mysql キーが急速に上昇していることは正しく推測できます) が、これがエラーなしで統計を集計する最も簡単な方法です。

データベース集計についてインターネットを検索しました。データを保存/非正規化する方法と同様に、複数のテーブルを参照することなく、正しいデータをすばやく選択できます。しかし、これについては答えが見つかりませんでした。

また、集計データは急速に成長し、最初から最後まで選択できるため (1 年間の統計を選択するように)、mysql は集計データを格納するのに適したデータベースではないと推測しています。私の結論は正しいですか?もしそうなら、どのデータベースをお勧めしますか?

また、複数のソリューションのために複数のテーブルにデータを分割することも考えましたが、これが賢明かどうかはわかりません。

私の質問は次のとおりです。

  • 集計表を正しく保つために、どのような集計手法を使用していますか?
  • 集計を格納するのに最適なデータベースはどれですか?
  • 集計を複数のテーブルに分割する必要がありますか? それとも、複数のタイプのデータ要求を処理できる 1 つの汎用テーブルを作成する必要がありますか?
  • 速度の問題をどのように処理しますか?
  • データ集計の別の名前はありますか?

長い質問で申し訳ありません:)。SOとインターネットを検索しましたが、これらの質問に対する良い答えが見つかりませんでした。

4

1 に答える 1

-1

集計を格納するのに最適なデータベースはどれですか?

「集約」の定義を理解していれば、リレーショナルなものをすべて削除していると言えます。おそらく、noSQL ソリューションを目指しているのでしょう。

集計を複数のテーブルに分割する必要がありますか? それとも、複数のタイプのデータ要求を処理できる 1 つの汎用テーブルを作成する必要がありますか?

言うことは不可能です、あなたが望むものに依存します。あなたがしていることは非正規化であるため、データをより迅速に取得できます。しかし、非正規化しすぎると、適切なデータを見つけることができなくなります。そのため、実際には状況ごとに異なります。

速度の問題をどのように処理しますか?

繰り返しますが、言うことは不可能です。大まかに: 原因を突き止め、問題を解決します。

データ集計の別の名前はありますか?

「データ ウェアハウス」のようなものを構築しているように見えますか? 詳細については、ランダム インターネット ( http://en.wikipedia.org/wiki/Data_warehouseなど) を参照してください。

于 2012-09-20T09:46:06.787 に答える