Einrichten von Openflow Connector for HubSpot

Unter diesem Thema werden die Schritte zur Einrichtung von Openflow Connector for HubSpot beschrieben.

Voraussetzungen

  1. Stellen Sie sicher, dass Sie Allgemeine Informationen zu Openflow Connector for HubSpot gelesen haben.

  2. Stellen Sie sicher, dass Sie folgende Aufgaben ausgeführt haben: Openflow einrichten – BYOC oder Openflow einrichten – Snowflake-Bereitstellungen.

  3. Stellen Sie bei der Verwendung von Openflow - Snowflake Deployments sicher, dass Sie Konfigurieren der erforderlichen Domänen gelesen und Zugriff auf die erforderlichen Domänen für den Hubspot-Konnektor gewährt haben.

Die Anmeldeinformationen erhalten

Als HubSpot-Administrator generieren Sie ein privates HubSpot-App-Token oder erstellen eines in Ihrem HubSpot-Konto. Damit können Sie Ihre Anfragen an die HubSpot-API authentifizieren.

  1. Melden Sie sich bei Ihrem HubSpot-Konto an.

  2. Navigieren Sie zu Settings, indem Sie das Zahnradsymbol in der oberen Navigationsleiste auswählen.

  3. Wählen Sie im linken Navigationsbereich Integrations » Private Apps aus.

  4. Wählen Sie Create a private app aus.

    1. Geben Sie einen Namen für Ihre App ein.

    2. Navigieren Sie zur Registerkarte Scopes.

    3. Wählen Sie die für die von Ihnen beabsichtigten API-Anfragen erforderlichen Bereiche aus. Die für die API-Anfragen erforderlichen Bereiche finden Sie unter Bereiche.

    4. Wählen Sie Create app aus.

    5. Legen Sie die erforderlichen Bereiche für die API-Anfragen fest, die Sie für jeden Endpunkt stellen möchten.

  5. Wählen Sie View access token, um das Zugriffstoken anzuzeigen. Fügen Sie das Token in die Verbindungsparameter ein oder speichern Sie es sicher.

Snowflake-Konto einrichten

Als Snowflake-Kontoadministrator führen Sie die folgenden Aufgaben aus:

  1. Erstellen Sie eine neue Rolle, oder verwenden Sie eine vorhandene Rolle, und gewähren Sie die Berechtigungen von Datenbanken und:ref:label-view_privileges.

  2. Erstellen Sie einen neuen Benutzer für den Snowflake-Dienst mit dem Typ SERVICE.

  3. Weisen Sie dem Benutzer des Snowflake-Dienstes die Rolle zu, die Sie in den vorherigen Schritten erstellt haben.

  4. Konfigurieren Sie mit Schlüsselpaar-Authentifizierung für den Snowflake SERVICE-Benutzer aus Schritt 2.

  5. Snowflake empfiehlt diesen Schritt dringend. Konfigurieren Sie einen von Openflow unterstützten Geheimnismanager, z. B. AWS, Azure und Hashicorp, und speichern Sie die öffentlichen und privaten Schlüssel im Geheimnisspeicher.

    Bemerkung

    Wenn Sie aus irgendeinem Grund keinen Geheimnismanager verwenden möchten, sind Sie dafür verantwortlich, die für die Schlüsselpaar-Authentifizierung verwendeten Dateien für den öffentlichen und privaten Schlüssel gemäß den Sicherheitsrichtlinien Ihrer Organisation zu schützen.

    1. Nachdem der Geheimnismanager konfiguriert wurde, legen Sie fest, wie Sie sich bei diesem authentifizieren möchten. Für AWS wird empfohlen, dass Sie die EC2-Instanzrolle verwenden, die mit Openflow verbunden ist, da auf diese Weise keine weiteren Geheimnisse bestehen bleiben müssen.

    2. Konfigurieren Sie in Openflow über das Hamburger-Menü oben rechts einen Parameteranbieter, der mit diesem Secrets Manager verbunden ist. Navigieren Sie zu Controller Settings » Parameter Provider und rufen Sie dann Ihre Parameterwerte ab.

    3. Zu diesem Zeitpunkt können alle Anmeldeinformationen mit den zugehörigen Parameterpfaden referenziert werden, und es müssen keine sensiblen Werte innerhalb von Openflow aufbewahrt werden.

  6. Wenn andere Snowflake-Benutzer Zugriff auf die vom Konnektor aufgenommenen Rohdokumente und -tabellen benötigen (z. B. für die benutzerdefinierte Verarbeitung in Snowflake), weisen Sie diesen Benutzern die in Schritt 1 erstellte Rolle zu.

  7. Erstellen Sie in Snowflake eine Datenbank und ein Schema für den Konnektor, um die aufgenommenen Daten zu speichern. Erteilen Sie der im ersten Schritt erstellten Rolle die folgenden Berechtigungen von Datenbanken.

    CREATE DATABASE hubspot_destination_db;
    CREATE SCHEMA hubspot_destination_db.hubspot_destination_schema;
    GRANT USAGE ON DATABASE hubspot_destination_db TO ROLE <hubspot_connector_role>;
    GRANT USAGE ON SCHEMA hubspot_destination_db.hubspot_destination_schema TO ROLE <hubspot_connector_role>;
    GRANT CREATE TABLE, CREATE VIEW ON SCHEMA hubspot_destination_db.hubspot_destination_schema TO ROLE <hubspot_connector_role>;
    
  8. Erstellen Sie ein Warehouse, das vom Konnektor verwendet werden soll, oder verwenden Sie ein bestehendes. Beginnen Sie mit der kleinsten Warehouse-Größe. Experimentieren Sie dann mit der Größe abhängig von der Anzahl der zu replizierenden Tabellen und der übertragenen Datenmenge. Eine große Anzahl von Tabellen skaliert normalerweise besser mit Multi-Cluster-Warehouses und nicht anhand der Warehouse-Größe.

  9. Stellen Sie sicher, dass der Benutzer mit der Rolle, die der Konnektor verwendet, über die erforderlichen Berechtigungen zur Nutzung des Warehouse verfügt. Wenn das nicht der Fall ist, erteilen Sie der Rolle die erforderlichen Berechtigungen.

    CREATE WAREHOUSE hubspot_connector_warehouse WITH WAREHOUSE_SIZE = 'X-Small';
    GRANT USAGE ON WAREHOUSE hubspot_connector_warehouse TO ROLE <hubspot_connector_role>;
    

