Salesforce-Batchquelle

Auf dieser Seite wird beschrieben, wie Sie mit Cloud Data Fusion Daten aus Salesforce-Objekten in Google Cloudladen. Das Salesforce-Batch-Quell-Plug-in liest sObjects aus Salesforce. Die sObjects sind die Salesforce-Tabellen, aus denen Sie Daten abrufen möchten. Beispiele für sObjects sind Empfehlungen, Kontakte, Konten, Leads und benutzerdefinierte Objekte.

Das Salesforce-Batch-Quell-Plug-in unterstützt das Lesen von Daten mit Salesforce Object Query Language (SOQL)-Abfragen und inkrementellen oder Intervall-Datumsfiltern.

Hinweis

  • Die Salesforce-Batchquelle in Cloud Data Fusion verwendet die Salesforce Bulk API V1.
  • Richten Sie Salesforce ein, bevor Sie das Cloud Data Fusion-Salesforce-Plug-in bereitstellen und verwenden. Weitere Informationen finden Sie unter Salesforce-verbundene App für Cloud Data Fusion erstellen.

Plug-in konfigurieren

  1. Rufen Sie die Cloud Data Fusion-Weboberfläche auf und klicken Sie auf Studio.
  2. Achten Sie darauf, dass Datenpipeline – Batch ausgewählt ist (nicht Echtzeit).
  3. Klicken Sie im Menü Quelle auf Salesforce. Der Salesforce-Knoten wird in Ihrer Pipeline angezeigt. Wenn die Salesforce-Quelle auf der Seite Studio nicht angezeigt wird, deployen Sie die Salesforce-Plug-ins aus dem Cloud Data Fusion Hub.
  4. Wenn Sie die Quelle konfigurieren möchten, klicken Sie auf den Salesforce-Knoten und dann auf Attribute.
  5. Geben Sie die folgenden Properties ein. Eine vollständige Liste finden Sie unter Properties.

    1. Geben Sie ein Label für den Salesforce-Knoten ein, z. B. Salesforce tables.
    2. Geben Sie einen Referenznamen für die Salesforce-Quelle für die Abfolge ein, z. B. Salesforce tables.
    3. Geben Sie die Verbindungsdetails ein. Sie können eine neue einmalige Verbindung oder eine vorhandene wiederverwendbare Verbindung einrichten.

      Neue Verbindung

      So fügen Sie eine einmalige Verbindung zu Salesforce hinzu:

      1. Lassen Sie die Option Verbindung verwenden deaktiviert.
      2. Geben Sie im Abschnitt Verbindung die folgenden Informationen aus dem Salesforce-Konto in die entsprechenden Felder ein:

        • Nutzername
        • Passwort
        • Sicherheitstoken
        • Consumer-Key
        • Consumer-Secret

        Informationen zum Abrufen der Anmeldedaten aus Salesforce finden Sie unter Properties aus Salesforce abrufen.

      Wiederverwendbare Verbindung

      So verwenden Sie eine vorhandene Verbindung wieder:

      1. Aktivieren Sie Verbindung verwenden.
      2. Klicken Sie auf Verbindungen durchsuchen.
      3. Klicken Sie auf den Namen der Verbindung.

      4. Optional: Wenn keine Verbindung vorhanden ist und Sie eine neue wiederverwendbare Verbindung erstellen möchten, klicken Sie auf Verbindung hinzufügen und folgen Sie der Anleitung auf dem Tab Neue Verbindung.

    4. Geben Sie den SObject-Namen ein, um alle Spalten aus dem Objekt zu laden.

    5. Optional: Wenn Sie den sObject-Namen auswählen, können Sie die Daten mit den folgenden Feldern filtern:

      • Zuletzt geändert nach: Es werden nur Einträge berücksichtigt, die nach einem bestimmten Zeitpunkt zuletzt geändert wurden.
      • Last modified before (Zuletzt geändert vor): Es werden nur Einträge berücksichtigt, die vor einem bestimmten Zeitpunkt zuletzt geändert wurden.
      • Dauer: Es werden nur Einträge berücksichtigt, die innerhalb eines Zeitfensters der angegebenen Größe zuletzt geändert wurden.
      • Offset: Es werden nur Datensätze berücksichtigt, bei denen das Datum der letzten Änderung vor dem logischen Startzeitpunkt der Pipeline abzüglich des angegebenen Offset liegt.
    6. Optional: Aktivieren Sie für unterstützte SObjects die Option PK-Chunking aktivieren, um die Leistung einer Pipeline zu verbessern. Weitere Informationen finden Sie unter Leistung mit PK-Chunking verbessern.

    7. Optional: Anstatt den sObject-Namen anzugeben, können Sie eine SOQL-Abfrage eingeben, z. B. SELECT LastName from Contact. Weitere Informationen finden Sie unter SOQL-Abfragen für die Salesforce-Quelle.

    8. Klicken Sie auf Schema abrufen, um die Verbindung zu testen. Cloud Data Fusion stellt eine Verbindung zu Salesforce her und ruft das Schema für die aufgeführte Tabelle ab (technisch ein sObject).

