Salesforce-Batchquelle

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

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

Hinweise

Plug-in konfigurieren

  1. Rufen Sie die Cloud Data Fusion-Weboberfläche auf und klicken Sie auf Studio.
  2. Prüfen Sie, ob Data Pipeline – Batch (Datenpipeline – Batch) ausgewählt ist (nicht Realtime).
  3. Klicken Sie im Menü Source (Quelle) auf Salesforce. Der Salesforce-Knoten wird in Ihrer Pipeline angezeigt. Wenn die Salesforce-Quelle auf der Seite Studio nicht angezeigt wird, stellen Sie die Salesforce-Plug-ins aus dem Cloud Data Fusion Hub bereit.
  4. Um die Quelle zu konfigurieren, rufen Sie den Salesforce-Knoten auf und klicken Sie auf Eigenschaften.
  5. Geben Sie die folgenden Eigenschaften ein. Eine vollständige Liste finden Sie unter Eigenschaften.

    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 Herkunft 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. Die Option Verbindung verwenden bleibt deaktiviert.
      2. Geben Sie im Bereich Verbindung die folgenden Informationen aus dem Salesforce-Konto in die folgenden Felder ein:

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

        Informationen zum Abrufen der Anmeldedaten von Salesforce finden Sie unter Attribute 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 Datensätze berücksichtigt, die nach einem bestimmten Zeitpunkt zuletzt geändert wurden.
      • Zuletzt geändert vor: Es werden nur Datensätze berücksichtigt, die vor einem bestimmten Zeitpunkt zuletzt geändert wurden.
      • Dauer: Es werden nur Datensätze berücksichtigt, die zuletzt innerhalb eines Zeitfensters der angegebenen Größe geändert wurden.
      • Offset: Es werden nur Datensätze berücksichtigt, bei denen das Datum der letzten Änderung kürzer als die logische Startzeit der Pipeline abzüglich des angegebenen Offsets ist.
    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 durch PK-Chunking verbessern.

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

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

Attribute

Attribut Makro aktiviert Erforderliches Attribut Beschreibung
Referenzname Nein Ja Wird verwendet, um diese Quelle für Aufgaben wie die Herkunft oder das Annotieren von Metadaten eindeutig zu identifizieren.
Verbindung verwenden Nein Nein Vorhandene Verbindung verwenden. Wenn eine Verbindung verwendet wird, müssen Sie die Anmeldedaten nicht angeben.
Verbindungen suchen 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, wird es von Cloud Data Fusion vor der Authentifizierung bei Salesforce angehängt.
Consumer-Key Ja Ja Consumer Key der Anwendung. Sie wird auch als OAuth-Client-ID bezeichnet. Um einen Consumer-Key zu erhalten, müssen Sie eine mit Salesforce verbundene Anwendung erstellen.
Consumer-Secret Ja Ja Anwendungsnutzer-Secret. Dies wird auch als OAuth-Clientschlüssel bezeichnet. Erstellen Sie eine verbundene Salesforce-Anwendung, um einen Clientschlüssel zu erhalten.
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 Zeit in Millisekunden, die auf die Initialisierung der Verbindung gewartet werden soll, bevor eine Zeitüberschreitung auftritt.
Der Standardwert 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'
SObject-Name Ja Nein Zu lesender Salesforce-Objektname. 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 ist.
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. Außerdem werden diese Objekte nicht von Einstein Analytics unterstützt, das die Bulk API zum Abfragen von Daten verwendet.
Fälle, in denen die BULK API nicht verwendet wird:Wenn die Abfragelänge die Abfrage an Salesforce sendet, um das Array der Batchinformationen zu erhalten, wird die Bulk API in einem Fall nicht verwendet. Wenn die Abfrage innerhalb des Limits liegt, wird die ursprüngliche Abfrage ausgeführt. Andernfalls wird zur Wide-Objektlogik gewechselt. Es wird beispielsweise eine ID-Abfrage generiert, mit der 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 Daten so, dass nur Datensätze berücksichtigt werden, 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 keine Untergrenze angewendet.
Zuletzt geändert vor dem Ja Nein Filtern Sie Daten so, dass nur Datensätze berücksichtigt werden, bei denen das Systemfeld LastModifiedDate vor dem angegebenen Datum liegt. Verwenden Sie das Salesforce-Datumsformat (Beispiele). Wenn Sie diesen Wert mit der Eigenschaft Zuletzt geändert nach angeben, können Sie Daten lesen, die innerhalb eines bestimmten Zeitfensters geändert wurden. Wenn kein Wert angegeben ist, wird kein oberes Datum angewendet.
Laufzeit Ja Nein Filtern Sie Daten so, dass nur Datensätze gelesen werden, die in einem Zeitfenster der angegebenen Größe zuletzt geändert wurden. Wenn die Dauer beispielsweise 6 hours beträgt und die Pipeline um 9:00 Uhr ausgeführt wird, werden Daten gelesen, die zuletzt von 3:00 Uhr (einschließlich) bis 9:00 Uhr (ausschließlich) aktualisiert wurden. Gib die Dauer mit Zahlen und den folgenden Zeiteinheiten an:
  • seconds
  • minutes
  • hours
  • days
  • months
  • years
