Skip to main content

OneSignal Snowflake entegrasyon genel bakışı


Genel Bakış

OneSignal + Snowflake entegrasyonu iki güçlü veri işlem hattını destekler:
  • Dışa Aktarma: Analiz ve raporlama için OneSignal’den Snowflake’e mesajlaşma etkinliği verilerini (push, e-posta, SMS, uygulama içi) otomatik olarak gönderin.
  • İçe Aktarma: Otomatik Journey’leri ve kişiselleştirilmiş mesajlaşmayı tetiklemek için Snowflake veri kümelerinizden OneSignal’e özel kullanıcı etkinliklerini senkronize edin.
Bu entegrasyonlar birlikte, kullanıcı etkileşim verileri üzerinde tam kontrol sağlar—gelişmiş analitik ve gerçek zamanlı davranış odaklı mesajlaşmayı güçlendirir.

OneSignal etkinliklerini Snowflake’e aktarma

Aşağıdakiler için mesajlaşma performansı ve etkileşim etkinliklerini (örneğin, gönderimler, açılmalar, tıklamalar) Snowflake’e gönderin:
  • Özel panolar ve raporlar oluşturma
  • Kanallar arasında teslimat ve etkileşim eğilimlerini takip etme
  • Analiz için OneSignal verilerini diğer iş verileriyle birleştirme
Gereksinimler
  • OneSignal Professional Planı (ücretsiz uygulamalarda mevcut değildir).
  • Snowflake hesabı
  • Snowflake hesabınızın IMPORT SHARE ve CREATE DATABASE rollerine sahip olduğundan emin olun.
    • Paylaşımı kabul etmek için ACCOUNTADMIN rolünü kullanmanızı öneririz.
Kurulum Adımları

1. Kaydolun

Snowflake entegrasyonunu etkinleştirmek için, Message Events Data için OneSignal Marketplace listesi üzerinden erişim talep etmeniz gerekecek. Oradan daha fazla bilgi almak için ekibinizle iletişime geçeceğiz.

2. Hesap Bilgilerini Sağlayın

Ekibinizle bağlantı kurduktan sonra, sizinle veri paylaşabilmemiz için bize bazı detaylar sağlamanız gerekecek. Snowflake Hesap Kimliğiniz ve Snowflake Organizasyon Kimliğiniz gerekli olacak. Bu bilgileri almanın en kolay yolu “Copy account identifier” düğmesine tıklamaktır (aşağıda gösterildiği gibi).
OneSignal Marketplace listesi üzerinden bizimle iletişimde olmalısınız. Ancak, hesap bilgisi sağlama hakkında başka sorularınız varsa, [email protected] adresine e-posta gönderebilirsiniz

Snowflake hesap tanımlayıcısını kopyalama

Programa kabul edildiğinizde, birkaç şeye dikkat edin:
  • OneSignal’den programa hoş geldiniz e-postası
  • Snowflake’ten veri paylaşımının tamamlandığını bildiren e-posta

Snowflake veri paylaşımı bildirim e-postası

3. Snowflake içinde veri paylaşımını kabul edin

Snowflake’ten veri paylaşımının tamamlandığını bildiren bir e-posta aldığınızda, Snowflake uygulamasına giriş yapabilmeli ve veri paylaşımını kabul edebilmelisiniz. VeriÖzel Paylaşım bölümüne gidin, burada yeni bir Özel Paylaşılan Liste görebilmelisiniz. Al düğmesine tıkladığınızda, verileriniz bölgenize kopyalanmaya başlayacaktır.

Snowflake özel paylaşım arayüzü

Not: Al düğmesi mevcut değilse ancak bir İstek düğmesi varsa, paylaşımı yapmaya çalışan rolün izinleri CREATE DATABASE veya IMPORT SHARE içermemektedir. ACCOUNTADMIN rolüne geçmenizi öneririz. Verilerin kopyalanması biraz zaman alacaktır. Veriler kullanılabilir olduğunda Snowflake ek bir e-posta ile takip edecektir. Şuna benzer bir iletişim kutusu görmelisiniz

Veri kopyalama durumu iletişim kutusu

