1

私たちは、最大 150 万のタイムスタンプ付きレコード、1 秒あたり約 24MB、または 1 日あたり約 2TB の大量のデータを作成するシステムを持っています。

データは複数のソースから取得され、複数の形式があります。共通点の 1 つはタイム スタンプです。

現在、約 5 日分のデータをファイルに保存し、レポートを生成する社内ソフトウェアを使用しています。

何年にもわたるデータを保持してクエリできるスケーラブルなシステムの作成を検討しています。

Nathan Marz がHow to be Beat the CAP theoremで説明しているように、Hadoop/ElephantDB を長期バッチ ストレージに使用し、Storm/Cassandra をリアルタイム レイヤーに使用します。

コミュニティが代替案を指摘したり、さらに読むことを提案したりできるかどうか疑問に思っていますか?

データが主に時間別に整理されているという事実は、特定のタイプのソリューションに役立つのでしょうか?

この種の質問をするためのより良いフォーラムはありますか?

ありがとう

4

1 に答える 1

0

リアルタイムアクセスとスケーラブルなバッチ処理の両方を同時に行うことは難しい問題です。
完璧な解決策はありませんが、次の2つの機能を検討します。a)時間によるパーティションと、他のキー(クライアントIDなど)によるサブパーティションを備えたハイブ。このソリューションにより、次 のことが可能になります。
データインポートの優れたパフォーマンス
集約されたレポートの優れたスループット
1つのサブパーティションアクセスのおそらく許容可能な時間。ただし、1〜2秒になることはありません。

b)活発。これは、HDFSの代わりにcassandraを使用したHadoopです。データロードのパフォーマンスとバッチレポートのパフォーマンスはバニラハドゥープよりも劣ると予想されますが、それはあなたが必要とするすべてを提供することを約束しました-それはそれのために特別に構築されたからです。

于 2011-11-11T10:12:01.453 に答える