メルカリのマーケットプレイスアプリにリアルタイムデータが必要な理由
株式会社メルカリは日本最大のC2Cマーケットプレイス運営企業だ。2013年の設立以来、月間利用者数約2300万人に上るフリマアプリ「メルカリ」の開発を通じて成長を続けている。
さらに近年では、
スマホ決済サービス「メルペイ」、
メルカリ内で得た売上金でビットコインを購入できるサービス「メルコイン」
スキマバイトをスマホで探せる「メルカリハロ」を開始するなど、ビジネス領域をさらに拡大させている。
これらのサービスにより、「あらゆる価値を循環させ、あらゆる人の可能性を広げる」というメルカリのミッションを遂行している。メルカリでは、商取引をはじめとして、日々、膨大なデータが発生している。
それらの有効活用のための基盤構築を担っているのが、Data Platform部だ。Data Platform部のGuruprasath Thavamani氏は、
メルカリでは、複数のマイクロサービスやデータベースから多種多様なデータを収集し、市場分析やマーケティング、不正対策など様々な用途で活用しています。そのための最適な基盤構築と運用に取り組んでいるのが私たちのチームです
Guruprasath Thavamani
エンジニアリングマネージャー、データプラットフォーム, Mercari
Confluent の導入が、メルカリによるリアルタイム変更データキャプチャ(CDC)の実装を簡素化し、より効率的な事業運営を実現した方法をご確認ください。
Confluent がメルカ リのリアルタイム変更データキャプチャ(CDC)の実装を簡素化し、より効率的な事業運営を実現した方法をご確認ください。
メルカリでは、Kubernetesを活用したマイクロサービスによるアプリケーション開発を内製で行っているほか、データウェアハウスにはBigQueryを採用している。さらにCDC(Change Data Capture)環境の構築により、データベース内のデータの新規作成、削除、変更もリアルタイムに取得している。
CDC環境を実現するために用いられているのが、「Kafka」だ。
ストリーミングデータをリアルタイムで取り込んで処理するために、最適化された分散データストアである。Kafkaを選択した理由には、可用性向上のための仕組みが備わっていたことや、様々なデータソースと柔軟に接続可能なフレームワーク「Kafka Connect」が利用できることがあった。
しかしData Platform部の中村晃大氏は、
「Kafkaを自社内で運用するには、専任の技術者等のリソースが不足しており、
導入や構築、運用に関する負荷を抑制できるシステムが必要と考えました」と語る。
採用の決め手は高い自由度と容易な操作性
この課題を解決したのが、Kafka をベースとしたデータストリーミングプラットフォーム「Confluent Cloud (以降Confluent)」だ。Kafkaのコア機能に加え、データ処理機能や信頼性向上のための機能群を付加、フルマネージドサービスとして提供する。
Confluent採用の決め手は、Kafkaクラスタ構築の自由度の高さにあった。
「すぐにクラスタを構築したり、作り直したりできるのを目の当たりにし、『Kafkaのクラス タがこんなに簡単に扱えるようになるのか』と驚かされました」と、中村智行氏は振り返る。操作の容易性も評価ポイントだった。
グルー氏は「Confluent は、Web UIやスキーマレジストリを用いてKafka環境の構築や操作が容易に行えます。事実、ConfluentのおかげでCDC基盤の構築や運用にかかる負荷が大幅に抑制され、事業部門のビジネス推進に寄与する開発業務に専念できています」と評価する。
— 株式会社メルカリData Platform部、Engineering Manager、Guruprasath Thavamani氏
2021年から本番運用が開始されたが、数多くの効果を得られているという。その1つが不正検知の高度化だ。
Trust & Safety Engineering部の長尾涼平氏は、「私たちのチームはお客さまが安全安心にお買い物ができるよう、日々、不正検知を含む禁止行為の監視や対応を行っている。そうした中、近年、利用者増やサービス拡充に伴い、リアルタイムで不正検知を行う仕組みが求められていた。
ConfluentによるCDC基盤の強化により、これまでは10分置きにバッチで取得していたデータをリアルタイムで得られるようになり、いち早い不正検知が可能となりました」と語る。
また、顧客満足度の向上にもConfluentは寄与している。Data Platform部の中村晃大氏は、「マーケティング部門での活用例として、社内に複数あるマイクロサービスのデータベースからのストリーミングデータをConfluentに接続し、リアルタイムで分析基盤のBigQueryに送信したり、CRMサービスに通知を行ったりしています」と説明する。
「これまでは、10分に一度のバッチ処理でお客様の商取引データを取得していたため、そのタイミングによってはお客様に付与されるべきインセンティブやクーポンが反映されない、といった問題が生じていました。Confluentの活用により、リアルタイムでデータが反映されるようになり、お客様に最適なタイミングでインセンティブやクーポンが反映されるようになっています」(中村晃大氏)
Confluentを活用したメルカリの今後の展望
Confluentの採用により、リアルタイムなデータ活用を実現したメルカリ。中村智行氏は、
「Confluentは導入以来、障害による停止が一度も発生しておらず、安定稼働を継続しています。そうした高い信頼性は最大の評価ポイントです」と語る。
導入や構築、運用に関する負荷を抑制できるシステムが必要と考えました」と語る。
現在では、新データベース環境の候補として検討している「TiDB Cloud」との連携に取り組んでいるという。
最後にグルー氏は、次のようにConfluentに対する要望を語った。「すでに海外で提供されているApache Flinkのマネージド型サービスの国内提供を期待しています。その活用により、さらなる運用の効率化、自動化が加速できると考えています」(Guruprasath氏)
Confluent の活用を 今すぐ開始
登録後の30日間で利用できる$400のクレジットを無償提供中