Sie können mehrere Einheiten angeben, aber jede Einheit kann nur einmal verwendet werden. Beispiel: 2 days, 1 hours, 30 minutes. Wenn für Zuletzt geändert nach oder Zuletzt geändert vor bereits ein Wert angegeben ist, wird die Dauer ignoriert.
Offset Ja Nein Filtern Sie Daten so, dass nur Datensätze gelesen werden, bei denen das Systemfeld LastModifiedDate kürzer als die logische Startzeit der Pipeline abzüglich des angegebenen Offsets ist. Wenn die Dauer beispielsweise 6 hours ist, ist der Offset 1 hours und die Pipeline wird um 9:00 Uhr ausgeführt. Dann werden Daten gelesen, die zwischen 2:00 Uhr (einschließlich) und 8:00 Uhr (ausschließlich) zuletzt geändert wurden.
Gib die Dauer in Zahlen und aus den folgenden Zeiteinheiten an:
  • seconds
  • minutes
  • hours
  • days
  • months
  • years
Sie können mehrere Einheiten angeben, aber jede Einheit kann nur einmal verwendet werden. Beispiel: 2 days, 1 hours, 30 minutes. Wenn für Zuletzt geändert nach oder Zuletzt geändert vor bereits ein Wert angegeben ist, wird der Offset ignoriert.
SOQL-Vorgangstyp Nein Nein Geben Sie den Abfragevorgang an, der für die Tabelle ausgeführt werden soll. Wenn eine Abfrage ausgewählt wird, werden nur aktuelle Datensätze zurückgegeben. Wenn Sie queryAll auswählen, werden alle aktuellen und gelöschten Datensätze zurückgegeben.
Der Standardvorgang ist query.
PK-Aufteilung aktivieren Ja Nein Beim Primärschlüssel-Chunking wird eine Abfrage für große Tabellen in Teile oder Blöcke auf Basis von Datensatz-IDs oder Primärschlüsseln der abgefragten Datensätze aufgeteilt.
Salesforce empfiehlt, die PK-Aufteilung zu aktivieren, wenn Sie Tabellen mit mehr als 10 Millionen Datensätzen abfragen oder wenn bei einer Bulk-Abfrage ständig eine Zeitüberschreitung auftritt. Weitere Informationen finden Sie unter PK-Chunking. Die PK-Aufteilung funktioniert nur bei Abfragen, die keine SELECT-Klauseln oder anderen Bedingungen als WHERE enthalten. Das Chunking wird für benutzerdefinierte Objekte und alle Freigabe- und Verlaufstabellen unterstützt, die Standardobjekte unterstützen.
Chunk-Größe Ja Nein Geben Sie die Größe des Chunks an. Die Maximalgröße beträgt 250.000. Die Standardgröße ist 100.000.
Name des übergeordneten SObject Ja Nein Übergeordnetes Element des Salesforce-Objekts. Damit wird das Aufteilen für Verlaufstabellen oder gemeinsam genutzte Objekte aktiviert.

Beispiele für das Salesforce-Datumsformat

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

Die folgende Tabelle enthält eine Liste von Salesforce-Datentypen mit entsprechenden CDAP-Typen.

Salesforce-Datentyp CDAP-Schemadatentyp
_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

Sehen Sie sich die folgenden Anwendungsfälle für die Salesforce-Batchquelle an:

Best Practices

Weitere Informationen zum Verbessern der Leistung in der Salesforce-Batchquelle finden Sie in den Best Practices.

Nächste Schritte