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.

Zrzut ekranu z 2025-11-09 o 12:41:47 PM.png
Przegląd

Przegląd

Ten przewodnik prowadzi administratorów Redshift przez przygotowanie Amazon Redshift do Klaviyo, przyznanie minimalnego wymaganego dostępu i ukończenie połączenia, dzięki czemu możesz importować dane profilu zgodnie z harmonogramem. Dowiesz się, jak:

  1. Utwórz schematy KLAVIYO_TMP i KLAVIYO_IMPORT_FROM_DWH
  2. Utwórz dedykowanego użytkownika usługi dla Klaviyo
  3. Przyznaj uprawnienia o najniższych uprawnieniach
  4. (Opcjonalnie) Sprawdź uprawnienia i łączność.
  5. Połącz Redshift z Klaviyo i zacznij tworzyć synchronizacje

Aby dowiedzieć się, jak działa import z hurtowni danych - w tym obsługiwane obiekty i najlepsze praktyki dotyczące struktury tabeli - zapoznaj się z sekcją Zrozumienie importu z hurtowni danych na Klaviyo stronie.

Utwórz wymagane schematy

Utwórz wymagane schematy

Utwórz dwa schematy w bazie danych, której Redshift będzie używać dla Klaviyo:

-- Uruchom jako administrator Redshift DB lub rola z CREATE SCHEMA
CREATE SCHEMA IF NOT EXISTS klaviyo_import_from_dwh;
CREATE SCHEMA IF NOT EXISTS klaviyo_tmp;
  • KLAVIYO_IMPORT_FROM_DWH - Umieść tutaj swoje ostateczne, gotowe do synchronizacji tabele lub widoki. Podczas konfiguracji Klaviyo wyświetla listę obiektów w tym schemacie do wyboru, więc uwzględnij tylko tabele, które planujesz zaimportować.
  • KLAVIYO_TMP - Używany wyłącznie przez Klaviyo do tabel tymczasowych / przejściowych podczas zadań synchronizacji. Nie modyfikuj tutaj danych - Klaviyo automatycznie zarządza i czyści ten schemat.
Utwórz użytkownika serwisu Klaviyo

Utwórz użytkownika serwisu Klaviyo

Utwórz dedykowanego użytkownika bazy danych dla Klaviyo z silnym hasłem, które możesz zmieniać niezależnie.

-- Zastąp własnymi nazwami i silnym hasłem
CREATE USER klaviyo_data_transfer_user WITH PASSWORD 'REPLACE_WITH_STRONG_PASSWORD';

Utwórz rolę do zarządzania dotacjami dla użytkownika usługi:

CREATE ROLE klaviyo_data_transfer_role;
GRANT ROLE klaviyo_data_transfer_role TO klaviyo_data_transfer_user;

Przechowuj bezpiecznie nazwę użytkownika i hasło - będziesz ich używać podczas łączenia Klaviyo z Redshift.

Przyznaj wymagane uprawnienia (najmniejsze uprawnienia)

Przyznaj wymagane uprawnienia (najmniejsze uprawnienia)

-- 1) Zezwól na tabele tymczasowe
GRANT TEMPORARY ON DATABASE your_database TO ROLE klaviyo_data_transfer_role;

-- 2) Uprawnienia do schematu przejściowego, którym zarządza Klaviyo
GRANT USAGE ON SCHEMA klaviyo_tmp TO ROLE klaviyo_data_transfer_role;
GRANT CREATE ON SCHEMA klaviyo_tmp TO ROLE klaviyo_data_transfer_role;

-- 3) Dostęp tylko do odczytu do schematu importu
GRANT USAGE ON SCHEMA klaviyo_import_from_dwh TO ROLE klaviyo_data_transfer_role;
GRANT SELECT ON ALL TABLES IN SCHEMA klaviyo_import_from_dwh TO ROLE klaviyo_data_transfer_role;
-- Pamiętaj o przyznaniu dostępu do nowych tabel w przyszłości

-- 3a) Grant SELECT on specific views (repeat as needed)
GRANT SELECT ON VIEW klaviyo_import_from_dwh.example_view_name TO ROLE klaviyo_data_transfer_role;
(Opcjonalnie) Zweryfikuj konfigurację