Attribute

Attribut Makro aktiviert Erforderliche Property Beschreibung
Referenzname Nein Ja Hiermit wird diese Quelle eindeutig für Aufgaben wie die Datenverlaufskontrolle und das Annotieren von Metadaten identifiziert.
Verbindung verwenden Nein Nein Verwenden Sie eine vorhandene Verbindung. Wenn eine Verbindung verwendet wird, müssen Sie die Anmeldedaten nicht angeben.
Verbindungen ansehen Ja Nein Name der zu verwendenden Verbindung.
Nutzername Ja Ja Salesforce-Nutzername.
Passwort Ja Ja Salesforce-Passwort
Sicherheitstoken Ja Nein Salesforce-Sicherheitstoken Wenn das Passwort das Sicherheitstoken nicht enthält, fügt Cloud Data Fusion das Token vor der Authentifizierung bei Salesforce an.
Consumer-Key Ja Ja Consumer-Key der Anwendung. Diese wird auch als OAuth-Client-ID bezeichnet. Wenn Sie einen Consumer-Key benötigen, erstellen Sie eine verbundene Salesforce-Anwendung.
Consumer-Secret Ja Ja Consumer Secret der Anwendung. Dieser wird auch als OAuth-Client-Secret bezeichnet. Wenn Sie ein Client-Secret benötigen, erstellen Sie eine verbundene Salesforce-Anwendung.
Anmelde-URL Ja Ja Salesforce OAuth2-Anmelde-URL.
Der Standardwert ist https://login.salesforce.com/services/oauth2/token.
Zeitüberschreitung der Verbindung Ja Nein Maximale Wartezeit in Millisekunden, die auf die Verbindungsinitialisierung gewartet wird, bevor das Zeitlimit abläuft.
Die Standardeinstellung ist 30.000 Millisekunden.
Proxy-URL Ja Nein Proxy-URL, die ein Protokoll, eine Adresse und einen Port enthält.
SOQL Ja Nein Eine SOQL-Abfrage zum Abrufen von Daten in die Quelle.
Beispiele:
  • SELECT Id, Name, BillingCity FROM Account
  • SELECT Id FROM Contact WHERE Name LIKE 'A%' AND MailingCity = 'California'
Name des Salesforce-Objekts Ja Nein Name des zu lesenden Salesforce-Objekts. Wenn ein Wert angegeben ist, ruft der Connector alle Felder für dieses Objekt aus Salesforce ab und generiert eine SOQL-Abfrage wie select FIELD_1, FIELD_2 from ${sObjectName}. Wird ignoriert, wenn eine SOQL-Abfrage angegeben wird.
Es gibt auch sObjects, die in der Salesforce Bulk API nicht unterstützt werden. Wenn Sie einen Job mit einem nicht unterstützten Objekt erstellen, wird der folgende Fehler ausgegeben: Entity is not supported by the Bulk API. Diese Objekte werden auch von Einstein Analytics nicht unterstützt, das für die Abfrage von Daten die Bulk API verwendet.
Fälle, in denen die BULK API nicht verwendet wird:Wenn die Abfragelänge die Abfrage an Salesforce sendet, um das Array der Batch-Informationen zu erhalten, wird die Bulk API in einem Fall nicht verwendet. Wenn die Abfrage das Limit nicht überschreitet, wird die ursprüngliche Abfrage ausgeführt. Andernfalls wird zur Logik für breite Objekte gewechselt. Beispielsweise wird eine ID-Abfrage generiert, über die nur Batchinformationen für IDs abgerufen werden, die später zum Abrufen von Daten über die SOAP API verwendet werden.
Zuletzt geändert nach dem Ja Nein Filtern Sie die Daten so, dass nur Einträge enthalten sind, bei denen das Systemfeld LastModifiedDate größer oder gleich dem angegebenen Datum ist. Verwenden Sie das Salesforce-Datumsformat (siehe Beispiele). Wenn kein Wert angegeben ist, wird kein unterer Grenzwert angewendet.
Zuletzt geändert vor dem Ja Nein Filtern Sie die Daten so, dass nur Einträge enthalten sind, bei denen das Systemfeld LastModifiedDate vor dem angegebenen Datum liegt. Verwenden Sie das Salesforce-Datumsformat (Beispiele). Wenn Sie diesen Wert mit der Property Last modified after (Zuletzt geändert nach) angeben, können Sie Daten lesen, die innerhalb eines bestimmten Zeitraums geändert wurden. Wenn kein Wert angegeben ist, wird kein Obergrenze-Datum angewendet.
Dauer Ja Nein Daten filtern, sodass nur Datensätze gelesen werden, die innerhalb eines Zeitraums der angegebenen Größe zuletzt geändert wurden. Wenn die Dauer beispielsweise 6 hours ist und die Pipeline um 9:00 Uhr ausgeführt wird, werden Daten gelesen, die zuletzt zwischen 3:00 Uhr (einschließlich) und 9:00 Uhr (ausschließlich) aktualisiert wurden. Geben Sie die Dauer mit Zahlen und den folgenden Zeiteinheiten an:
  • seconds
  • minutes
  • hours
  • days
  • months
  • years