Veriler kullanıma hazır olduğunda, listelemenizde yeni bir Al düğmesi mevcut olmalıdır. Al düğmesine tıklayın ve yeni bir iletişim kutusu ile karşılanacaksınız

Veritabanı yapılandırma iletişim kutusu

Veritabanı ve veritabanı rollerinin adını tercih ettiğiniz bir şeye ayarlayın. Ardından Al’a tıklayın

Veri paylaşımı kurulum tamamlama

Bu kadar! Veriler artık OneSignal’den Snowflake’e senkronize ediliyor. Senkronizasyon sıklığı her 24 saatte bir kez olarak ayarlanmıştır, bu nedenle ilk veriler bir sonraki güne kadar kullanılamayabilir.

Etkinlikler ve Özellikler

Snowflake Marketplace’inde mevcut verilere genel bakış

Mesaj Etkinlik Verileri

Daha fazla ayrıntı için Etkinlik Akışları bölümüne bakın. Bir kullanıcı tarafından oluşturulan her mesaj etkinliği için, aşağıdaki meta veriler kayda eklenecektir.
Sütun AdıTürAçıklamaÖrnek
event_idUUIDEtkinliği temsil eden benzersiz bir IDdc76df03-287c-403a-aabd-b2d4fe44e5c6
event_kindstringGerçekleşen etkinliğin türü. Etkinlik türlerinin listesi burada bulunabilir.message.email.opened
event_impression_timestampunix_timestampOnesignal’in etkinliği işlediği zaman1684951205
subscription_idUUIDCihazı/aboneliği temsil eden benzersiz bir ID6e8b6978-75a4-4882-878c-2d15a78c2409
subscription_languagestringBu aboneliğin dilien
subscription_timezoneintegerBu aboneliğin belirtilen saat dilimi-25200
subscription_device_typestringBu aboneliğin kullandığı cihazın türü.SMS
onesignal_idUUIDGösterimi yapan kullanıcının onesignal_id’sidc76df03-287c-403a-aabd-b2d4fe44e5c6
external_idstringGösterimi yapan kullanıcının external_id’siMyExternalId
message_idUUIDMesajı temsil eden benzersiz bir IDdc76df03-287c-403a-aabd-b2d4fe44e5c6
message_namestringBildirim/Mesajın okunabilir ID’siCampaign 1
message_titlestringBildirim/Mesajın Başlığı.Şu anda yalnızca İngilizceBonus 50 coins when you play!
message_bodystringMesajın Gövdesi. (Kısaltılmış) Şu anda yalnızca İngilizce.Play against your friends and earn an additional...

Mesaj Etkinlik Türleri

Daha fazla ayrıntı için Etkinlik Akışları bölümüne bakın. Mesaj Etkinlikleri, Snowflake Marketplace’inde sunacağımız ilk veri kategorisidir. Ek veri kategorileri için taleplerle birlikte [email protected] adresinden bize ulaşın!

Veri Saklama

OneSignal’den Snowflake aracılığıyla paylaşılan veriler 30 günlük bir süre boyunca saklanır. Bu sürenin ötesinde veri koruması sağlamak için, ilgili verileri kendi tablolarınıza kopyalamanızı öneririz.

Snowflake’ten etkinlikleri içe aktarma

Aşağıdakiler için Snowflake’ten OneSignal’e davranışsal etkinlik verilerini gönderin:
  • Kullanıcı aktivitesine dayalı Journey’leri tetikleme
  • Davranışsal verilere dayalı mesajlaşmayı kişiselleştirme
Gereksinimler
  • Giden mesaj etkinlikleri için Event Streams’e erişim (Plan kısıtlamaları ve aşımlar geçerlidir)
  • Gelen etkinlik senkronizasyonu için Custom Events’e erişim (Plan kısıtlamaları ve aşımlar geçerlidir)
  • Güncellenmiş Hesap Planı (ücretsiz uygulamalarda mevcut değildir)
  • Ambar erişimi olan Snowflake hesabı
  • Snowflake tablolarında veya görünümlerinde depolanan Etkinlik verileri
  • OneSignal’den Snowflake örneğinize Ağ bağlantısı
  • Uygun izinlere sahip Kullanıcı kimlik bilgileri
Kurulum Adımları
1

