Lecture depuis Salesforce - AWS Glue

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Lecture depuis Salesforce

Prérequis

Un Salesforce sObject dont vous aimeriez lire un extrait. Vous aurez besoin du nom de l'objet tel que Account ou Case ouOpportunity.

Exemple :

salesforce_read = glueContext.create_dynamic_frame.from_options( connection_type="salesforce", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "Account", "API_VERSION": "v60.0" }

Requêtes de partitionnement

Vous pouvez fournir les options supplémentaires de Spark PARTITION_FIELDLOWER_BOUND,UPPER_BOUND, et NUM_PARTITIONS si vous souhaitez utiliser la simultanéité dans Spark. Avec ces paramètres, la requête d'origine serait divisée en NUM_PARTITIONS plusieurs sous-requêtes pouvant être exécutées simultanément par les tâches Spark.

  • PARTITION_FIELD: le nom du champ à utiliser pour partitionner la requête.

  • LOWER_BOUND: une valeur de limite inférieure inclusive du champ de partition choisi.

    Pour les champs Date ou Horodatage, le connecteur accepte le format d'horodatage Spark utilisé dans les requêtes SQL Spark.

    Exemples de valeurs valides :

    "TIMESTAMP \"1707256978123\"" "TIMESTAMP '2018-01-01 00:00:00.000 UTC'" "TIMESTAMP \"2018-01-01 00:00:00 Pacific/Tahiti\"" "TIMESTAMP \"2018-01-01 00:00:00\"" "TIMESTAMP \"-123456789\" Pacific/Tahiti" "TIMESTAMP \"1702600882\""
  • UPPER_BOUND: une valeur limite supérieure exclusive du champ de partition choisi.

  • NUM_PARTITIONS: le nombre de partitions.

  • TRANSFER_MODE: prend en charge deux modes : SYNC etASYNC. La valeur par défaut est SYNC. Lorsqu'elle est définie surASYNC, la requête Bulk API 2.0 sera utilisée pour le traitement.

Exemple :

salesforce_read = glueContext.create_dynamic_frame.from_options( connection_type="salesforce", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "Account", "API_VERSION": "v60.0", "PARTITION_FIELD": "SystemModstamp", "LOWER_BOUND": "TIMESTAMP '2021-01-01 00:00:00 Pacific/Tahiti'", "UPPER_BOUND": "TIMESTAMP '2023-01-10 00:00:00 Pacific/Tahiti'", "NUM_PARTITIONS": "10", "TRANSFER_MODE": "ASYNC" }