2
クリックストリームタイプのユーザーイベントデータをテラバイト単位で保存しています。狭い日付範囲を合理的に迅速に照会できるように、日付別に索引付けまたはパーティション化する必要があります。私はこれに関する集計ジョブとクエリを実行できるようにしたい。 Amazon EMRなどでSparkを使用する予定です。DynamoDBとS3フラットファイル
s3://my-bucket/20160503_00/data.txt
s3://my-bucket/20160503_01/data.txt
s3://my-bucket/20160503_02/data.txt
私は可能性が高い利用寄木柱ストレージではなく、生のテキストのと同じよう:
s3://my-bucket/20160503_00/data.parquet
s3://my-bucket/20160503_01/data.parquet
s3://my-bucket/20160503_02/data.parquet
別のオプションは、Amazonでいっぱいです
1つのオプションは、のような一日+時間で仕切らS3フラットファイルでありますDynamoDB?
それぞれの長所と短所は何ですか?
あなたがs3を使用している場合は、重要なスペースとIOサイクルを節約するためにコンテンツを圧縮して保存してください(効果的にテキストを保存しているので、うまく圧縮されます。 )また、レコード対ファイルの比率を低く抑えてください(ファイルごとに1秒あたり1レコードではなく、1ファイルあたり1分に集計するか、または可能であればどのようなものであれ)。私がこのような何かをしたとき、毎秒s3に同期しますが、5分ごとに戻ってきて1秒あたりのデータをより大きなチャンクに集約します。) – keen