1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

manabianAdvent Calendar 2024

Day 6

Treasure Data CDPの全体像を理解する:機能とコンポーネントの詳細ガイド

Last updated at Posted at 2024-11-17

概要

Treasure Data CDP の全体像を、CDP (Customer Data Platform) の機能をベースに整理します。CDP の基本的な機能や役割については、以下の記事で詳しく解説されていますので、参照してください。

image.png

引用元:Customer Data Platform (CDP)の全貌:定義からトレンドまで #TreasureData - Qiita

Treasure Data CDP の概要

Treasure Data CDP は、Treasure Data 社が提供するエンタープライズ向けの Customer Data Platform (CDP) です。企業が顧客データを一元管理し、マーケティングや営業活動に効果的に活用するための包括的なプラットフォームを提供します。多様なデータソースからリアルタイムにデータを収集・統合し、高度な分析を行うことで、顧客の全体像を把握し、戦略的な意思決定を支援します。

image.png

引用元:Platform Overview - カスタマーデータプラットフォームの概要 – トレジャーデータ

Treasure Data では、契約内容に基づいてデータ利用に関するキャパシティ上限が設定されています。このキャパシティ上限により契約金額が変動するため、コストの最適化を図る上で重要な観点となります。全データを対象とした大規模な処理を頻繁に行う場合、想定外のコスト増加の要因となる可能性があります。不要なデータの削除やデータ容量の管理を行うために、partial_delete Syntax 機能などを活用することが推奨されます。

指標名 内容
インポート件数 インポートするデータレコードの総数。
総保管件数 Treasure Data に保管される全データレコードの総数。
ユニークプロファイル数 Audience Studio で使用するユーザープロファイル数。
外部連携プロファイル数 Activation により外部ツールへ連携したプロファイルの件数と回数に基づく数値。
Web Personalization API コール数 Web Personalization API でセグメントを取得する API コールの回数(オプション機能)。

キャパシティ上限の詳細については、下記の記事を参照し、契約内容を確認することをお勧めします。

キャパシティの利用状況は、Utilization ダッシュボードにて確認できます。

image.png

引用元:Accessing your Data Utilization Dashboard

Treasure Data CDP のコンポーネント

Treasure Data CDP は、多様な機能とコンポーネントで構成されています。以下の表に、CDP の主要な機能と、それに対応する Treasure Data CDP のコンポーネントを整理しました。

機能名 Treasure Data CDP のコンポーネント
バッチインジェスト機能 - Treasure Data Integrations(Import Integration)
- Easy Sync
- Embulk
- TD Toolbelt
リアルタイムインジェスト機能 - Web Tracking
- Fluentd
ライブ接続機能 - Zero-Copy
データベース機能 - PlazmaDB
- Datatank
データ統合機能 - Trino (Presto)
- Hive
カスタマープロファイル統一機能 - ID Unification
カスタマーセグメンテーション機能 - Master Segments
- Audience Studio
- Journey Orchestration
可視化機能(BI 機能) - Treasure Insights
- Segment Insights Dashboard
統計解析機能 - Predictive Scoring
- AutoML
- PrecisionML
- Hivemall
- Custom Scripts
アクティベーション機能(データ連携機能) - Activation
データ提供機能 - Hive のエンドポイント機能
- Trino (Presto) のエンドポイント機能
- Datatank のエンドポイント機能
- pyTD
- td-spark
- TD-API
- TD Toolbelt
- Embulk
AI 支援機能 - Treasure Data AI Framework
データクリーンルーム機能 - 機能を未確認
データカタログ機能(顧客データ管理機能) - 機能あり(明確な機能名を確認できず)
オーケストレーション機能 - Treasure Workflow
ユーザープライバシー機能 - Treasure Data Trust for CDP

コンポーネントの詳細

全体像

Treasure Data CDP のコンポーネントを概念モデルにマッピングする際、次のいくつかの図を参考にしました。

image.png

引用元:Treasure Data CDP の特徴 - CDP(カスタマーデータプラットフォーム)の Treasure Data

image.png

引用元:203: Workflow (JA)

image.png

引用元:td-spark API Documentation

Treasure Data 社が考える CDP の全体像は、以下のサイトで整理されています。

image.png

引用元:CDP の基礎知識 - CDP(カスタマーデータプラットフォーム)の Treasure Data

