こんにちは、昨年末に新しくノートPCを注文したら年明けに新モデルが発表されてしまったショックを未だ引きずっているエンジニアの回路(@qazx7412)です。 今回は昨年末に取り組んだAthenaを利用した集計バッチの高速化についての話をしようと思います。 あらすじ さて、私が普段関わっている配信システムには「売上集計」と呼ばれている夜間バッチがあります。 これがなにかといえば名前のとおり売上を集計する夜間バッチなのですが、配信システムにはユーザーが購入を行ったときに発行した購入キーとコンテンツIDおよびユーザーIDを紐付けて購入履歴として管理するテーブルがあり、ここから毎晩その日の購入の集計を行います。 実際のものとは異なりますがたとえばこんな感じです。 (purchase_records) key content_id user_id price unixtime - AAAAbbbb
![重たい集計バッチをAthenaを利用して高速化した話 - Tech Do | メディアドゥの技術ブログ](https://cdn-ak-scissors.b.st-hatena.com/image/square/f7ad9a1de0a84b8aab1e71b245dba1e899511c8f/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fq%2Fqazx7412%2F20200203%2F20200203171046.jpg)