Einrichten des Konnektors

Als Data Engineer führen Sie die folgenden Aufgaben aus, um den Konnektor zu installieren und zu konfigurieren:

Konnektor installieren

Um den Konnektor zu installieren, gehen Sie als Data Engineer wie folgt vor:

  1. Navigieren Sie zur Übersichtsseite von Openflow. Wählen Sie im Abschnitt Featured connectors die Option View more connectors aus.

  2. Suchen Sie auf der Seite Openflow-Konnektoren den Konnektor und wählen Sie Add to runtime.

  3. Wählen Sie im Dialogfeld Select runtime Ihre Laufzeitumgebung aus der Dropdown-Liste Available runtimes aus, und klicken Sie auf Add.

    Bemerkung

    Bevor Sie den Konnektor installieren, stellen Sie sicher, dass Sie in Snowflake eine Datenbank und ein Schema für den Konnektor erstellt haben, in dem die aufgenommenen Daten gespeichert werden.

  4. Authentifizieren Sie sich bei der Bereitstellung mit den Anmeldedaten Ihres Snowflake-Kontos und wählen Sie Allow, wenn Sie dazu aufgefordert werden, damit die Laufzeitanwendung auf Ihr Snowflake-Konto zugreifen kann. Die Installation des Konnektors nimmt einige Minuten in Anspruch.

  5. Authentifizieren Sie sich bei der Laufzeit mit den Anmeldeinformationen Ihres Snowflake-Kontos.

Das Openflow-Canvas wird mit der hinzugefügten Prozessgruppe des Konnektors angezeigt.

Konnektor konfigurieren

  1. Klicken Sie mit der rechten Maustaste auf die importierte Prozessgruppe und wählen Sie Parameters.

  2. Geben Sie die erforderlichen Parameterwerte ein, wie unter Ablaufparameter beschrieben.

Ablaufparameter

In diesem Abschnitt werden die Ablaufparameter beschrieben, die Sie anhand der folgenden Parameterkontexte konfigurieren können:

Quellsystemparameter für HubSpot

Parameter

Beschreibung

HubSpot Access Token

Zugriffstoken für private HubSpot-Anwendungen.

Zielsystemparameter für HubSpot

Parameter

Beschreibung

Erforderlich

Destination Database

Die Datenbank, in der die Daten als persistent gespeichert werden. Muss bereits in Snowflake vorhanden sein. Beim Namen wird zwischen Groß- und Kleinschreibung unterschieden. Bei Bezeichnern ohne Anführungszeichen geben Sie den Namen in Großbuchstaben an.