OneSignal için özel rol oluşturun

Snowflake en iyi uygulamalarını takip ederek bir rol hiyerarşisi oluşturun:
-- Create a role for the census user
CREATE ROLE CENSUS_ROLE;

-- Ensure the sysadmin role inherits any privileges the census role is granted
GRANT ROLE CENSUS_ROLE TO ROLE SYSADMIN;
2

Özel ambar oluşturun

OneSignal işlemleri için maliyet açısından optimize edilmiş bir ambar oluşturun:
-- Create a warehouse for the census role, optimizing for cost over performance
CREATE WAREHOUSE CENSUS_WAREHOUSE WITH
    WAREHOUSE_SIZE = XSMALL
    AUTO_SUSPEND = 60
    AUTO_RESUME = TRUE
    INITIALLY_SUSPENDED = FALSE;

GRANT USAGE ON WAREHOUSE CENSUS_WAREHOUSE TO ROLE CENSUS_ROLE;
GRANT OPERATE ON WAREHOUSE CENSUS_WAREHOUSE TO ROLE CENSUS_ROLE;
GRANT MONITOR ON WAREHOUSE CENSUS_WAREHOUSE TO ROLE CENSUS_ROLE;
3

Kullanıcı oluşturun ve izinleri verin

OneSignal kullanıcısını oluşturun ve etkinlik verilerinize erişim verin:
-- Create the census user
CREATE USER CENSUS WITH
    DEFAULT_ROLE = CENSUS_ROLE
    DEFAULT_WAREHOUSE = CENSUS_WAREHOUSE
    PASSWORD = '<strong-unique-password>';

GRANT ROLE CENSUS_ROLE TO USER CENSUS;

-- Grant access to your event data (replace with your actual database/schema)
GRANT USAGE ON DATABASE "<your-database>" TO ROLE CENSUS_ROLE;
GRANT USAGE ON SCHEMA "<your-database>"."<your-schema>" TO ROLE CENSUS_ROLE;
GRANT SELECT ON ALL TABLES IN SCHEMA "<your-database>"."<your-schema>" TO ROLE CENSUS_ROLE;
GRANT SELECT ON FUTURE TABLES IN SCHEMA "<your-database>"."<your-schema>" TO ROLE CENSUS_ROLE;
GRANT SELECT ON ALL VIEWS IN SCHEMA "<your-database>"."<your-schema>" TO ROLE CENSUS_ROLE;
GRANT SELECT ON FUTURE VIEWS IN SCHEMA "<your-database>"."<your-schema>" TO ROLE CENSUS_ROLE;
4

Muhasebe veritabanı oluşturun (Gelişmiş Senkronizasyon Motoru)

OneSignal’in senkronizasyon durum yönetimi için özel bir veritabanı oluşturun:
-- Create a private bookkeeping database
CREATE DATABASE "CENSUS";
GRANT ALL PRIVILEGES ON DATABASE "CENSUS" TO ROLE CENSUS_ROLE;

CREATE SCHEMA "CENSUS"."CENSUS";
GRANT ALL PRIVILEGES ON SCHEMA "CENSUS"."CENSUS" TO ROLE CENSUS_ROLE;
GRANT CREATE STAGE ON SCHEMA "CENSUS"."CENSUS" TO ROLE CENSUS_ROLE;
Temel Senkronizasyon Motoru veya salt okunur mod kullanıyorsanız bu adımı atlayın.
5

Kimlik doğrulamayı yapılandırın

Gelişmiş güvenlik için anahtar çifti kimlik doğrulamasını (önerilen) ayarlayın:
  1. Snowflake’in belgelerini takip ederek bir genel/özel anahtar çifti oluşturun
  2. Snowflake kullanıcınızda genel anahtarı yapılandırın
  3. OneSignal’in bağlantı ayarlarında özel anahtarı kullanın
Alternatif olarak, parola kimlik doğrulaması kullanabilirsiniz (kullanımdan kaldırılmıştır - Kasım 2025’te engellenecektir).
6

OneSignal'e bağlanın

