Genel Bakış
OneSignal + Snowflake entegrasyonu iki güçlü veri işlem hattını destekler:- Çıkış: 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.
- Giriş: Otomatik Journey’leri ve kişiselleştirilmiş mesajlaşmayı tetiklemek için Snowflake veri kümelerinizden OneSignal’e özel kullanıcı etkinliklerini senkronize edin.
Çıkış kurulumu
support@onesignal.com’a başvurun:- Şirket adınız
- OneSignal organizasyon ID’niz
- Etkinleştirmek istediğiniz uygulama ID’leri
- Ö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
- OneSignal Professional Planı (ücretsiz uygulamalarda mevcut değildir)
- Snowflake hesabı
- Snowflake’te SECURITYADMIN veya ACCOUNTADMIN rolü (kurulum için)
1. Snowflake hesap bilgilerinizi toplayın
Entegrasyonu yapılandırmadan önce, Snowflake hesabınızdan aşağıdaki bilgileri toplayın:- Snowflake Host:
<account_identifier>.snowflakecomputing.comformatındaki hesap URL’niz - Veritabanı adı: OneSignal’in etkinlik verilerini yazacağı veritabanı
- Şema adı: OneSignal tabloları için veritabanı içindeki şema (bu OneSignal tarafından otomatik olarak oluşturulacaktır)
- Warehouse adı: Veri yükleme işlemleri için kullanılacak warehouse

