データ分析

The New York Times のデータ アーキテクチャの進化

#da

※この投稿は米国時間 2021 年 1 月 28 日に、Google Cloud blog に投稿されたものの抄訳です。

世界中のほぼすべての企業と同様、The New York Times も昨年の新型コロナウイルス感染症大流行の課題に迅速に対応する必要がありました。幸いにも、Google Cloud を利用した弊社のデータシステムのおかげで、ニューノーマルのなかで迅速かつ効率的に業務を遂行できるようになりました。

データの使用方法

弊社は、エンドツーエンド型のデータ プラットフォームを持っています。一方では、プロダクト チームと密接に連携して、読者がどの記事を読んでいるか、どのくらいの時間サイトを閲覧しているかなど、プロダクト チームが関心を持っている適切なレベルのデータを収集しています。弊社は、頻繁に読者層を評価して、ユーザー セグメント、読者がどのようにしてサイトを閲覧しているか、または弊社のアプリをどのように使用しているかを把握しています。そして、そのデータをアナリストに提供し、エンドツーエンドの分析を行っています。

他方、ニュースルームも読者層に注目しており、ある人が The New York Times を読もうと決断するうえで Google 検索やさまざまなソーシャル プロモーションがどのような役割を果たしているかを理解し、記事に対する読者の行動もよりよく理解するためのツールを構築しています。このデータがあれば、ニュースルームは、ホームページまたはプッシュ通知で表示すべき情報を判断できます。

最終的に弊社が興味を持っているのは、人々が弊社のサイトとアプリにどのように関わっているか、という行動分析です。弊社は、さまざまな行動パターン、どのような要因や機能によって読者が登録と購読を決断するのかを把握したいと考えています。

また、データを使用して、読者の好みに合わせたニュース提供のための基本設定を作成、選択し、読者に新鮮なコンテンツや普段は読まないようなコンテンツを確実に届けています。同様に、弊社のデータは、弊社のターゲティング システムにも使用されているため、さまざまな購読パッケージに関する適切なメッセージを適切な読者に送ることができます。

Google Cloud への移行の決断

私が 5 年以上前に The New York Times に入社したとき、弊社のデータ アーキテクチャはうまく機能していませんでした。弊社のインフラストラクチャはデータを収集していましたが、アナリストが毎日処理するのが難しくなっていました。また、そのデータをシステムや環境に取り込む方法にも問題がありました。当時は、クエリを実行してからコーヒーを飲みに行き、デスクに戻るまでにクエリが終了するか、正しいデータが得られることを願っていました。それは成功することもあれば、失敗することもありました。

弊社は、Hadoop がオンプレミスのソリューションにはならないことに気づき、その時点で Google Cloud チームとの協議を開始しました。弊社は、フルマネージド型の、サーバーレスのデータベース ウェアハウスである BigQuery への移行からデジタル トランスフォーメーションを開始しました。非常に過密な移行スケジュールの下で、まず分析業務の移行に重点を置いていました。アナリストがデータを処理したい方法で処理できる最上級のシステムを使用できるよう努めました。

データ アーキテクチャ選択時の重要な要件の 1 つは、アナリストがビジネス パートナーに高品質な成果物を提供できるだけの迅速さで作業を行えるようにすることでした。弊社のアナリストにとって、BigQuery への移行は、劇的な変化をもたらすものでした。私の上司が初めて BigQuery でクエリを実行して、コーヒーを飲みに行こうとしたとき、上司が椅子から立ち上がるまでにクエリが完了したことを今でも覚えています。弊社のアナリストは、今でもそのことを話しています。

BigQuery への移行を行っている間、他のシステムが正しくスケーリングできていないという懸念がありました。2 年前は、選挙の日に見込まれる読者数に対応できるようスケールアップできるかどうか、確信が持てませんでした。当時は、その場しのぎのソリューションでやり過ごすことができましたが、信頼性の高い真のソリューションを見つけるまで、あと 2 年しかないことがわかっていました。

その間にストリーミング パイプラインを Google Cloud に移行しましたが、このときは主に App Engine を使用しました。App Engine は、必要に応じて変更や要求事項に沿った迅速なスケーリングが行える柔軟性の高い環境でした。DataflowPub/Sub も、データの管理に大きな役割を果たしました。2020 年の第 4 四半期には、全世界で 2 億 7,300 万人の読者を獲得し、他の選挙週間と比較しても、4 日間連続で過去最高のトラフィックを記録しました。データ損失が出なかったことを誇らしく思いました。

2 年前、レガシー システムを使用していたころ、ニーズに合わせてデータが供給されるよう、ある夜は朝の 3 時まで働いていました。今年の選挙日の夜に私がリラックスしてアイスクリームを半リットルも食べられたのは、データ環境をより簡単に管理できるようになったことで、ニュースルームのパートナーの間でのデータの取り込み、分析、分析情報に対する高い期待を見込み、応えることができたためです。

COVID-19(新型コロナウイルス感染症)が 2020 年のロードマップをどう変えたか

新型コロナウイルスの大流行は、私のチームの 2020 年のロードマップではまったく想定していなかったことであり、The New York Times は、基本的にデータ企業ではないということをここで述べておきます。私たちの仕事は、新聞紙面、アプリ、そしてサイトでニュースを読者に毎日届けることです。弊社のニュースルームは、読者が毎日受け取るニュースを充実させる巨大なコロナウイルス データベースを構築することが必要になるとは想定していませんでした。

弊社のニュースルームの動きは迅速で、弊社のエンジニアは COVID-19 に関する米国で最も包括的なデータセットの 1 つを構築しました。The New York Times は、Google と協力して、BigQuery で弊社のデータを公開し、Google の COVID-19 公開データセットとすることを決定しました。進化を遂げた弊社のアーキテクチャの詳細については、こちらのウェブセミナーをご覧ください。


柔軟なアプローチ

弊社では、多くのチームが Google Cloud 内で業務を行っており、各チームは、利用可能なさまざまなサービスから適切なものを選んで、これらのツールを念頭に置いたまま、プロジェクトの要件を調整できています。

The New York Times のデータ プラットフォームに関して思い浮かぶ 1 つの課題として、構築するものの優先順位の判断が挙げられます。Data Analytics Customer Council を通じて Google のプロダクト チームと連携できることで、BigQuery のロードマップ、つまりデータ分析のロードマップを詳しく見ることができ、自社の開発環境のどこに重点を置くかを判断しやすくなりました。たとえば、BigQuery BI Engine のようなツールを活用するため、BigQuery から直接データを読み込む Data Reporting API のようなツールを構築しました。このアプローチにより、アナリストはディメンションと指標に関する分野をより適切に管理できるようになりますが、データのキャッシュ メカニズムを構築することに重点を置く必要はなくなります。このような明確化を図ることで、ニューノーマル以降における The New York Times のあり方を考えやすくなります。

The New York Times のデータチームについて詳しく知りたい方は、こちらに公開している技術スタッフの求人情報をご覧ください。NYT データブログでは、興味深い記事を数多く掲載しています。

-The New York Times データ プロダクト担当エグゼクティブ ディレクター Ed Podojil 氏