Łączenie Klaviyo i BigQuery (odwrotne ETL)
Zaawansowana platforma danych klientów Klaviyo nie jest zawarta w standardowej aplikacji marketingowej Klaviyo, a dostęp do powiązanych funkcji wymaga subskrypcji. Przejdź do naszego przewodnika po rozliczeniach, aby dowiedzieć się, jak kupić ten plan.
Konfiguracja środowiska i połączenie
Przegląd: Wykonaj poniższe kroki, aby przygotować BigQuery dla Klaviyo. Utworzysz wymagane schematy (w zestawie danych/projekcie), skonfigurujesz dedykowane konto usługi i klucz, przypiszesz minimalne wymagane uprawnienia, zweryfikujesz konfigurację i połączysz BigQuery z Klaviyo.
Aby uzyskać szczegółowe informacje na temat działania importu z hurtowni danych w Klaviyo- w tym struktury schematu, wymaganych tabel i mapowania pól - zobacz Jak działa import z hurtowni danych Klaviyo w.
1) Utwórz wymagane schematy / zestawy danych
1) Utwórz wymagane schematy / zestawy danych
W BigQuery utwórz dwa zestawy danych w projekcie, którego będziesz używać dla Klaviyo.
CREATE SCHEMA `KLAVIYO_IMPORT_FROM_DWH`; CREATE SCHEMA `KLAVIYO_TMP`;
-
KLAVIYO_IMPORT_FROM_DWH: Tabele i widoki utworzone w tym zestawie danych będą dostępne dla Klaviyo do odczytu/zapisu. -
KLAVIYO_TMP: Dane tymczasowe lub przejściowe używane podczas operacji synchronizacji.
2) Utwórz konto i klucz Klaviyo Service
2) Utwórz konto i klucz Klaviyo Service
Utwórz konto usługi Google (np. KLAVIYO_DATA_TRANSFER_USER), którego Klaviyo będzie używać wyłącznie do tej integracji. Pobierz klucz JSON dla tego konta i przechowuj go bezpiecznie.
- Przejdź do IAM & Administrator → Konto usługi w konsoli GCP.
- Utwórz nowe konto usługi (lub wybierz istniejące dedykowane dla Klaviyo).
- W zakładce Keys utwórz nowy klucz typu JSON. Zachowaj ten plik klucza w bezpiecznym miejscu - będziesz go potrzebować podczas konfigurowania połączenia w Klaviyo.
3) Przypisz wymagane uprawnienia
3) Przypisz wymagane uprawnienia
Przyznaj kontu usługi następujące role w zakresie dwóch utworzonych zestawów danych:
| Zestaw danych | Minimalne wymagane role | Opis |
|---|---|---|
KLAVIYO_TMP |
BigQuery Data Editor + BigQuery Job User
| Umożliwia Klaviyo tworzenie i zarządzanie tymczasowymi tabelami, zadaniami itp. |
KLAVIYO_IMPORT_FROM_DWH |
BigQuery Data Viewer + BigQuery Job User
| Pozwala Klaviyo czytać z twoich tabel. |
-- Przykładowe polecenia w GCP CLI (zastąp symbole zastępcze): gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \ --member="serviceAccount:KLAVIYO_DATA_TRANSFER_USER@YOUR_PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/bigquery.dataEditor" \ --condition=None \ --dataset="KLAVIYO_TMP" gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \ --member="serviceAccount:KLAVIYO_DATA_TRANSFER_USER@YOUR_PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/bigquery.dataViewer" \ --condition=None \ --dataset="KLAVIYO_IMPORT_FROM_DWH"
4) Zweryfikuj konfigurację (opcjonalnie)
4) Zweryfikuj konfigurację (opcjonalnie)
4.1 Potwierdź istnienie zbiorów danych4.1 Potwierdź istnienie zbiorów danych
SELECT schema_name
FROM `YOUR_PROJECT_ID.INFORMATION_SCHEMA.SCHEMATA`
WHERE schema_name IN ('KLAVIYO_IMPORT_FROM_DWH','KLAVIYO_TMP');
4.2 Potwierdź dostęp do konta usługi4.2 Potwierdź dostęp do konta usługi
Użyj klucza konta usługi, aby uwierzytelnić się za pomocą interfejsu BigQuery CLI lub API i uruchomić proste zapytanie:
bq --project_id=YOUR_PROJECT_ID \ --dataset_id=KLAVIYO_IMPORT_FROM_DWH \ query --use_legacy_sql=false \ 'SELECT COUNT(*) FROM `YOUR_PROJECT_ID.KLAVIYO_IMPORT_FROM_DWH.some_table` LIMIT 1'4.3 Sprawdź uprawnienia dla każdego zbioru danych
4.3 Sprawdź uprawnienia dla każdego zbioru danych
SELECT * FROM `YOUR_PROJECT_ID.KLAVIYO_IMPORT_FROM_DWH.INFORMATION_SCHEMA.OBJECT_PRIVILEGES` WHERE grantee = 'KLAVIYO_DATA_TRANSFER_USER@YOUR_PROJECT_ID.iam.gserviceaccount.com';4.4 Opcjonalnie: Zatwierdź operacje tworzenia/odczytu
4.4 Opcjonalnie: Zatwierdź operacje tworzenia/odczytu
-- Utwórz test w KLAVIYO_TMP CREATE TABLE `YOUR_PROJECT_ID.KLAVIYO_TMP.test_permissions` (id INT64); DROP TABLE `YOUR_PROJECT_ID.KLAVIYO_TMP.test_permissions`; -- Test select w KLAVIYO_IMPORT_FROM_DWH SELECT * FROM `YOUR_PROJECT_ID.KLAVIYO_IMPORT_FROM_DWH.some_existing_table` LIMIT 1;
Wskazówka: Przeprowadź te kontrole przy użyciu tego samego konta usługi i klucza, które podasz na stronie Klaviyo. Zachowaj kopię wyników na potrzeby audytu.
5) Połącz Klaviyo z BigQuery
5) Połącz Klaviyo z BigQuery
Po skonfigurowaniu środowiska BigQuery dokończ połączenie w Klaviyo.
- W Klaviyo przejdź do Zaawansowane → Synchronizacja na lewym pasku bocznym.
- Kliknij przycisk Utwórz synchronizację.
- Wybierz opcję Importuj lub eksportuj dane do hurtowni danych.
- Wybierz BigQuery jako swoją hurtownię danych.
- Kliknij przycisk Połącz z BigQuery.
Po wyświetleniu monitu podaj następujące szczegóły konfiguracji połączenia:
| Pole | Opis | Gdzie go znaleźć |
|---|---|---|
| Identyfikator projektu | Twój identyfikator projektu Google Cloud. | Znajdziesz ją w konsoli GCP na górze strony projektu. |
| Zestaw danych | Zbiór danych (schemat) zawierający Twoje tabele Klaviyo (np. KLAVIYO_IMPORT_FROM_DWH). | Użyj zestawu danych utworzonego w kroku 1. Wybierz ten zestaw danych podczas konfigurowania połączenia. |
| Klucz konta usługi (JSON) | Pobrany plik klucza JSON dla usługi konto. | Prześlij lub wklej zawartość pliku klucza JSON utworzonego w kroku 2. |
Po nawiązaniu połączenia: Klaviyo zweryfikuje połączenie, przetestuje dostęp do Twoich zestawów danych, a następnie pozwoli Ci skonfigurować synchronizację - zarówno dla importowania danych do Klaviyo, jak i eksportowania danych Klaviyo do BigQuery.
Następny krok: Po pomyślnym połączeniu utwórz pierwszą synchronizację importu lub eksportu w Klaviyo i zacznij przenosić dane do lub z BigQuery.