3

カスタムの Web 分析およびアクション追跡ソリューションを作成し、それをフィードバック メカニズムとして使用したいと考えています。検索またはコンテンツの提案用。

短期間のデータのみの場合は、データ保持が制限された NOSQL エンジンを使用します。しかし、理想的には長い歴史を残したいと思っています。

私が過去に見た良いアプローチの 1 つは、ストレージに mysql を使用し、月に 1 つのテーブルを使用し、古いテーブルを MySQL ARCHIVE 形式に変換することでした。アーカイブと集計データを参照するために、MySQL ビューが実装されました。

私の質問: Google Analytics のようなものはどのようにデータを保存しますか? 構造化データベースなどで。クエリの可能性を柔軟に保ちながら、長期的なメモリの浪費を回避するには、どの方法をお勧めしますか?

(DBへの書き込み速度については心配していません。これは非同期バッチで発生し、リアルタイムでは発生しません)

4

2 に答える 2

2

Googleは、独自のBigTable実装を使用してデータを保存しています。ビッグデータソリューションに興味があり、ビッグデータを利用している場合は、これを確認する必要があります。グーグルのビッグテーブルから構築されたオープンソースの実装については、Hbase/Hadoopをチェックしてください。すぐにいくつかのリンクを投稿します。

このタイプのデータに対して行われる分析自体は、map/reduce操作を利用します。

于 2012-02-18T11:49:43.953 に答える
1

Urchin は当初、カスタム構築された独自の多次元データベースを使用していたと思いますが、Google Analytics がまだそれを使用しているかどうかはわかりません。とにかく、分析システムは、高速な OLAP ブラウジングのためにCubeベースのスキーマを使用することがよくあります。

Microsoft と Oracle のデータベース ツールにこの種の機能があることは知っていますが、非常に高価です。オープンソースのキューブ データベースについては知りません。ただし、Java を使用している場合は、 Mondrianも同じように機能すると思いますが、ストレージにリレーショナル データベースを使用します。

于 2012-02-19T11:44:14.227 に答える