Es können mehrere Einheiten angegeben werden, aber jede Einheit kann nur einmal verwendet werden. Beispiel: 2 days, 1 hours, 30 minutes. Wenn für Letzte Änderung nach oder Letzte Änderung vor bereits ein Wert angegeben ist, wird die Dauer ignoriert.
Offset Ja Nein Daten so filtern, dass nur Einträge gelesen werden, bei denen das Systemfeld LastModifiedDate kleiner als der logische Startzeitpunkt der Pipeline abzüglich des angegebenen Offset ist. Wenn die Dauer beispielsweise 6 hours, der Offset 1 hours und die Pipeline um 9:00 Uhr ausgeführt wird, werden Daten gelesen, die zwischen 2:00 Uhr (einschließlich) und 8:00 Uhr (ausschließlich) zuletzt geändert wurden.
 Geben Sie die Dauer mithilfe von Zahlen und den folgenden Zeiteinheiten an:
  • seconds
  • minutes
  • hours
  • days
  • months
  • years
Es können mehrere Einheiten angegeben werden, aber jede Einheit kann nur einmal verwendet werden. Beispiel: 2 days, 1 hours, 30 minutes. Wenn für Letzte Änderung nach oder Letzte Änderung vor bereits ein Wert angegeben ist, wird der Offset ignoriert.
SOQL-Vorgangstyp Nein Nein Geben Sie den Abfragevorgang an, der auf der Tabelle ausgeführt werden soll. Wenn eine Abfrage ausgewählt ist, werden nur aktuelle Datensätze zurückgegeben. Wenn Sie queryAll auswählen, werden alle aktuellen und gelöschten Einträge zurückgegeben.
 Die Standardaktion ist query.
PK-Chunking aktivieren Ja Nein Beim Aufteilen nach Primärschlüssel (PK-Chunking) wird eine Abfrage auf große Tabellen anhand der Datensatz-IDs oder Primärschlüssel der abgefragten Datensätze in Teile oder Chunks aufgeteilt.
Salesforce empfiehlt, das PK-Chunking zu aktivieren, wenn Tabellen mit mehr als 10 Millionen Einträgen abgefragt werden oder wenn bei einer Bulk-Abfrage ständig ein Zeitüberschreitungsfehler auftritt. Weitere Informationen finden Sie unter PK-Chunking. Das Aufteilen von Primärschlüsseln funktioniert nur mit Abfragen, die keine SELECT-Klauseln oder andere Bedingungen als WHERE enthalten. Das Chunking wird für benutzerdefinierte Objekte und alle Freigabe- und Verlaufstabellen unterstützt, die Standardobjekte unterstützen.
Blockgröße Ja Nein Geben Sie die Größe des Chunks an. Die maximale Größe beträgt 250.000. Die Standardgröße ist 100.000.
Name des übergeordneten Salesforce-Objekts Ja Nein Übergeordnetes Element des Salesforce-Objekts. Damit wird das Chunking für Verlaufstabellen oder freigegebene Objekte aktiviert.

Beispiele für Salesforce-Datumsformate

Format syntax Beispiel
YYYY-MM-DDThh:mm:ss+hh:mm 1999-01-01T23:01:01+01:00
YYYY-MM-DDThh:mm:ss-hh:mm 1999-01-01T23:01:01-08:00
YYYY-MM-DDThh:mm:ssZ 1999-01-01T23:01:01Z

Datentypzuordnungen

In der folgenden Tabelle sind Salesforce-Datentypen mit den entsprechenden CDAP-Typen aufgeführt.

Salesforce-Datentyp CDAP-Schema-Datentyp
_bool boolean
_int int
_long long
_double, currency, percent, geolocation (Breitengrad), geolocation (Längengrad) double
date date
datetime timestamp (Mikrosekunden)
time time (Mikrosekunden)
picklist string
multipicklist string
combobox string
reference string
base64 string
textarea string
phone string
id string
url string
email string
encryptedstring string
datacategorygroupreference string
location string
address string
anyType string
json string
complexvalue string

Anwendungsfälle

Hier sind einige Anwendungsfälle für die Salesforce-Batchquelle:

Best Practices

Weitere Informationen zur Leistungssteigerung bei der Salesforce-Batchquelle finden Sie in den Best Practices.

Nächste Schritte