> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Trino

> TrinoからOneSignalにカスタムイベントを同期して、ユーザー行動に基づいて自動化されたJourneyとパーソナライズされたメッセージングキャンペーンをトリガーします。

export const PLATFORM_0 = "Trino"

export const DATA_TYPE_0 = "イベントデータ"

export const COLUMN_HEADER_0 = "Trino列"

export const PROPERTIES_DESCRIPTION_0 = "JSONとしてのイベントメタデータ"

## 概要

OneSignal + Trino統合により、TrinoクラスターからOneSignalにカスタムイベントを同期して、ユーザー行動に基づいて自動化されたメッセージングキャンペーンとJourneyをトリガーできます。

Trinoは、複数のソースからの大規模なデータセットに対して高速な分析クエリを実行するために設計された分散SQLクエリエンジンです。

***

## 要件

* アウトバウンドメッセージイベント用の[Event Streams](/docs/ja/event-streams)へのアクセス（プランの制限と超過料金が適用されます）
* インバウンドイベント同期用の[Custom Events](/docs/ja/custom-events)へのアクセス（プランの制限と超過料金が適用されます）
* [更新されたアカウントプラン](https://onesignal.com/pricing)（無料アプリでは利用できません）

### Trino

* ネットワークアクセス可能な**Trinoクラスター**
* 適切な権限を持つ**ユーザー資格情報**
* **TLS接続**のサポート（OneSignalで必須）
* Trinoカタログを介してアクセス可能な**イベントデータ**

***

## セットアップ

<Steps>
  <Step title="Trino接続を設定">
    OneSignalで、**Data > Integrations**に移動し、**Add Integration**をクリックします。

    **Trino**を選択し、次の接続詳細を入力します：

    * **Host:** Trinoクラスターのホスト名
    * **Username:** Trinoのユーザー名
    * **Password:** Trinoのパスワード
    * **Port:** 443（デフォルト）またはカスタムポート

    <Info>
      OneSignalはTrinoへのTLS接続を必要とします。インスタンスがポート443で実行されていない場合は、カスタムポートを指定してください。
    </Info>
  </Step>

  <Step title="Advanced Sync Engineを設定（オプション）">
    パフォーマンスを向上させるために、専用のCENSUSカタログを設定します：

    1. `CENSUS`という名前のスキーマを含む`CENSUS`という名前のカタログを作成します
    2. コネクタが次をサポートしていることを確認します：
       * `CREATE TABLE`および`DROP TABLE`操作
       * テーブル書き込み（INSERT、DELETE、UPDATE）
       * `CREATE OR REPLACE TABLE`ステートメント
    3. OneSignalユーザーに`CENSUS.CENSUS`スキーマへの完全な権限を付与します

    <Info>
      テスト済みの構成には、MySQL、PostgreSQL、Snowflake、Iceberg、Delta Lakeコネクタが含まれます。
    </Info>
  </Step>
</Steps>

***

### イベントデータマッピング

{PLATFORM_0} {DATA_TYPE_0}をOneSignalのカスタムイベント形式にマッピングします：

| OneSignalフィールド | {COLUMN_HEADER_0} | 説明                         | 必須  |
| -------------- | ----------------- | -------------------------- | --- |
| `name`         | `event_name`      | イベント識別子                    | はい  |
| `external_id`  | `user_id`         | ユーザー識別子                    | はい  |
| `timestamp`    | `event_timestamp` | イベントが発生した時刻                | いいえ |
| `properties`   | `event_data`      | {PROPERTIES_DESCRIPTION_0} | いいえ |

### イベントクエリの例

```sql theme={null}
-- 例：カタログ全体の最近の高価値イベント
SELECT
    event_name,
    user_id,
    event_timestamp,
    CAST(event_properties AS JSON) as event_properties
FROM catalog.schema.user_events
WHERE event_timestamp >= current_timestamp - INTERVAL '7' DAY
    AND JSON_EXTRACT_SCALAR(event_properties, '$.value') > '100'
ORDER BY event_timestamp DESC;
```

### クロスカタログイベントクエリ

```sql theme={null}
-- 例：複数のデータソース間のフェデレーテッドクエリ
SELECT
    'combined_activity' as event_name,
    u.user_id,
    current_timestamp as event_timestamp,
    JSON_FORMAT(JSON_OBJECT(
        'web_sessions', w.session_count,
        'mobile_events', m.event_count,
        'purchase_value', p.total_value
    )) as event_properties
FROM postgres_catalog.users.profiles u
LEFT JOIN web_catalog.analytics.sessions w ON u.user_id = w.user_id
LEFT JOIN mobile_catalog.events.activities m ON u.user_id = m.user_id
LEFT JOIN purchases_catalog.orders.summary p ON u.user_id = p.user_id
WHERE u.created_date >= current_date - INTERVAL '30' DAY;
```

***

## Sync Engineオプション

### Basic Sync Engine

* 任意のTrinoカタログとコネクタで動作
* OneSignalインフラストラクチャによって管理される状態追跡
* 追加要件なしのシンプルなセットアップ

### Advanced Sync Engine

* ローカル状態追跡による強化されたパフォーマンス
* 専用の`CENSUS.CENSUS`カタログとスキーマが必要
* テーブル書き込み操作をサポートするコネクタをサポート
* 大量のイベント処理に推奨

***

## サポートされているコネクタ

OneSignalのAdvanced Sync Engineは次でテスト済みです：

* **MySQLコネクタ**（読み取り/書き込みモード）
* **PostgreSQLコネクタ**（読み取り/書き込みモード）
* **Snowflakeコネクタ**（読み取り/書き込みモード）
* **Icebergコネクタ**（S3およびAWS Glueを使用）
* **Delta Lakeコネクタ**（AWS GlueおよびStarburst Galaxyカタログを使用）

***

## 制限事項

* TLS接続が必要（OneSignalのセキュリティ要件）
* Advanced Sync Engineには`CREATE OR REPLACE TABLE`サポートが必要（Trino 2023年10月以降）
* Warehouse Writebackはまだサポートされていません（近日公開予定）
* `WITH`句でカスタムテーブルオプションを提供できません

***

## FAQ

### どのTrinoコネクタがOneSignalで動作しますか？

読み取り操作をサポートする任意のコネクタがBasic Sync Engineで動作します。Advanced Sync Engineの場合、テーブル書き込みと`CREATE OR REPLACE TABLE`をサポートするコネクタが必要です。

### 単一の同期で複数のカタログをクエリできますか？

はい！Trinoのフェデレーテッドクエリ機能により、単一のクエリで複数のソース（PostgreSQL、MySQL、S3など）からのイベントデータを組み合わせることができます。

### Advanced Sync Engineは必要ですか？

いいえ、Basic Sync Engineはほとんどのユースケースで十分に機能します。強化されたパフォーマンスが必要で、必要な`CENSUS.CENSUS`カタログを設定できる場合は、Advanced Sync Engineを使用してください。
