
OneSignal Snowflake統合の概要
概要
OneSignal + Snowflake統合は、2つの強力なデータパイプラインをサポートしています:- エクスポート:OneSignalからSnowflakeにメッセージングイベントデータ(プッシュ、メール、SMS、アプリ内)を自動的に送信して、分析とレポート作成を行います。
- インポート:Snowflakeデータセットからカスタムユーザーイベントを同期してOneSignalに送信し、自動化されたJourneysとパーソナライズされたメッセージングをトリガーします。
OneSignalイベントをSnowflakeにエクスポート
メッセージングパフォーマンスとエンゲージメントイベント(例:送信、開封、クリック)をSnowflakeに送信して:- カスタムダッシュボードとレポートを構築
- チャネル全体で配信とエンゲージメントのトレンドを追跡
- OneSignalデータを他のビジネスデータと組み合わせて分析
- OneSignal Professionalプラン(無料アプリでは利用できません)。
- Snowflakeアカウント
- Snowflakeアカウントに
IMPORT SHAREおよびCREATE DATABASEロールがあることを確認してください。- 共有を受け入れるには
ACCOUNTADMINロールの使用を推奨します。
- 共有を受け入れるには
1. サインアップ
Snowflake統合をアクティブ化するには、Message Events DataのOneSignal Marketplaceリスティング経由でアクセスをリクエストする必要があります。そこから、詳細情報を取得するためにチームに連絡します。2. アカウント情報を提供
チームと接続したら、データを共有できるようにいくつかの詳細を提供する必要があります。Snowflake Account IDとSnowflake Organization IDが必要です。その情報を取得する最も簡単な方法は、「Copy account identifier」ボタンをクリックすることです(以下に示すとおり)。OneSignal Marketplaceリスティング経由で私たちと連絡を取る必要があります。ただし、アカウント情報の提供についてさらに質問がある場合は、
snowflake-data-sharing@onesignal.comにメールでお問い合わせください
Snowflakeアカウント識別子のコピー
- OneSignalからプログラムへようこそのメール
- データ共有が完了したことを通知するSnowflakeからのメール

Snowflakeデータ共有通知メール
3. Snowflake内でデータ共有を受け入れる
データ共有が完了したことを通知するSnowflakeからのメールを受信したら、Snowflakeアプリにログインしてデータ共有を受け入れることができるはずです。 Data → Private Sharingに移動すると、新しいPrivately Shared Listingが表示されます。Getをクリックすると、データがリージョンにレプリケートされ始めます。
Snowflakeプライベート共有インターフェース
CREATE DATABASEまたはIMPORT SHAREが含まれていません。ACCOUNTADMINロールに切り替えることをお勧めします。
データのレプリケートには時間がかかります。データが利用可能になると、Snowflakeから追加のメールが送信されます。次のようなダイアログが表示されるはずです

データレプリケーションステータスダイアログ

データベース設定ダイアログ