OneSignal’da, Veri > Entegrasyonlar’a gidin ve Entegrasyon Ekle’ye tıklayın.Snowflake’i seçin ve aşağıdaki bağlantı ayrıntılarını sağlayın:
  • Hesap Adı: Snowflake hesap tanımlayıcınız (örneğin, abc123.us-east-1)
  • Ambar: CENSUS_WAREHOUSE
  • Kullanıcı: CENSUS
  • Veritabanı: Etkinlik veri veritabanı adınız
  • Şema: Etkinlik veri şemanızın adı
  • Kimlik Doğrulama: Anahtar çifti (özel anahtar ve isteğe bağlı parola sağlayın)

Etkinlik veri eşleştirme

verilerinizi OneSignal’ın özel etkinlik formatına eşleştirin:
OneSignal AlanıAçıklamaGerekli
nameevent_nameEtkinlik tanımlayıcıEvet
external_iduser_idKullanıcı tanımlayıcıEvet
timestampevent_timestampEtkinliğin gerçekleştiği zamanHayır
propertiesevent_dataHayır

Örnek Etkinlik Tablosu Şeması

-- Example Snowflake event table
CREATE TABLE analytics.user_events (
    event_id STRING,
    event_name STRING NOT NULL,
    user_id STRING NOT NULL,
    event_timestamp TIMESTAMP_TZ DEFAULT CURRENT_TIMESTAMP(),
    event_properties VARIANT,
    session_id STRING,
    device_type STRING
);

SQL Sorgu Modu

Etkinlik verilerinizi dönüştürmek için özel SQL sorguları yazın:
-- Example: Recent high-value events
SELECT
    event_name,
    user_id,
    event_timestamp,
    event_properties
FROM analytics.user_events
WHERE event_timestamp >= DATEADD(day, -7, CURRENT_TIMESTAMP())
    AND event_properties:value::NUMBER > 100
ORDER BY event_timestamp DESC;

Gelişmiş yapılandırma

Ambar Maliyetlerini Yönetme

  • Maliyet optimizasyonu için X-Small ambar boyutunu kullanın
  • Otomatik askıya alma (60 saniye) ve otomatik devam ettirmeyi yapılandırın
  • Yoğun olmayan saatlerde senkronizasyonları planlayın
  • Ambarı diğer toplu işleme sistemleriyle paylaşmayı düşünün

Canlı Senkronizasyon Desteği

Gerçek zamanlı etkinlik işleme için, etkinlik tablolarınızda değişiklik takibini etkinleştirin:
ALTER TABLE "analytics"."user_events" SET CHANGE_TRACKING = TRUE;

Ağ Güvenliği

Snowflake’in İzin Verilen IP’ler ağ politikasını kullanıyorsanız, OneSignal’in IP adreslerini izin listenize ekleyin. Güncel IP aralıkları için OneSignal desteğine başvurun.

Sınırlamalar

  • Karmaşık analitik sorgular ambar performansını ve maliyetlerini etkileyebilir
  • Kullanıcı/Parola kimlik doğrulaması Kasım 2025’te kullanımdan kaldırılacaktır
  • CENSUS veritabanı yalnızca OneSignal işlemleri için ayrılmıştır

OneSignal ile veri paylaşımını kesme

OneSignal ile veri paylaşımınızı devre dışı bırakma talebi için lütfen bize [email protected] adresinden e-posta gönderin.

SSS

Hangi kimlik doğrulama yöntemini kullanmalıyım?

Anahtar çifti kimlik doğrulamasını (önerilen) kullanın. Kullanıcı/Parola kimlik doğrulaması Kasım 2025’ten itibaren Snowflake tarafından engellenecektir.

Mevcut bir ambar kullanabilir miyim?

Evet, maliyetleri optimize etmek için bir ambarı dbt veya Fivetran gibi diğer toplu işleme sistemleriyle paylaşabilirsiniz. Ambarın etkinlik işleme ihtiyaçlarınız için yeterli kapasiteye sahip olduğundan emin olun.

Maliyetleri nasıl optimize edebilirim?

  • X-Small ambar boyutunu kullanın
  • Agresif otomatik askıya alma (60 saniye) yapılandırın
  • Yoğun olmayan saatlerde senkronizasyonları planlayın
  • Sürekli senkronizasyon yerine saatlik/günlük senkronizasyonlar kullanın