(Opcjonalnie) Zweryfikuj konfigurację

Przeprowadź kilka szybkich kontroli jako użytkownik Klaviyo, aby potwierdzić, że dotacje są prawidłowe.

-- Przełącz się do docelowej bazy danych
SET search_path TO klaviyo_tmp;

-- 4.1 Validate create/read in KLAVIYO_TMP
CREATE TABLE IF NOT EXISTS permission_check (id INT);
INSERT INTO permission_check VALUES (1);
SELECT COUNT(*) FROM permission_check; -- expect 1
DROP TABLE permission_check;

-- 4.2 Potwierdź widoczność tabel importu
SET search_path TO klaviyo_import_from_dwh;
SELECT tablename FROM pg_table_def
WHERE schemaname = 'klaviyo_import_from_dwh'
LIMIT 25;

-- 4.3 Potwierdź SELECT na tabeli źródłowej lub widoku
SELECT * FROM klaviyo_import_from_dwh.EXAMPLE_TABLE;
Dostęp do sieci

Dostęp do sieci

Klaviyo musi być w stanie dotrzeć do Twojego Redshift punkt końcowy.

  • Publiczny Redshift punkt końcowy: biała lista Klaviyostatycznych adresów IP w Twojej zaporze sieciowej lub grupie zabezpieczeń.
  • Prywatny punkt końcowy (np. PrivateLink): zapewnij łączność za pośrednictwem wewnętrznej ścieżki sieciowej i zasad bezpieczeństwa.

Jeśli korzystasz z grup zabezpieczeń, zezwól na dostęp przychodzący na porcie Redshift (domyślnie 5439) dla zakresów IP Klaviyo:

184.72.183.187/32
52.206.71.52/32
3.227.146.32/32
44.198.39.11/32
35.172.58.121/32
3.228.37.244/32
54.88.219.8/32
3.214.211.176/32
Przygotuj tabele importu (struktura & wydajność)

Przygotuj tabele importu (struktura & wydajność)

Upewnij się, że wszystkie tabele, które planujesz zaimportować, są zgodne z tymi konwencjami, aby zapewnić dokładną i wydajną synchronizację przyrostową:

  • Kolumna znacznika czasu: Uwzględnij znacznik czasu utworzenia wiersza lub ostatniej aktualizacji (np. inserted_at, updated_at, modified_at).
  • Aktualizacje monotoniczne: Znacznik czasu powinien zwiększać się przy każdej zmianie wiersza.
  • Strefa czasowa: Użyj UTC lub dołącz informacje o strefie czasowej. W przypadku braku, Klaviyo przyjmuje UTC.
  • Spójne identyfikatory: Używaj tych samych identyfikatorów profilu(e-mail, telefon, external_id itp.) w tabelach importu, aby uniknąć duplikatów.
  • Formaty zgody: Synchronizując dane zgody, przestrzegaj tych samych prawidłowych wartości/formatów, które są używane podczas przesyłania plików lub SFTP.
  • Wydajność: Rozważ sortowanie lub klucze rozproszone w kolumnie znacznika czasu, aby uzyskać wydajne odczyty przyrostowe.
  • Widoki: Możesz importować z tabel lub widoków, o ile prosty SELECT działa dla użytkownika Klaviyo.
Połącz Redshift z Klaviyo

Połącz Redshift z Klaviyo

  1. W Klaviyo otwórz lewy pasek boczny i przejdź do Zaawansowane → Synchronizacja.
  2. Kliknij przycisk Utwórz synchronizację.
  3. Wybierz opcję Importuj dane z hurtowni danych.
  4. Wybierz Redshift.
  5. Kliknij Connect to Redshift i wprowadź następujące szczegóły połączenia:
PoleOpis
HostTwój punkt końcowy Redshift (np. example-cluster.abc123.us-east-1.redshift.amazonaws.com).
Port5439 (lub twój niestandardowy port)
Baza danychBaza danych zawierająca klaviyo_tmp i klaviyo_import_from_dwh
Nazwa użytkownika / HasłoPoświadczenia użytkownika usługi Klaviyo