データ共有セットアップ完了
完了です!OneSignalからSnowflakeへのデータ同期が開始されました。同期の頻度は24時間に1回に設定されているため、初期データは翌日まで利用できない場合があります。
イベントとプロパティ
Snowflake Marketplaceで利用可能なデータの概要メッセージイベントデータ
詳細については、イベントストリームを参照してください。 ユーザーが生成した各メッセージイベントには、次のメタデータがレコードに添付されます。| Column Name | Type | Description | Example |
|---|---|---|---|
| event_id | UUID | イベントを表す一意のID | dc76df03-287c-403a-aabd-b2d4fe44e5c6 |
| event_kind | string | 発生したイベントのタイプ。イベントの種類のリストはこちらにあります。 | message.email.opened |
| event_impression_timestamp | unix_timestamp | OneSignalがイベントを処理する時刻 | 1684951205 |
| subscription_id | UUID | デバイス/サブスクリプションを表す一意のID | 6e8b6978-75a4-4882-878c-2d15a78c2409 |
| subscription_language | string | このサブスクリプションの言語 | en |
| subscription_timezone | integer | このサブスクリプションの指定されたタイムゾーン | -25200 |
| subscription_device_type | string | このサブスクリプションが使用するデバイスのタイプ | SMS |
| onesignal_id | UUID | インプレッションを行ったユーザーのonesignal_id | dc76df03-287c-403a-aabd-b2d4fe44e5c6 |
| external_id | string | インプレッションを行ったユーザーのexternal_id | MyExternalId |
| message_id | UUID | メッセージを表す一意のID | dc76df03-287c-403a-aabd-b2d4fe44e5c6 |
| message_name | string | 通知/メッセージの人間が読める形式のID | Campaign 1 |
| message_title | string | 通知/メッセージのタイトル。現時点では英語のみ | Bonus 50 coins when you play! |
| message_body | string | メッセージの本文。(切り捨て)現時点では英語のみ | Play against your friends and earn an additional... |
メッセージイベントの種類
詳細については、イベントストリームを参照してください。 メッセージイベントは、Snowflake Marketplaceで提供する最初のデータカテゴリです。追加のデータカテゴリのリクエストがある場合は、snowflake-data-sharing@onesignal.comまでお問い合わせください!
データ保持
OneSignalからSnowflake経由で共有されるデータは、30日間保持されます。この期間を超えてデータを保持するには、関連データを独自のテーブルにコピーすることをお勧めします。Snowflakeからイベントをインポート
Snowflakeから行動イベントデータをOneSignalに送信して:- ユーザーアクティビティに基づいてJourneysをトリガー
- 行動データに基づいてメッセージングをパーソナライズ
- アウトバウンドメッセージイベント用のEvent Streamsへのアクセス(プランの制限と超過料金が適用されます)
- インバウンドイベント同期用のCustom Eventsへのアクセス(プランの制限と超過料金が適用されます)
- 更新されたアカウントプラン(無料アプリでは利用できません)
- ウェアハウスアクセスを持つSnowflakeアカウント
- Snowflakeテーブルまたはビューに保存されたイベントデータ
- OneSignalからSnowflakeインスタンスへのネットワーク接続
- 適切な権限を持つユーザー認証情報
1
OneSignal用の専用ロールを作成
Snowflakeのベストプラクティスに従ってロール階層を作成します:
2
専用ウェアハウスを作成
OneSignal操作用のコスト最適化されたウェアハウスを作成します:
3
ユーザーを作成して権限を付与
OneSignalユーザーを作成し、イベントデータへのアクセスを許可します:
4
ブックキーピングデータベースを作成(Advanced Sync Engine)
OneSignalの同期状態管理用のプライベートデータベースを作成します:
Basic Sync Engineまたは読み取り専用モードを使用している場合は、この手順をスキップしてください。
5
認証を設定
セキュリティ強化のためにキーペア認証(推奨)を設定します:
- Snowflakeのドキュメントに従って公開鍵/秘密鍵ペアを生成します
- Snowflakeユーザーで公開鍵を設定します
- OneSignalの接続設定で秘密鍵を使用します
6
OneSignalに接続
OneSignalで、Data > Integrationsに移動し、Add Integrationをクリックします。Snowflakeを選択し、次の接続詳細を提供します:
- Account Name: Snowflakeアカウント識別子(例:
abc123.us-east-1) - Warehouse:
CENSUS_WAREHOUSE - User:
CENSUS - Database: イベントデータデータベース名
- Schema: イベントデータスキーマ名
- Authentication: キーペア(秘密鍵とオプションのパスフレーズを提供)
イベントデータマッピング
をOneSignalのカスタムイベント形式にマッピングします:| OneSignalフィールド | 説明 | 必須 | |
|---|---|---|---|
name | event_name | イベント識別子 | はい |
external_id | user_id | ユーザー識別子 | はい |
timestamp | event_timestamp | イベントが発生した時刻 | いいえ |
properties | event_data | いいえ |
イベントテーブルスキーマの例
SQLクエリモード
カスタムSQLクエリを記述してイベントデータを変換します:高度な設定
ウェアハウスコストの管理
- コスト最適化のためにX-Smallウェアハウスサイズを使用
- 自動一時停止(60秒)と自動再開を設定
- オフピーク時間中に同期をスケジュール
- 他のバッチ処理システムとウェアハウスを共有することを検討
ライブ同期のサポート
リアルタイムイベント処理のために、イベントテーブルで変更追跡を有効にします:ネットワークセキュリティ
Snowflakeの許可されたIPネットワークポリシーを使用している場合は、OneSignalのIPアドレスを許可リストに追加してください。現在のIP範囲については、OneSignalサポートにお問い合わせください。制限事項
- 複雑な分析クエリは、ウェアハウスのパフォーマンスとコストに影響を与える可能性があります
- ユーザー/パスワード認証は2025年11月に非推奨になります
- CENSUSデータベースはOneSignal操作専用に予約されています
OneSignalとのデータ共有を切断
OneSignalとのデータ共有を無効化するには、snowflake-data-sharing@onesignal.comにメールでリクエストしてください。
FAQ
どの認証方法を使用すべきですか?
キーペア認証(推奨)を使用してください。ユーザー/パスワード認証は、2025年11月からSnowflakeによってブロックされます。既存のウェアハウスを使用できますか?
はい、dbtやFivetranなどの他のバッチ処理システムとウェアハウスを共有して、コストを最適化できます。ウェアハウスがイベント処理のニーズに十分な容量があることを確認してください。コストを最適化するにはどうすればよいですか?
- X-Smallウェアハウスサイズを使用
- 積極的な自動一時停止(60秒)を設定
- オフピーク時間中に同期をスケジュール
- 継続的な同期の代わりに時間単位/日単位の同期を使用