Treasure Data CDP 内のデータアーキテクチャは以下の図で示されています。ソースシステムからデータ取得後、Raw Data → Element Data → Master Segment Data → Segment Data という順に処理を実施し、マーケティングサービスに連携します。

image.png

引用元:Audience Studio を活用する前の Master Segment 設定 - Treasure Data User Engagement

Element Data では、以下の 3 つのデータを管理することが前提となっています。これらのデータを適切に構築できるかどうかが、CDP を効果的に活用する鍵となります。詳しい内容については、公式ドキュメントをご参照ください。
image.png

引用元:Overview of Parent Segments

バッチインジェスト機能

バッチインジェストの方法として、以下の機能が提供されています。特に、Treasure Data Integrations が多く利用され、Treasure Data CDP 内のデータ統合機能を活用します。

  • Treasure Data Integrations(Import Integration)
  • Embulk
  • Easy Sync
  • TD Toolbelt

Treasure Data Integrationsは、Treasure Data CDP において提供されるデータ統合機能の一つであり、特に Import Integration はバッチインジェスト機能に該当します。この機能については、対応するコネクタの詳細が以下のドキュメントに記載されています。さまざまなデータソースと連携が可能で、特にマーケティング活動におけるデータ活用を効率化することができます。

image.png

引用元:Treasure Data Integrations by Alphabetical Sort

image.png

引用元:データ連携 - CDP(カスタマーデータプラットフォーム)の Treasure Data

Embulk はオープンソースのデータバルクローダーで、Treasure Data CDP 外に環境を構築してデータ連携を実施します。データ取得元のプラグインが公開されており、Embulk のドキュメントにて確認できます。

Easy Sync は、ソースから Treasure Data に一度に複数のテーブルを取り込む機能です。Treasure Data CDP のドキュメントではライブ接続に分類されていますが、データを物理的に移動しているためバッチ処理として分類しました。2023 年 10 月時点では、Snowflake のみがサポートされています。

image.png

引用元:Live Connect Ingest

TD Toolbelt は、Treasure Data が提供するコマンドラインツールで、データを取り込むことができます。

参考リンク

リアルタイムインジェスト機能

リアルタイムインジェストの方法として、以下の機能が提供されています。

  • Web Tracking
  • Fluentd

Web Tracking では、SDK により Web サイトやモバイルアプリなどから Treasure Data CDP にデータ連携を実施できます。

image.png

引用元:データの収集/統合/連携方法を理解する - 201: はじめてのトレジャーデータ (JA)

image.png

引用元:データの収集/統合/連携方法を理解する - 201: はじめてのトレジャーデータ (JA)

Fluentd はオープンソースのデータ収集ツールで、サーバーから Treasure Data CDP にデータ連携を実施できます。

image.png

引用元:データの収集/統合/連携方法を理解する - 201: はじめてのトレジャーデータ (JA)

これらのリアルタイムインジェスト機能により、リアルタイムマーケティング(Real-time Triggered Activation 等)を実施できます。

参考リンク

ライブ接続機能

ライブ接続を行う方法として、以下の機能が提供されています。

  • Zero-Copy

Zero-Copy とは、永続的なコピーや ETL を実施せずにデータウェアハウスからデータを取り込む方法です。必要に応じてクエリを発行してデータを取得します。2024年11月15日時点では、Databricks と Snowflake がサポートされています。

image.png

引用元:Live Connect Ingest

参考リンク

データベース機能

データを蓄積する方法として、以下の機能が提供されています。

  • PlazmaDB
  • Datatank

PlazmaDB は、コンピューティング層と分離された Treasure Data CDP のデータストレージエンジンです。PlazmaDB に関する仕様を理解する際には下記の記事が参考になります。

大規模データ分析やリアルタイムデータ処理に最適化されており、UNIXエポックタイム形式で自動的に付与されるtime列を活用することで、高性能かつ効率的なクエリ実行を実現します。データはtime列を基にパーティション分割され、通常は1時間単位のパーティションに整理されています。公式ドキュメントにも記載されているように、クエリの述語でtime列を条件に指定することで、特定の時間範囲に絞ったデータ検索が可能となります。これにより、不要なパーティションへのアクセスを回避し、クエリパフォーマンスを大幅に向上させる効率的なデータ処理が可能になります。

