Salesforce-Übertragung planen

Mit BigQuery Data Transfer Service für Salesforce Connector können Sie wiederkehrende Ladejobs von Salesforce in BigQuery automatisch planen und verwalten.

Beschränkungen

Salesforce-Datenübertragungen unterliegen den folgenden Einschränkungen:

  • BigQuery Data Transfer Service für Salesforce unterstützt nur die Salesforce Bulk API, um eine Verbindung zur Salesforce-Instanz herzustellen, und nur die Übertragung von Entitäten, die von der Salesforce Bulk API unterstützt werden. Weitere Informationen dazu, welche Entitäten unterstützt werden, finden Sie unter Fehler „Entität wird von der Bulk API nicht unterstützt“.
  • Das Mindestintervall zwischen wiederkehrenden Übertragungen beträgt 15 Minuten. Das Standardintervall für eine wiederkehrende Übertragung beträgt 24 Stunden.
  • BigQuery Data Transfer Service verwendet die Salesforce Bulk API v1, um eine Verbindung zum Salesforce-Endpunkt herzustellen, um Daten abzurufen.

Hinweise

In den folgenden Abschnitten werden die Schritte beschrieben, die Sie vor dem Erstellen einer Salesforce-Datenübertragung ausführen müssen.

Salesforce-verbundene App erstellen

Sie müssen eine verbundene Salesforce-App mit den folgenden erforderlichen Konfigurationen erstellen:

  • Konfigurieren Sie die allgemeinen Informationen in der verbundenen App. Der Name der verbundenen App sowie E-Mail-Adresse des Ansprechpartners sind für eine Salesforce-Übertragung erforderlich.
  • Aktivieren Sie die OAuth-Einstellungen mit den folgenden Konfigurationen:
    • Klicken Sie das Kästchen OAuth-Einstellungen aktivieren an.
    • Geben Sie im Feld Callback-URL Folgendes ein:
      • Geben Sie für eine Produktionsumgebung https://login.salesforce.com/services/oauth2/token ein.
      • Geben Sie für eine Sandbox-Umgebung https://test.salesforce.com/services/oauth2/token ein.
  • Wählen Sie im Abschnitt Ausgewählte OAuth-Bereiche die Option Nutzerdaten über APIs verwalten (api) aus.
  • Entfernen Sie das Häkchen aus dem Kästchen Erforderliche PKCE-Erweiterung (Proof Key for Code Exchange) für unterstützte Autorisierungsabläufe.
  • Wählen Sie Client-Anmeldedatenfluss aktivieren aus und klicken Sie dann in der angezeigten Benachrichtigung auf OK.

Nachdem Sie die verbundene App mit den erforderlichen Konfigurationen konfiguriert haben, klicken Sie auf Speichern. Sie werden zur Detailseite der neu erstellten verbundenen App weitergeleitet.

Nachdem Sie die verbundene App erstellt haben, müssen Sie auch den Ablauf für die Clientanmeldedaten konfigurieren. Gehen Sie dazu so vor:

  1. Klicken Sie auf Einrichten.
  2. Suchen Sie in der Suchleiste nach Verbundene Apps.
  3. Klicken Sie auf Apps verwalten > Verbundene Apps. Wenn Sie Salesforce Lightning Experience verwenden, klicken Sie auf Verbundene Apps verwalten.
  4. Klicken Sie in der erstellten verbundenen App auf Bearbeiten.
  5. Die Seite App-Details wird angezeigt. Geben Sie im Abschnitt Client-Anmeldedatenablauf in das Feld Als ausführen Ihren Nutzernamen ein. Mit dem Suchtool in diesem Feld können Sie prüfen, ob Sie den richtigen Nutzer ausgewählt haben.
  6. Klicken Sie auf Speichern.

Erforderliche Salesforce-Informationen

Beim Erstellen einer Salesforce-Datenübertragung benötigen Sie die folgenden Salesforce-Informationen:

Parametername Beschreibung
myDomain Meine Domain in Salesforce
clientId Consumer-Key der verbundenen Salesforce-Anwendung.
clientSecret

OAuth-Client-Secret oder Consumer-Secret der verbundenen Salesforce-Anwendung.

Wählen Sie eine der folgenden Optionen aus, um die Werte für myDomain, clientID und clientSecret abzurufen:

Salesforce Classic

myDomain-Details abrufen

So finden Sie Ihr myDomain:

  1. Melden Sie sich in der Salesforce-Plattform an.
  2. Klicken Sie auf Einrichten.
  3. Suchen Sie in der Suchleiste nach Meine Domain.
  4. Klicken Sie in den Suchergebnissen auf Domainverwaltung > Meine Domain.

Im Abschnitt Details zu „Meine Domain“ wird Ihre myDomain als Präfix unter Aktuelle URL für „Meine Domain“ angezeigt. Wenn die URL „Meine Domain“ beispielsweise example.my.salesforce.com lautet, ist der zu verwendende myDomain-Wert example.

ClientId- und ClientSecret-Details abrufen

So ermitteln Sie die Werte für ClientId und ClientSecret:

  1. Melden Sie sich in der Salesforce-Plattform an.
  2. Klicken Sie auf Einrichten.
  3. Suchen Sie in der Suchleiste nach Apps.
  4. Klicken Sie in den Suchergebnissen im Bereich Build auf Erstellen > Apps.
  5. Klicken Sie auf den Namen einer verbundenen App.
  6. Klicken Sie auf der Detailseite Verbundene Apps auf Nutzerdetails verwalten.
  7. Bestätigen Sie Ihre Identität mit einer der registrierten Methoden. Sie können die Seite mit den Nutzerdetails bis zu fünf Minuten lang aufrufen, bevor Sie aufgefordert werden, Ihre Identität noch einmal zu bestätigen.
  8. Auf der Seite Consumer-Details ist der Consumer-Key der Wert für ClientId. Der Kundenschlüssel ist Ihr ClientSecret-Wert.

Salesforce Lightning Experience

myDomain-Details abrufen

So finden Sie Ihr myDomain:

  1. Melden Sie sich in der Salesforce-Plattform an.
  2. Klicken Sie auf Einrichten.

Öffnen Sie auf der Salesforce-Plattform die Seite „Einrichtung“.

  1. Suchen Sie in der Suchleiste nach Meine Domain.
  2. Klicken Sie in den Suchergebnissen auf Company Settings > My Domain (Unternehmenseinstellungen > Meine Domain).

Im Abschnitt Details zu „Meine Domain“ wird Ihre myDomain als Präfix unter Aktuelle URL für „Meine Domain“ angezeigt. Wenn die URL „Meine Domain“ beispielsweise example.my.salesforce.com lautet, ist der zu verwendende myDomain-Wert example.

ClientId- und ClientSecret-Details abrufen

  1. Melden Sie sich in der Salesforce-Plattform an.
  2. Klicken Sie auf Einrichten.
  3. Suchen Sie in der Suchleiste nach Apps.
  4. Klicken Sie in den Suchergebnissen auf Apps > App-Manager.
  5. Suchen Sie nach einer verbundenen App und klicken Sie dann auf Ansehen.
  6. Klicken Sie auf Details zum Verbraucher verwalten.
  7. Bestätigen Sie Ihre Identität mit einer der registrierten Methoden. Sie können die Seite mit den Nutzerdetails bis zu fünf Minuten lang aufrufen, bevor Sie aufgefordert werden, Ihre Identität noch einmal zu bestätigen.
  8. Auf der Seite Consumer-Details ist der Consumer-Key der Wert für ClientId. Der Kundenschlüssel ist Ihr ClientSecret-Wert.

Voraussetzungen für BigQuery

Erforderliche BigQuery-Rollen

Bitten Sie Ihren Administrator, Ihnen den IAM-Rolle BigQuery-Administrator (roles/bigquery.admin) zu gewähren, um die Berechtigungen zu erhalten, die Sie zum Erstellen einer Übertragung benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.

Diese vordefinierte Rolle enthält die Berechtigungen, die zum Erstellen einer Übertragung erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind zum Erstellen einer Übertragung erforderlich:

  • bigquery.transfers.update für den Nutzer
  • bigquery.datasets.get für das Ziel-Dataset
  • bigquery.datasets.update für das Ziel-Dataset

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Salesforce-Datenübertragung einrichten

So erstellen Sie eine Salesforce-Datenübertragung:

Console

  1. Rufen Sie in der Google Cloud Console die Seite „Datenübertragungen“ auf.

    Zu „Datenübertragungen”

  2. Klicken Sie auf Übertragung erstellen.

  3. Wählen Sie im Abschnitt Source type (Quelltyp) für Source (Quelle) die Option Salesforce aus.

  4. Geben Sie im Abschnitt Konfigurationsname für Übertragung unter Anzeigename einen Namen für die Datenübertragung ein.

  5. Im Abschnitt Zeitplanoptionen:

    • Wählen Sie in der Liste Wiederholungshäufigkeit aus, wie oft diese Übertragung ausgeführt werden soll. Wenn Sie eine benutzerdefinierte Wiederholungshäufigkeit angeben möchten, wählen Sie Benutzerdefiniert aus. Wenn Sie On-Demand auswählen, wird diese Übertragung ausgeführt, wenn Sie die Übertragung manuell auslösen.

    • Wählen Sie gegebenenfalls Jetzt starten oder Zu festgelegter Zeit starten aus und geben Sie ein Startdatum und eine Laufzeit an.

  6. Wählen Sie im Abschnitt Destination settings (Zieleinstellungen) für Dataset das Dataset aus, das Sie zum Speichern Ihrer Daten erstellt haben.

  7. Führen Sie im Abschnitt Details zur Datenquelle folgende Schritte aus:

    • Geben Sie unter Meine Domain Ihre Salesforce-Meine Domain ein.
    • Geben Sie unter Client-ID den Consumer-Key der verbundenen Salesforce-Anwendung ein.
    • Geben Sie unter Clientschlüssel das Consumer-Secret für die verbundene Salesforce-Anwendung ein.
    • Klicken Sie für Zu übertragende Salesforce-Objekte auf Durchsuchen, um alle Objekte auszuwählen, die an das BigQuery-Ziel-Dataset übertragen werden sollen.

      • Sie können in dieses Feld auch manuell alle Objekte eingeben, die in die Datenübertragung einbezogen werden sollen.

      Salesforce-Übertragungskonfiguration konfigurieren

  8. Wählen Sie in der Liste Dienstkonto ein Dienstkonto aus, das Ihrem Google Cloud-Projekt zugeordnet ist. Das ausgewählte Dienstkonto muss die erforderlichen Rollen für diese Übertragung haben.

    Wenn Sie sich mit einer föderierten Identität angemeldet haben, ist ein Dienstkonto zum Erstellen einer Übertragung erforderlich. Wenn Sie sich mit einem Google-Konto angemeldet haben, ist ein Dienstkonto für die Übertragung optional.

    Weitere Informationen zur Verwendung von Dienstkonten mit Datenübertragungen finden Sie unter Dienstkonten verwenden.

  9. Optional: Gehen Sie im Abschnitt Benachrichtigungsoptionen so vor:

    • Klicken Sie zum Aktivieren von E-Mail-Benachrichtigungen auf die Ein/Aus-Schaltfläche E-Mail-Benachrichtigung. Wenn Sie diese Option aktivieren, erhält der Übertragungsadministrator eine E-Mail-Benachrichtigung, wenn eine Übertragung fehlschlägt.
    • Klicken Sie auf die Ein/Aus-Schaltfläche Pub/Sub-Benachrichtigungen, um Pub/Sub-Benachrichtigungen über die Ausführung von Übertragungen für diese Übertragung zu aktivieren. Sie können den Namen für das Thema auswählen oder auf Thema erstellen klicken, um eines zu erstellen.
  10. Klicken Sie auf Speichern.

bq

Geben Sie den Befehl bq mk ein und geben Sie das Flag --transfer_config für die Übertragungserstellung an.

bq mk \
    --transfer_config \
    --project_id=PROJECT_ID \
    --data_source=DATA_SOURCE \
    --display_name=NAME \
    --target_dataset=DATASET \
    --params='PARAMETERS'

Dabei gilt:

  • PROJECT_ID (Optional) Ihre Google Cloud-Projekt-ID. Wenn --project_id nicht bereitgestellt wird, um ein bestimmtes Projekt anzugeben, wird das Standardprojekt verwendet.
  • DATA_SOURCE. Die Datenquelle – salesforce.
  • NAME: Der Anzeigename für die Datenübertragungskonfiguration. Der Übertragungsname kann ein beliebiger Wert sein, mit dem Sie die Übertragung identifizieren können, wenn Sie sie später ändern müssen.
  • DATASET: Das Ziel-Dataset für die Übertragungskonfiguration.
  • PARAMETERS: die Parameter für die erstellte Übertragungskonfiguration im JSON-Format. Beispiel: --params='{"param":"param_value"}'. Im Folgenden finden Sie die Parameter für eine Salesforce-Übertragung:

    • connector.authentication.oauth.clientId: Der Consumer-Key der verbundenen Salesforce-Anwendung.
    • connector.authentication.oauth.clientSecret: OAuth-Clientschlüssel oder Consumer Secret der mit Salesforce verbundenen Anwendung.
    • connector.authentication.oauth.myDomain: Salesforce-Meine Domain. Ist Ihre Domain-URL beispielsweise example.my.salesforce.com, lautet der Wert example.
    • assets: der Pfad zu den Salesforce-Objekten, die in BigQuery übertragen werden sollen.

Mit dem folgenden Befehl wird beispielsweise eine Salesforce-Datenübertragung im Standardprojekt mit allen erforderlichen Parametern erstellt:

bq mk \
    --transfer_config \
    --target_dataset=mydataset \
    --data_source=salesforce \
    --display_name='My Transfer' \
    --params='{"assets":["Account"],
        "connector.authentication.oauth.clientId": "1234567890",
        "connector.authentication.oauth.clientSecret":"ABC12345",
        "connector.authentication.oauth.myDomain":"MyDomainName",}'

API

Verwenden Sie die Methode projects.locations.transferConfigs.create und geben Sie eine Instanz der Ressource TransferConfig an.

Preise

Während sich dieses Feature in der Vorschau befindet, fallen keine Kosten für die Übertragung von Salesforce-Daten in BigQuery an.

Fehler bei der Übertragungseinrichtung beheben

Wenn bei der Einrichtung der Datenübertragung Probleme auftreten, lesen Sie den Hilfeartikel Salesforce-Übertragungsprobleme.

Nächste Schritte