Ja

Destination Schema

Das Schema, in dem Daten beibehalten werden, muss bereits in Snowflake vorhanden sein. Beim Namen wird zwischen Groß- und Kleinschreibung unterschieden. Bei Bezeichnern ohne Anführungszeichen geben Sie den Namen in Großbuchstaben an.

Sehen Sie sich die folgenden Beispiele an:

  • CREATE SCHEMA SCHEMA_NAME oder CREATE SCHEMA schema_name: verwenden Sie SCHEMA_NAME

  • CREATE SCHEMA "schema_name" oder CREATE SCHEMA "SCHEMA_NAME": verwenden Sie schema_name bzw. SCHEMA_NAME.

Ja

Snowflake Authentication Strategy

Bei Verwendung von:

  • Snowflake Openflow-Bereitstellung oder BYOC: Verwenden Sie SNOWFLAKE_MANAGED_TOKEN. Dieses Token wird automatisch von Snowflake verwaltet. Für BYOC-Bereitstellungen müssen zuvor Laufzeitrollen konfiguriert sein, um SNOWFLAKE_MANAGED_TOKEN zu verwenden.

  • BYOC: Alternativ kann BYOC KEY_PAIR als Wert für die Authentifizierungsstrategie verwenden.

Ja

Snowflake Account Identifier

Bei Verwendung von:

  • Strategie für die Authentifizierung mit Sitzungstoken: Muss leer sein.

  • KEY_PAIR: Snowflake-Kontoname im Format [Organisationsname]-[Kontoname], wobei die Daten persistent gespeichert werden.

Ja

Snowflake Private Key

Bei Verwendung von:

  • Strategie für die Authentifizierung mit Sitzungstoken: Muss leer sein.

  • KEY_PAIR$RSA Muss der RSA private Schlüssel sein, der für die Authentifizierung verwendet wird.

    Der RSA-Schlüssel muss entsprechend den PKCS8-Standards formatiert sein und standardmäßige PEM-Header und Footer haben. Beachten Sie, dass entweder eine private Snowflake-Schlüsseldatei oder ein privater Snowflake-Schlüssel definiert werden muss.

Nein

Snowflake Private Key File

Bei Verwendung von:

  • Strategie für die Authentifizierung mit Sitzungstoken: Die private Schlüsseldatei muss leer sein.

  • KEY_PAIR$ Laden Sie die Datei hoch, die den RSA Private Key für die Authentifizierung bei Snowflake enthält, formatiert nach PKCS8-Standards und mit Standard-PEM-Header und -Footer. Die Header-Zeile beginnt mit -----BEGIN PRIVATE. Aktivieren Sie das Kontrollkästchen Reference asset, um die Private Key-Datei hochzuladen.

Nein

Snowflake Private Key Password

Bei Verwendung von

  • Strategie für die Authentifizierung mit Sitzungstoken: Muss leer sein.

  • KEY_PAIR: Geben Sie das Kennwort an, das mit der privaten Snowflake-Schlüsseldatei verbunden ist.

Nein

Snowflake Role

Bei Verwendung von

  • Strategie für die Authentifizierung mit Sitzungstoken: Verwenden Sie Ihre Snowflake-Rolle. Sie finden Ihre Snowflake-Rolle in der Openflow-UI, indem Sie zu View Details für Ihre Laufzeitumgebung navigieren.

  • KEY_PAIR Authentifizierungsstrategie: Verwenden Sie eine gültige Rolle, die für Ihren Dienstbenutzer konfiguriert ist.

Ja

Snowflake-Benutzername

Bei Verwendung von

  • Strategie für die Authentifizierung mit Sitzungstoken: Muss leer sein.

  • KEY_PAIR: Geben Sie den Benutzernamen an, der für die Verbindung mit der Snowflake-Instanz verwendet wird.

Ja

Mehrwert-Strategie

Legt fest, wie der Konnektor Werte verarbeitet, die seine internen Größenbeschränkungen (16 MB) während der Replikation überschreiten. Mögliche Werte sind:

  • Fail Table (Standard): Die Tabelle wird als dauerhaft fehlgeschlagen markiert, und die Replikation für diese Tabelle wird angehalten.

  • Set Null: Der Wert wird durch NULL in der Zieltabelle ersetzt. Verwenden Sie dies, um Tabellenfehler zu verhindern, wenn es akzeptabel ist, Daten in Tabellen zu verlieren, die über den übergroßen Wert hinausgehen.

