개요
OneSignal + Trino 통합을 사용하면 Trino 클러스터에서 OneSignal로 사용자 지정 이벤트를 동기화하여 사용자 행동을 기반으로 자동화된 메시징 캠페인 및 저니를 트리거할 수 있습니다. Trino는 여러 소스의 대규모 데이터 세트에 대해 빠른 분석 쿼리를 실행하도록 설계된 분산 SQL 쿼리 엔진입니다.요구사항
- Access to Event Streams for outbound message events (Plan limitations and overages apply)
- Access to Custom Events for inbound event syncing (Plan limitations and overages apply)
- Updated Account Plan (not available on free apps)
Trino
- 네트워크 액세스가 가능한 Trino 클러스터
- 적절한 권한이 있는 사용자 자격 증명
- TLS 연결 지원(OneSignal 필요)
- Trino 카탈로그를 통해 액세스할 수 있는 이벤트 데이터
설정
1
Trino 연결 구성
OneSignal에서 Data > Integrations으로 이동하여 Add Integration을 클릭합니다.Trino를 선택하고 다음 연결 세부 정보를 제공합니다:
- Host: Trino 클러스터 호스트명
- Username: Trino 사용자 이름
- Password: Trino 비밀번호
- Port: 443(기본값) 또는 사용자 지정 포트
OneSignal은 Trino에 대한 TLS 연결을 요구합니다. 인스턴스가 포트 443에서 실행되지 않는 경우 사용자 지정 포트를 지정하세요.
2
고급 동기화 엔진 구성(선택 사항)
성능 향상을 위해 전용 CENSUS 카탈로그를 설정합니다:
CENSUS라는 카탈로그를 생성하고CENSUS라는 스키마를 포함합니다- 커넥터가 다음을 지원하는지 확인합니다:
CREATE TABLE및DROP TABLE작업- 테이블 쓰기(INSERT, DELETE, UPDATE)
CREATE OR REPLACE TABLE문
- OneSignal 사용자에게
CENSUS.CENSUS스키마에 대한 전체 권한을 부여합니다
테스트된 구성에는 MySQL, PostgreSQL, Snowflake, Iceberg 및 Delta Lake 커넥터가 포함됩니다.
이벤트 데이터 매핑
를 OneSignal의 사용자 지정 이벤트 형식에 매핑합니다:| OneSignal 필드 | 설명 | 필수 | |
|---|---|---|---|
name | event_name | 이벤트 식별자 | Yes |
external_id | user_id | 사용자 식별자 | Yes |
timestamp | event_timestamp | 이벤트가 발생한 시간 | No |
properties | event_data | No |
이벤트 쿼리 예시
교차 카탈로그 이벤트 쿼리
동기화 엔진 옵션
기본 동기화 엔진
- 모든 Trino 카탈로그 및 커넥터와 작동
- OneSignal 인프라에서 관리하는 상태 추적
- 추가 요구 사항 없이 더 간단한 설정
고급 동기화 엔진
- 로컬 상태 추적으로 향상된 성능
- 전용
CENSUS.CENSUS카탈로그 및 스키마 필요 - 테이블 쓰기 작업이 있는 커넥터 지원
- 대용량 이벤트 처리에 권장
지원되는 커넥터
OneSignal의 고급 동기화 엔진은 다음과 함께 테스트되었습니다:- MySQL 커넥터(읽기-쓰기 모드)
- PostgreSQL 커넥터(읽기-쓰기 모드)
- Snowflake 커넥터(읽기-쓰기 모드)
- Iceberg 커넥터(S3 및 AWS Glue 포함)
- Delta Lake 커넥터(AWS Glue 및 Starburst Galaxy 카탈로그 포함)
제한사항
- TLS 연결 필요(OneSignal 보안 요구 사항)
- 고급 동기화 엔진에는
CREATE OR REPLACE TABLE지원 필요(Trino October 2023+) - Warehouse Writeback은 아직 지원되지 않음(곧 지원 예정)
WITH절에서 사용자 지정 테이블 옵션을 제공할 수 없음
FAQ
OneSignal과 작동하는 Trino 커넥터는 무엇인가요?
읽기 작업을 지원하는 모든 커넥터는 기본 동기화 엔진과 작동합니다. 고급 동기화 엔진의 경우 테이블 쓰기 및CREATE OR REPLACE TABLE을 지원하는 커넥터가 필요합니다.
단일 동기화에서 여러 카탈로그를 쿼리할 수 있나요?
예! Trino의 연합 쿼리 기능을 사용하면 단일 쿼리에서 여러 소스(PostgreSQL, MySQL, S3 등)의 이벤트 데이터를 결합할 수 있습니다.고급 동기화 엔진이 필요한가요?
아니요, 기본 동기화 엔진은 대부분의 사용 사례에 잘 작동합니다. 향상된 성능이 필요하고 필요한CENSUS.CENSUS 카탈로그를 설정할 수 있는 경우 고급 동기화 엔진을 사용하세요.