By constraining the ‘time’ column, you can avoid processing an entire data set and can instead have more targeted data processing. The partitioning enables good performance, efficient data management, and increased availability.

引用元:Data Partitioning in Treasure Data

「time」列を条件に指定することで、全データセットを処理する必要を避け、よりターゲットを絞ったデータ処理が可能になります。このパーティショニングにより、高いパフォーマンス、効率的なデータ管理、そして可用性の向上が実現されます。

上記の翻訳

引用元:Data Partitioning in Treasure Data

PlazmaDBでは、データへの権限付与に2つの方法が提供されています。1つは、Policy-based Database Permissions で、 IAM ポリシーを利用してデータベースやテーブル、カラム単位で柔軟な権限管理が可能です。もう1つは、 Database Access (Legacy) で、データベース単位での簡易的な権限設定が可能ですが、細かい制御には不向きです。Treasure Dataでは、より高度で柔軟な管理が可能なPolicy-based Database Permissionsを推奨しており、レガシー方式からの移行が推奨されています。

image.png

引用元:About Policy-based Database Permissions

image.png

引用元:About Column-level Access Control

Datatank は、PostgreSQL をベースに設計された Treasure Data のデータストレージ機能で、PlazmaDB のデータマートとして機能します。RDB(リレーショナルデータベース)の特徴を活かし、低レイテンシーで高い同時実行性能を実現できます。外部の BI ツールから接続する場合などに利用されます。

image.png

引用元:About Data Tank 2.0

参考リンク

データ統合機能

データを統合する方法として、以下の機能が提供されています。

  • Trino (Presto)
  • Hive
  • Custom Scripts

データ統合機能は、次の図におけるDistributed Data Processingにて PlazmaDB と直接参照しているサービスです。Spark の記述がありますが、Custom Scripts 機能により td-spark というライブラリにてデータ統合を実施するようです。

image.png

引用元:td-spark API Documentation

Trino (Presto)Hive により、PlazmaDB 上のデータ処理を実施できます。二つの方法の使い分けについては、ドキュメントに記載されており、インタラクティブなクエリを発行したい場合は Trino (Presto) を、スループットを重視する場合は Hive を利用することが推奨されています。データ処理量が多い場合、Trino (Presto) ではエラーが発生することを認識することが重要です。

image.png

引用元:Trino (Presto) Quickstart

Presto has a limitation on the maximum amount of memory that each task in a query can store, so if a query requires a large amount of memory, the query simply fails.

image.png

Treasure Data CDP 固有の UDF (ユーザー定義関数)が提供されています。IP アドレスから情報を取得する TD_IP で始まる UDF があり、 Maxmind 社のデータの基づいている旨の記述があります。

Both Hive and Presto UDFs use a geolocation database supplied by Maxmind.

image.png

Trino (Presto)Hive の挙動の相違について、下記の記事にて詳細に記述されています。

Hadoop利用者ならきっと知ってる、Hive/Prestoクエリ関数の挙動の違い #SQL - Qiita

Custom Scripts により、 Spark によりデータ統合を実施できまる旨が Treasure Boxes に記載されておりります。td-spark というライブラリを利用して、PlazmaDBに接続できるようです。ただし、 Plazma Public API が提供されなくなため本機能は動作しない可能性があります。

image.png

引用元:PySpark - Python API for Apache Spark – Treasure Boxes

参考リンク

カスタマープロファイル統一機能

カスタマープロファイルを統一する方法として、以下の機能が提供されています。

  • ID Unification

ID Unification とは、複数のデータソースに分散している顧客データを、一意に識別可能な ID に結びつける機能です。これにより、顧客の全体像を正確に把握し、パーソナライズされたマーケティング施策を実現できます。

image.png

引用元:ID Unification 紹介セミナー開催のお知らせ - Treasure Data User Engagement

参考リンク

カスタマーセグメンテーション機能

カスタマーをセグメンテーションする方法として、以下の機能が提供されています。

  • Master Segments
  • Audience Studio
  • Journey Orchestration

Master Segments は、顧客データを統合的に管理する機能です。これにより、マーケティングや分析に必要な顧客プロファイルや行動データを一元的に保持し、ターゲティングやパーソナライズを効率的に行えます。

image.png

引用元:Audience Studio を活用する前の Master Segment 設定 - Treasure Data User Engagement