Nein

Snowflake Warehouse

Snowflake Warehouse, das für die Ausführung von Abfragen verwendet wird.

Ja

Aufnahmeparameter für HubSpot

Parameter

Beschreibung

Objekttypen

Liste der durch Komma getrennten HubSpot-Objekttypen, die aufgenommen werden sollen.

Unterstützte Werte für den Objekttyp sind:

  • Termine

  • Aufrufe

  • Kampagnen

  • Warenkörbe

  • Handelszahlungen

  • Kommunikationen

  • Companies

  • Kontakte

  • Kurse

  • Deals

  • Ermäßigungen

  • E-Mails

  • Gebühren

  • Feedback Submissions

  • Goals

  • Rechnungen

  • Leads

  • Line Items

  • Freigabeangebote

  • Sitzungen

  • Anmerkungen

  • Bestellungen

  • Post

  • Produkte

  • Angebote

  • Angebotsvorlagen

  • Services

  • Abonnements

  • Aufgaben

  • Steuern

  • Tickets

  • Benutzer

Updated After

Filtern Sie Objekten, die nach einem bestimmten Datum oder einer bestimmten Uhrzeit aktualisiert wurden. Dieser Parameter ist optional.

Zeitplan für die Datenaufnahme

Zeit zwischen dem nächsten Zeitplan. Er sollte eine gültige Zeitdauer haben, z. B. 30 Minuten oder 1 Stunde.

Führen Sie den Ablauf aus

  1. Klicken Sie mit der rechten Maustaste auf die Ebene, und wählen Sie Enable all Controller Services.

  2. Klicken Sie mit der rechten Maustaste auf die importierte Prozessgruppe und wählen Sie Start. Der Konnektor startet die Datenaufnahme.

Den Konnektor neu konfigurieren

Sie können die Konnektorparameter ändern, nachdem der Konnektor begonnen hat, Daten zu aufzunehmen. Wenn sich die Kriterien für die Kriterien für die Vorgangsabfrage ändern, führen Sie die folgenden Schritte aus, um sicherzustellen, dass die Daten in der Zieltabelle konsistent sind.

  1. Stoppt den Konnektor: Stellt sicher, dass alle Openflow-Prozessoren gestoppt sind.

  2. Zugriff auf Konfigurationseinstellungen: Navigieren Sie in der Snowflake-Openflow-Webpberfläche zu den Konfigurationseinstellungen des Konnektors.

  3. Parameter ändern: Passen Sie die Parameter nach Bedarf an.

  4. Löschen des Prozessorstatus: Wenn Sie die Datenaufnahmekriterien ändern, empfiehlt Snowflake dringend, die Datenaufnahme von Anfang an zu beginnen, um die Daten in der Zieltabelle konsistent zu halten. Nach dem Löschen des Status im List Fresh HubSpot Objects-Prozessor ruft der Konnektor alle Objekte von Anfang an ab. Möglicherweise ist ein manuelles Kürzen der Zieltabelle erforderlich, um das Duplizieren von Zeilen zu verhindern.

Datenstruktur und Ansichten

Der Konnektor speichert Daten in den folgenden beiden Formaten innerhalb Ihrer Snowflake-Datenbank:

Rohdatenspeicher

Nur HubSpot-Rohdaten werden in Tabellen mit den genauen Namen gespeichert, die im Parameter Objekttypen angegeben sind. Beispiel:

  • Wenn Sie Products,Contacts,Companies im Parameter Objekttypen konfigurieren, erstellt der Konnektor drei Tabellen: PRODUCTS, CONTACTS und``COMPANIES``.

  • Jede Tabelle enthält die vollständige JSON-Nutzlast von den HubSpot API-Antworten.

  • Rohdaten behalten die ursprüngliche Struktur und alle Metadaten von HubSpot bei.

Vereinfachte Ansichten

Zur Vereinfachung der Abfrage und Analyse erstellt der Konnektor automatisch vereinfachte Ansichten (Flattening) für jeden Objekttyp:

  • Jede Rohtabelle hat eine entsprechende Ansicht mit dem Suffix _VIEW. Zum Beispiel: PRODUCTS_VIEW, CONTACTS_VIEW und COMPANIES_VIEW.

  • Ansichten extrahieren häufig verwendete Felder aus der JSON-Nutzlast in einzelne Spalten.

  • Komplexe verschachtelte Strukturen werden für vereinfachte SQL -Abfragen vereinfacht.