Snowflake hesap tanımlayıcı konumu
2. Snowflake’te kurulum betiğini çalıştırın
OneSignal için gerekli rolü, kullanıcıyı, warehouse’u ve veritabanını oluşturmak için Snowflake warehouse’unuzda aşağıdaki SQL betiğini çalıştırın:3. Kimlik doğrulama için anahtar çifti oluşturun
OneSignal, Snowflake hesabınıza güvenli erişim için anahtar çifti kimlik doğrulaması gerektirir. Anahtarları oluşturmak ve yapılandırmak için şu adımları izleyin:Özel anahtar oluşturun
Genel anahtarı oluşturun
Genel anahtarı Snowflake kullanıcınıza atayın
<YOUR_PUBLIC_KEY_CONTENT> yerine anahtar içeriğini yazın (-----BEGIN PUBLIC KEY----- ve -----END PUBLIC KEY----- satırları olmadan).4. OneSignal’i bağlayın
Entegrasyonu etkinleştirin
Detayları girin
- Host:
<your_account>.snowflakecomputing.com - Port: İsteğe bağlı, varsayılan olarak
443 - Database: örneğin,
ONESIGNAL - Role: İsteğe bağlı, belirtilmezse kullanıcının varsayılan rolü kullanılır
- User: örneğin,
ONESIGNAL_USER - Private Key: Özel anahtar dosyanızın içeriğini yapıştırın (
rsa_key.p8) - Private Key Passphrase: İsteğe bağlı, yalnızca özel anahtarınız şifrelenmiş ise
- Data processing location: Snowflake’e göndermeden önce verilerin işlendiği konum
Entegrasyonu yapılandırın
- Sync Frequency: her 15 dakikada bir kadar sık
- Schema/Table Names:
onesignal_events_<app-id>vemessage_eventsolarak önceden ayarlanmış (düzenlenebilir) - Event Types: hangi etkinlikleri senkronize edeceğinizi seçin—tümünü veya yalnızca ihtiyacınız olanları seçin
Etkinlikleri seçin
Kurulumu tamamlayın
5. Snowflake’te verileri görüntüleyin
İlk senkronizasyon tamamlandıktan sonra, OneSignal etkinlik verilerinizi sorgulayın:support@onesignal.com ile iletişime geçin.Mesaj etkinlikleri ve özellikleri
Mesaj etkinlik türleri
Özellik:event_kind
Tür: String
Mesaj ve etkinlik türü (örneğin message.push.received, message.push.sent).
Etkinlik veri şeması
Bir kullanıcı tarafından oluşturulan her mesaj etkinliği için, aşağıdaki meta veriler kayda eklenecektir.Notlar
- Kaydetme/etkinleştirme sonrası senkronizasyonlar tamamlanması için ek 15-30 dakika alabilir.
- Devre dışı bırakma, devre dışı bırakıldıktan sonra hala bir son senkronizasyonla sonuçlanabilir.
- Verimli veri senkronizasyonunu sağlamak için sistemimiz otomatik olarak hazırlama veri kümelerini oluşturur ve yönetir.
fivetran_{iki rastgele kelime}_staginggibi bir desenle adlandırılan bu veri kümeleri, ana şemanıza entegre edilmeden önce işleme sırasında geçici olarak veri depolar. Bu hazırlama veri kümeleri akıcı bir iş akışını sürdürmek için gereklidir ve otomatik olarak yeniden oluşturulacakları için silinmemelidir.
Eski sürümden geçiş
Şu anda eski Snowflake entegrasyonunu kullanıyorsanız, bu bölüm temel farklılıkları ve sorgularınızı nasıl geçireceğinizi kapsar.Temel farklılıklar
Şema değişiklikleri
Yeni entegrasyon sütunları isteğe bağlı olarak oluşturur. Belirli bir alan için hiçbir etkinlik veri içermiyorsa, o sütun tablonuzda bulunmaz. Bu alan için veri görünürse, sütun otomatik olarak oluşturulur.Sütun yeniden adlandırmaları
Tip çıkarımı
Yeni entegrasyon otomatik tip çıkarımı kullanır. Bir sütundaki tüm değerler sayısal ise (örneğin, tümEXTERNAL_ID değerleriniz sayı), sütun NUMBER olarak tiplenebilir. Daha sonra sayısal olmayan bir değer görünürse, sütun tipi VARCHAR’a yükseltilir.
Gerekirse açık dönüştürme kullanın:
Sorguları geçirme
Mevcut sorguları geçirmek için:- Eski veritabanına yapılan referansları yeni Snowflake veritabanınızı işaret edecek şekilde güncelleyin
- Yukarıda listelenen sütun yeniden adlandırmalarını hesaba katın
- Gerektiğinde açık tip dönüştürme ekleyin
ONESIGNAL_DB.ONESIGNAL_EVENTS_XXXXX.MESSAGE_EVENTS yerine gerçek veritabanı, şema ve tablo adlarınızı yazın.Giriş kurulumu
Aşağıdakiler için Snowflake’ten OneSignal’e davranışsal etkinlik verileri alın:- Kullanıcı etkinliğine dayalı Journey’leri tetikleme
- Davranışsal verilere dayalı mesajlaşmayı kişiselleştirme
- 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)
- Warehouse 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
OneSignal için özel rol oluşturun
Özel warehouse oluşturun
Kullanıcı oluşturun ve izinleri verin
Defter tutma veritabanı oluşturun (Advanced Sync Engine)
Kimlik doğrulamayı yapılandırın
- Snowflake’in belgelerini takip ederek genel/özel anahtar çifti oluşturun
- Snowflake kullanıcınızda genel anahtarı yapılandırın
- OneSignal’in bağlantı ayarlarında özel anahtarı kullanın
OneSignal'e bağlanın
- Account Name: Snowflake hesap tanımlayıcınız (örneğin,
abc123.us-east-1) - Warehouse:
CENSUS_WAREHOUSE - User:
CENSUS - Database: Etkinlik verisi veritabanı adınız
- Schema: Etkinlik verisi şema adınız
- Authentication: Key-pair (ö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:Örnek Etkinlik Tablosu Şeması
SQL Sorgu Modu
Etkinlik verilerinizi dönüştürmek için özel SQL sorguları yazın:Gelişmiş yapılandırma
Warehouse Maliyetlerini Yönetme
- Maliyet optimizasyonu için X-Small warehouse boyutu kullanın
- Otomatik askıya alma (60 saniye) ve otomatik devam ettirmeyi yapılandırın
- Yoğun olmayan saatlerde senkronizasyonları planlayın
- Warehouse’u 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:Ağ Güvenliği
Snowflake’in İzin Verilen IP’ler ağ politikasını kullanıyorsanız, OneSignal’in IP adreslerini izin verilenler listesine ekleyin. Mevcut IP aralıkları için OneSignal desteğiyle iletişime geçin.Sınırlamalar
- Karmaşık analitik sorgular warehouse performansını ve maliyetlerini etkileyebilir
- Kullanıcı/Parola kimlik doğrulaması Kasım 2025’te kullanımdan kaldırılacak
- CENSUS veritabanı yalnızca OneSignal işlemleri için ayrılmıştır
SSS
Hangi kimlik doğrulama yöntemini kullanmalıyım?
Anahtar çifti kimlik doğrulaması kullanın (önerilir). Kullanıcı/Parola kimlik doğrulaması Kasım 2025’ten itibaren Snowflake tarafından engellenecektir.Mevcut bir warehouse kullanabilir miyim?
Evet, maliyetleri optimize etmek için dbt veya Fivetran gibi diğer toplu işleme sistemleriyle bir warehouse paylaşabilirsiniz. Warehouse’un etkinlik işleme ihtiyaçlarınız için yeterli kapasiteye sahip olduğundan emin olun.Maliyetleri nasıl optimize edebilirim?
- X-Small warehouse boyutu 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