トレタのAPI開発を担当している芹沢です。 トレタでは、長時間かかるバッチ処理を複数台のサーバ上で処理させて短時間で処理できるバッチ処理基盤をAWS上で構築しました。この仕組みについて説明します。 目的 短期的には以下の課題を解決するため、長期的には似たような要件が再度発生した時に、同じ手法で解決できることを目的に作りました。 非同期でDBをデータソースとしたデータを加工してCSVファイルとして出力してS3にputしたい データソースはDBに入っているリアルタイムのデータであることが求められる CSVファイルの作成は決められた時間内に完了する必要がある 対象となるデータソースの量は日々増加し続けるが、常に決められた時間内にCSV作成が完了している必要がある 難点 今回の要件で技術的に難しい点は以下の2点です。 DBを直接参照しながら大量のデータを処理する 例えば、データソースとしてDBから
![Shoryukenでつくるバッチ処理基盤 - トレタ開発者ブログ](https://cdn-ak-scissors.b.st-hatena.com/image/square/a67701ba7023eac80ab36ddb24459243d61a9f75/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fs%2Fserihiro%2F20160608%2F20160608182432.png)