Po nawiązaniu połączenia Klaviyo przetestuje Twoje dane uwierzytelniające i łączność sieciową. Po weryfikacji możesz tworzyć synchronizacje i wybierać tabele lub widoki z klaviyo_import_from_dwh.

Wskazówki dotyczące rozwiązywania problemów

Wskazówki dotyczące rozwiązywania problemów

Test połączenia nie powiódł się

  • Sprawdź, czy reguły zapory sieciowej lub grupy zabezpieczeń zezwalają adresom IP Klaviyona dotarcie do Twojego Redshift punkt końcowy na właściwym porcie.
  • Potwierdź ustawienia SSL i upewnij się, że używasz prawidłowego punktu końcowego (klaster vs. grupa robocza), regionu i portu.

Tabele nie są wyświetlane

  • Upewnij się, że tabele znajdują się w klaviyo_import_from_dwh.
  • Upewnij się, że użytkownik Klaviyo ma uprawnienia USAGE do schematu i SELECT do tabel lub widoków.

Brak synchronizacji nowych wierszy

  • Sprawdź, czy kolumna znacznika czasu aktualizuje się po zmianie wiersza i używa UTC lub zawiera informacje o strefie czasowej.

Błędy uprawnień w czasie wykonywania

  • Uruchom ponownie SQL walidacji jako użytkownik Klaviyo.
  • W razie potrzeby ponownie zastosuj dotacje lub domyślne uprawnienia.
Bezpieczeństwo i konserwacja

Bezpieczeństwo i konserwacja

  • Zmieniaj hasło użytkownika regularnie i po zmianie personelu.
  • Ogranicz użytkownika Klaviyo do dwóch powyższych schematów i przyznaj USAGE tylko tam, gdzie jest to wymagane.
  • Zachowaj prosty podręcznik dokumentujący dokładne instrukcje GRANT i zakresy IP, na które zezwoliłeś.
Najczęściej zadawane pytania

Najczęściej zadawane pytania

Czy mogę importować z wielu baz danych Redshift?
Tak. Utwórz dwa schematy w każdej bazie danych i połącz obiekty z każdej z nich jako osobne synchronizacje.

Czy mogę używać widoków zmaterializowanych?
Tak. Przyznaj SELECT na widoku zmaterializowanym użytkownikowi Klaviyo.

Dodatek: Przykład DDL dla prostej tabeli importu

Dodatek: Przykład DDL dla prostej tabeli importu

CREATE TABLE klaviyo_import_from_dwh.profile_base (
 external_id VARCHAR(128),
 email VARCHAR(320),
 phone VARCHAR(32),
 first_name VARCHAR(128),
 last_name VARCHAR(128),
 country VARCHAR(64),
 inserted_at TIMESTAMP
);

-- zapewnij monotonicznie rosnący znacznik czasu przy wstawianiu/aktualizacji
-- (użyj ETL/ELT, aby ustawić inserted_at = GETDATE() w czasie ładowania)
Czy ten artykuł był pomocny?
Ten formularz służy tylko do przesyłania opinii na temat artykułów. Dowiedz się, jak skontaktować się z zespołem ds. pomocy.

Dowiedz się od Klaviyo więcej

Społeczność
Nawiązuj kontakty z osobami na podobnych stanowiskach, partnerami oraz ekspertami i ekspertkami Klaviyo – inspirujcie się nawzajem, wymieniajcie spostrzeżeniami i pomagajcie szukać odpowiedzi na nurtujące Was pytania.
Partnerzy
Zatrudnij certyfikowanego eksperta Klaviyo, który pomoże Ci w konkretnym zadaniu lub w ciągłym zarządzaniu marketingiem.
Pomoc

Uzyskaj wsparcie za pośrednictwem konta.

E-mail do zespołu ds. pomocy (konta w bezpłatnym okresie próbnym oraz konta płatne) Całodobowa dostępność

Czat/wirtualna pomoc
Dostępność różni się w–zależności od lokalizacji i typu planu.