LogをS3とRedshiftに格納する仕組み

こんにちは、ちきん(@mokemokechicken)です。
今回も社内勉強会用の資料をご紹介します。

概要

色々なログやイベントデータが分散したサーバで発生する場合、それを集めて集計したり分析したりするには一工夫が必要です。
規模が小さいうちは、MySQLに保存しておけば良いのですが、いつか書き込み性能面で厳しくなる時が来ます。
最近流行りの「Flunetd+S3+Hadoop(Hive)」という構成は、そういう問題をかなり解決してくれます。
ただ、Hadoop(Hive)はQueryの応答が遅いので(1分〜数分)「問題が起こった時の調査」には問題があるなぁと思っていました。
そこで、AWSに最近登場したRedshiftです。
Hiveの代わりにRedshiftを使うと、私達のような用途(集計・調査)であれば費用も速度も大幅に向上させられそうです。
今回は、その辺の話を共有したいと思います!



Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 16275217 bytes) in /home/yumeco/www/prod/wp-includes/wp-db.php on line 1171