Audience Studio は、顧客セグメントを作成・管理するための機能です。顧客属性や行動データを基に、柔軟なセグメントを作成できます。

image.png

引用元:Articles

Journey Orchestration は、顧客の行動や属性データに基づいて、最適なタイミングでのアクションやメッセージを設計・実行する機能です。リアルタイムで顧客の行動をトリガーとして利用でき、パーソナライズされた体験を提供可能です。

image.png

引用元:ジャーニーオーケストレーション徹底紹介セミナー- 1. イントロ編 - Treasure Data User Engagement

参考リンク

可視化機能(BI 機能)

データを可視化する方法として、以下の機能が提供されています。ただし、この機能を利用せずに、データベース機能に対して Tableau などの外部 BI ツールを利用することも一般的です。

  • Treasure Insights
  • Segment Insights Dashboard

Treasure Insights は、組み込み型 BI 機能であり、ダッシュボードやキューブ(ElastiCube)を作成できます。Sisense 社の BI サービスがベースとなっています。

image.png

引用元:Treasure Insights

image.png

引用元:Sub-Processors - Treasure Data

Segment Insights Dashboard は、特定の顧客セグメントのパフォーマンスを分析・比較するための機能です。Treasure Insights が全体像の管理や多用途なデータ分析に適しているのに対し、Segment Insights Dashboard は特定のマーケティング施策や顧客セグメントの分析に特化しています。

参考リンク

統計解析機能

データに対する統計解析を実施する方法として、以下の機能が提供されています。

  • Predictive Scoring
  • AutoML
  • PrecisionML
  • Custom Scripts
  • Hivemall

Treasure Data で利用可能な統計解析機能については、以下のドキュメントに整理されています。具体的なユースケースも記載されており、機能全体の概要を把握するのに役立ちます。

image.png

引用元:Introduction to Treasure Data AI/ML

Predictive Scoring は、Audience Studio 内で提供される機能で、顧客の行動や属性データを基に、特定の行動(例:購買、解約)の発生確率を予測します。

AutoML は、機械学習モデルの構築やハイパーパラメータの最適化を自動化する機能です。専門的な知識がなくても、データ分析や予測モデルの作成が容易になります。

PrecisionML は、Treasure Data が提供する機械学習フレームワークで、顧客データを活用して高度な予測分析やパーソナライゼーションを実現するための機能です。

Custom Scripts では、Python の Pandas などを組み合わせて統計解析を実施できます。

Hivemall は、Apache Hive 上で動作する機械学習ライブラリであり、大規模データの分散処理を可能にします。Treasure Data では、Hivemall を活用して、退会予測やレコメンデーションなどの高度な分析を実施できます。

参考リンク

アクティベーション機能(データ連携機能)

データを連携する方法として、以下の機能が提供されています。

  • Activation

Activations とは、作成したセグメントデータを外部のマーケティングツールやシステムに連携する機能です。この機能は、Audience StudioCustomer Journey Orchestration において利用可能です。以下のドキュメントにある Export Integration に記載された多くのサービスに対してデータ連携が可能です。

image.png

引用元:Treasure Data Integrations by Alphabetical Sort

参考リンク

データ提供機能

データを提供する方法として、以下の接続方法があります。

PlazmaDBに対して直接データ操作を行う API は現在は提供されていないようです。

Treasure Data is no longer accepting new users for the Plazma Public API.

引用元:pyTD Quickstart

Treasure Data は、Plazma Public API の新規ユーザーをこれ以上受け付けていません。

上記翻訳

参考リンク

AI 支援機能

AI による支援を受ける方法として、以下の機能が提供されています。

  • Treasure Data AI Framework (Marketing Copilot 等)

Treasure Data AI Framework は、2024 年に発表された Treasure Data CDP に統合された AI フレームワークです。このフレームワークは、生成 AI(Generative AI)を活用し、ユーザーが自然言語で CDP と対話できるチャットインターフェースを導入することで、顧客データへのアクセスと活用を容易にします。

image.png

引用元:Treasure Data Unveils Generative AI Capabilities - Treasure Data

2024年11月15日時点では、Marketing Copilot という機能が提供されています。

image.png

引用元:Marketing Copilot Overview

参考リンク

データクリーンルーム機能

データクリーンルームを利用する方法は、現時点では確認できませんでした。

