Anyone can publish on Medium per our Policies, but we don’t fact-check every story. For more info about the coronavirus, see cdc.gov.

POSデータにみる新型コロナの消費への影響と、ナウキャストのデータパイプライン管理

Ryohei Katayama
Mar 17 · 8 min read

こんにちは。
Finatextグループのナウキャストでデータ分析を担当している片山です。

ナウキャストは、POSデータ、クレジットカードデータ、共通ポイントなどのトランザクションデータ(私たちの業界ではオルタナティブデータと呼んでいます)を分析してインサイトを発見し、国内外の機関投資家や中央銀行、政府機関にレポートとして提供しています。

また、そうしたオルタナティブデータから生成した物価指数や消費指数を、「日経CPINow」「JCB消費NOW」といったサービスを通して定期的に会員企業に配信しています。

新型コロナウィルスの感染拡大が消費に影響を与えていることは、皆さんもニュースや日常生活の中で感じているかと思いますが、消費関連データを扱うナウキャストにも消費動向に関するレポーティングのご相談が増えています。

そこで、今回はナウキャストが利用するオルタナティブデータの一つであるPOSデータを使って、新型コロナウィルスの感染拡大が国内のスーパーマーケットでの消費に与えた影響を分析してみたいと思います。
記事の後半では、分析に用いた技術(Airflow)についても紹介します。

新型コロナでスーパーマーケットの売上はどうなった?

以下は、ナウキャストが利用しているPOSデータにおける、スーパーマーケット全体の売上の前年同期比(単位:%)の推移です。

2020年2月の値は+3%となっており、過去2年間で2番目に大きな増収でした。1番目は2019年9月の増収ですが、これは増税前の駆け込み需要が原因と考えられます。つまり、今回のコロナショックは消費税率引き上げに匹敵する大きなイベントと言えます。

売れている商品カテゴリーは?

以下のグラフは、2020年2月における主要カテゴリーの売上の前年同期比(単位:%)を大きい順にプロットしたものです。

普段は10%を超えること自体めずらしいのですが、さまざまなカテゴリーで大幅増収となっています。

まず、一番上の「日用紙製品」は言わずもがなですがティッシュやトイレットペーパーです。マスクや、ウェットティッシュなどの一部除菌グッズも含まれます。

そこから下は「乾めん」「カレー」「即席食品」など、日持ちする食品のカテゴリーが並びます。「レギュラーコーヒー」が増収しているあたり、リモートワークの影響もありそうです。

マスクは供給が追いつかず、売上が伸びていない

続いて、より小さいカテゴリーの詳細を見ていきたいと思います。
以下は「マスク」カテゴリーの日次売上(単位:億円)です。

1月21日から1月30日の間に売上が10倍以上に伸びています。

その後、2週間ほどかけて売上は以前の水準に戻り、ピークから1ヶ月以上経った今でもその水準で推移しています。花粉症のシーズンということもありマスクの需要自体は高いはずですので、需要が落ち着いたのではなく、マスクの供給が追いついていないのが要因と考えられます。

トイレットペーパーは需要に応えている

続いて、「トイレットペーパー」カテゴリーの日次売上(単位:億円)です。

2/28はちょうど「トイレットペーパーが品薄になる」というデマがSNSで拡散された時期です。騒動が売上にダイレクトに影響していることが見てとれます。

興味深いのはその後の推移です。マスクと異なり、騒動が落ち着いた後でも売上の水準が普段の2倍程度になっています。トイレットペーパーに関しては、需要増加にきちんと供給が追いついていると言えそうです。

オルタナティブデータから、安心してトイレに行けることが分かります。

いつもより売れた商品は何か?

POSデータは、カテゴリーだけでなく具体的な商品ごとに分析することも可能です。

以下のグラフは、全国一斉休校が伝えられた2月27日から3月4日までの1 週間によく売れたアイテムのTOP25です(単位:億円)。

POSデータの取り扱い商品は多岐にわたるため、売上が大きかった「乾めん」「カレー」「即席食品」「冷凍総菜」カテゴリーの商品に限定し、売上の大きい順にソートしました。平常時との比較のため、2020年1月の週平均売上を水色でプロットしています。

オレンジと水色の差に着目すると、味の素の冷凍惣菜(餃子、シューマイ、チャーハンなど)の売上の伸びが特に目立ちます。ほかにも、レトルトの白米やそうめんなどは普段の約2倍売れていることがわかりました。

Airflowでデータパイプライン管理

ここから、こうした分析を支えるデータパイプラインについて紹介したいと思います。

ナウキャストでは基本的にデータパイプラインをAirflowで管理しています。以前はAWS Step Functions を採用していたのですが、再実行、モニタリング、テストの運用に課題があり、最近Airflowに乗り換えました。

以下がインフラのイメージです。AWS上にAirflow環境を作る場合、だいたいこのような構成になるかと思います。

構成のポイントは以下です。

  • CeleryExecutorを用いて並列処理を簡単に。なるべくマネージドサービスを使いたかったので、バックエンドにはElastiCacheを採用。
  • コンポーネント(webserverなど)をすべて別々のECSサービスで走らせる。こうするとスケーリングが楽
  • webserverにはALBでアクセス。
  • バックエンドDBとしてAuroraを利用。
  • 各コンポーネントは、30秒おきに自分のdagフォルダ とS3上に置かれたdagフォルダをsyncする。S3経由のデプロイが可能
  • 利用するDockerイメージは一つだけ。コンテナ実行時のコマンドでそのコンテナがどのコンポーネントになるかを制御。(puckel/docker-airflowのentrypoint.shが神)

以下が実際のDAG(有向非巡回グラフ)です。

きれいですね。
これはレポートに用いるデータを生成するDAGで、データのクレンジングから各種KPIの計算、Excelファイルの作成などを行います。

AWS Step Functionsを使っていた頃と比べて再実行がとても楽になりました。また、Pythonで実装されているのでpytestなどを使ってDAGの細かいテストをゴリゴリ書けちゃいます。

余談ですが、よくタスクの実行環境の管理が難しいという話を聞きます。ナウキャストでは、基本的にすべてのタスクをDockerで包んで、AirflowはECSのタスクをキックするだけにしています。こうすることで少し手間はかかりますが、環境管理&テストをAirflowから切り離して考えることができます。

このあたりの話は、また別のポストで書きたいなと思っています。

おわりに

今回紹介した分析内容は、普段ナウキャストが行っているサービスのほんの一部分です。

冒頭でも書きましたが、ナウキャストは毎日更新される複数のオルタナティブデータの中から投資や政策の判断を変えうるインサイトを発見し、行政や金融機関、海外ヘッジファンド等に提供しています。顧客に提供するレポートの中では、データのクレンジングから始まり、競合比較、アイテム分析など、さまざまな観点から対象企業の動向を紐解いていきます。

今のナウキャストは、メンバー、データソース、顧客、売上、すべてが急速に成長していて、会社としてとても面白いフェーズにあると思います。この記事を読んで少しでも興味が湧いた方は、是非オフィスに遊びに来てください!

採用サイトはこちら
社員インタビューはこちら
Wantedlyはこちら

*当初公開したURLに誤りがございましたので、修正して新たに本記事を公開いたしました。

Finatext

THE Finatext Tech Blog

Ryohei Katayama

Written by

Data Engineer & Data Analyst @ Nowcast

Finatext

Finatext

THE Finatext Tech Blog

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade