Salesforce-Übertragung planen

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

Beschränkungen

Salesforce-Übertragungen unterliegen den folgenden Beschrä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 für Salesforce unterstützt Verbindungen zu Salesforce Sandbox-Umgebungen nicht.

Hinweise

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

Voraussetzungen für Salesforce

Aktivieren Sie die Salesforce Bulk API für die Salesforce-Instanz.

Erstellen Sie eine mit Salesforce verbundene App mit den folgenden Konfigurationen:

  • Generieren Sie ein Sicherheitstoken für die App.
  • So lassen Sie den OAuth-Nutzernamen und das Passwort zu:

    1. Klicken Sie in der verbundenen App auf Einrichtung.
    2. Suchen Sie im Feld Schnellsuche nach OAuth- und OpenID Connect-Einstellungen und aktivieren Sie die Option.

      OAuth- und OpenID-Verbindungseinstellungen in Salesforce aktivieren

  • So aktivieren Sie die Selbstautorisierung für einen Nutzer für die verbundene Anwendung:

    1. Klicken Sie in der verbundenen App auf Einrichtung.
    2. Suchen Sie im Feld Schnellsuche nach Verbundene Apps verwalten.
    3. Klicken Sie bei der verbundenen App, die Sie für die Übertragungsausführung verwenden, auf Bearbeiten.
    4. Klicken Sie unter OAuth-Richtlinien auf das Menü Zulässige Nutzer und wählen Sie Alle Nutzer können sich selbst autorisieren aus.

      Selbstautorisierung für Nutzer in Salesforce aktivieren

    5. Wählen Sie unter IP-Lockerung die Option IP-Einschränkungen lockern aus.

      IP-Einschränkungen in Salesforce lockern

Beim Erstellen einer Salesforce-Übertragung benötigen Sie außerdem die folgenden Salesforce-Informationen:

Parametername Beschreibung
clientId ClientId oder Consumer-Key der mit Salesforce verbundenen Anwendung.
clientSecret

OAuth-Clientschlüssel oder Consumer-Secret der mit Salesforce verbundenen Anwendung.

username

Nutzername des Salesforce-Kontos.

password

Passwort des Salesforce-Kontos.

securityToken

Sicherheitstoken des Salesforce-Kontos. Bei diesem Sicherheitstoken handelt es sich um einen alphanumerischen Code, bei dem die Groß- und Kleinschreibung berücksichtigt wird. Er wird an das Passwort angehängt. Das Sicherheitstoken ist erforderlich, wenn Sie von außerhalb des vertrauenswürdigen IP-Bereichs Ihrer Salesforce-Konfiguration auf die Salesforce APIs zugreifen.

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. Öffnen Sie in der Google Cloud Console die Seite BigQuery.

    BigQuery aufrufen

  2. Klicken Sie auf Datenübertragungen > Ü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 für Anzeigename einen Namen für die Ü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 Benutzerdefinierte Domain gegebenenfalls eine benutzerdefinierte Anmeldedomain ein.
    • Geben Sie unter Nutzername den Nutzernamen des Salesforce-Kontos ein.
    • Geben Sie unter Passwort das Passwort des Salesforce-Kontos ein.
    • Geben Sie unter Sicherheitstoken das Sicherheitstoken des Salesforce-Kontos ein.
    • Geben Sie unter Client-ID den Consumer-Key für die verbundene Salesforce-Anwendung ein.
    • Geben Sie unter Clientschlüssel das Consumer-Secret für die verbundene Salesforce-Anwendung ein.
    • Klicken Sie unter Zu übertragende Salesforce-Objekte auf Durchsuchen, um alle Objekte auszuwählen, die in das BigQuery-Ziel-Dataset übertragen werden sollen.

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

      Salesforce-Übertragungskonfiguration konfigurieren

  8. Wählen Sie in der Liste Dienstkonto ein Dienstkonto aus, das mit Ihrem Google Cloud-Projekt verknüpft 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'

Wobei:

  • 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 Ü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: ClientId oder Consumer-Key der mit Salesforce verbundenen Anwendung.
    • connector.authentication.oauth.clientSecret: OAuth-Clientschlüssel oder Consumer-Secret der mit Salesforce verbundenen Anwendung.
    • connector.customDomainName (optional): die benutzerdefinierte Salesforce-Anmeldedomain, falls zutreffend. Lassen Sie das Feld leer, um die Standardanmeldungsdomain login.Salesforce.com zu verwenden.
    • connector.authentication.username: der Nutzername des Salesforce-Kontos.
    • connector.authentication.password: das Passwort des Salesforce-Kontos.
    • connector.authentication.securityToken: Das Sicherheitstoken des Salesforce-Kontos.
    • assets: Der Pfad zu den Salesforce-Objekten, die an BigQuery übertragen werden sollen.

Mit dem folgenden Befehl wird beispielsweise eine Salesforce-Ü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.customDomainName":"MyDomainName",
        "connector.authentication.username":"user1@force.com",
        "Connector.authentication.password":"abcdef1234",
        "connector.authentication.securityToken":"a1hghbb44lnl465lbl75b",}'

API

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

Preise

Die Übertragung von Salesforce-Daten in BigQuery ist kostenlos, während sich dieses Feature in der Vorschau befindet.

Fehler bei der Übertragungseinrichtung beheben

Unterstützung bei Problemen mit dem Einrichten von Übertragungen finden Sie unter Übertragungsprobleme mit Salesforce.

Nächste Schritte