データカタログ機能(顧客データ管理機能)

データカタログ機能に明確な機能名はありませんが、データベースやテーブル(Master Segments)を管理する機能が提供されています。

image.png

引用元:Data Workbench Overview

image.png

引用元:Modifying or Customizing the Table Schema

image.png

引用元:Data Workbench Overview

参考リンク

オーケストレーション機能

オーケストレーションを実施する方法として、以下の機能が提供されています。

  • Treasure Workflow

Treasure Workflow は、ワークフロー管理サービスで、データ処理の自動化と管理を支援します。Digdag というオープンソースのワークフローエンジンをベースに実装されており、YAML 形式でワークフローを定義し、複雑なタスクのパイプラインを構築、実行、スケジューリング、監視することができます。

image.png

引用元:Workflow 概要 - 203: Workflow (JA)

Custom Scripts という Python を実行できる機能もあり、Treasure Data がサポートしていないシステムへのデータ連携やデータサイエンスを実行する際に利用されます。

Treasure Boxes の GitHub リポジトリにてサンプルコードが提供されており、サイトにてそのコードの説明があります。

image.png

引用元:treasure-data/treasure-boxes: Treasure Boxes - pre-built pieces of code for developing, optimizing, and analyzing your data.

参考リンク

ユーザープライバシー機能

ユーザープライバシーを管理する方法として、以下の機能が提供されています。

  • Treasure Data Trust for CDP

Treasure Data Trust for CDP とは、企業が顧客データを安全かつ効果的に活用するための包括的なソリューションです。このソリューションは、データセキュリティ、データガバナンス、データプライバシーの 3 つの主要な要素で構成されています。

image.png

引用元:About Treasure Data Trust for CDP

Treasure Data JavaScript Consent Extension (TD JS Consent Extension) により、企業はデータ利用目的や同意収集の文脈を定義し、ウェブサイト訪問者が自身のデータ収集に関する同意設定を管理できます。

image.png

引用元:Treasure Data JavaScript Consent Extension

参考リンク

参考になる資料

はじめに読むべき資料

Treasure Data CDP の活用方法の概要を理解するためには、以下のリンクが有益です。

無償の E-learning

無償、かつ、未登録で受講できるトレーニングが以下のリンク先で公開されています。

image.png

引用元:E-learning Archives - Treasure Data User Engagement

トレーニングコンテンツがページに埋め込まれており、若干見づらいです。トレーニングコンテンツが埋め込まれているだけであるため、その URL 先に飛ぶことで全画面表示できます。

image.png

引用元:TDを知るためのE-ラーニング_はじめてのトレジャーデータ - Treasure Data User Engagement

公開されているトレーニングコンテンツは下記です。

Treasure Data 社が提供する役立つサイト

Treasure Data 社提供している役立るサイトには、次のものがあります。

  • Treasure Data User Engagement
  • Use Case Maturity
  • Treasure Boxes

Treasure Data User Engagementは、Treasure Data CDPを活用するユーザー向けの情報提供ポータルサイトです。

image.png

引用元:Treasure Data User Engagement[TOP] - Treasure Data User Engagement

Use Case Maturityは、企業が顧客データの活用度合いを評価し、適切なCDPのユースケースを特定するためのガイドが提供されているサイトです。データ活用の成熟度を以下の4つのステージに分類しており、各ステージに応じた具体的なユースケースや実践例が紹介されております。自社のデータ活用状況を把握し、次のステップを計画する際の参考にできます。

Treasure Boxesは、Treasure Data が提供している事前構築されたコードやアプリケーションのライブラリが提供されているできるサイトです。

image.png

引用元:Treasure Boxes

Treasure Data のトレーニングサービス

トレジャーアカデミー というトレーニングサービスが提供されています。一部のサービスを無償で受講でき、以下のサイトから申し込むことができます。

image.png

引用元:トレジャーアカデミー - CDP(カスタマーデータプラットフォーム)の Treasure Data

以下のドキュメントは無償で閲覧可能です。

Gartner のレポートのダウンロード

CDP の市場を理解するために、Gartner のレポートを読むことが有効であり、Treasure Data のサイトで提供されています。

image.png

引用元:ガートナー社のマジック・クアドラント™で、CDP のリーダーに認定 - CDP(カスタマーデータプラットフォーム)の Treasure Data

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?