Lesen aus Entitäten von Microsoft Dynamics 365 CRM - AWS Glue

Lesen aus Entitäten von Microsoft Dynamics 365 CRM

Voraussetzungen

  • Ein Objekt in Microsoft Dynamics 365 CRM, aus dem gelesen werden soll. Sie benötigen den Objektnamen wie Kontakte oder Konten. Die folgende Tabelle zeigt die unterstützten Entitäten.

Unterstützte Entitäten

Entität Kann gefiltert werden Unterstützt Limit Unterstützt „Sortieren nach“ Unterstützt „* auswählen“ Unterstützt Partitionierung
Dynamische Entität Ja Ja Ja Ja Ja

Beispiel

dynamics365_read = glueContext.create_dynamic_frame.from_options( connection_type="microsoftdynamics365crm", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "dynamic_entity", "API_VERSION": "v9.2", "INSTANCE_URL": "https://{tenantID}.api.crm.dynamics.com" }

Entitäts- und Felddetails für Microsoft Dynamics 365 CRM

Entitäten mit dynamischen Metadaten:

Microsoft Dynamics 365 CRM bietet Endpunkte zum dynamischen Abrufen von Metadaten. Daher wird bei dynamischen Entitäten die Operatorunterstützung auf Datentypebene erfasst.

Entität Datentyp Unterstützte Operatoren
Dynamische Entität DateTime =, <, <=, >, >=, BETWEEN
Datum =, <, <=, >, >=
String =, !=
Double =, <, <=, >, >=
Ganzzahl =, <, <=, >, >=
Dezimal =, <, <=, >, >=
Long =, <, <=, >, >=
BigInteger =, <, <=, >, >=
Auflisten N/A
Struct N/A
Zuordnung N/A

Partinionieren von Abfragen

Microsoft Dynamics 365 CRM unterstützt nur feldbasierte Partitionierung.

Die zusätzlichen Spark-Optionen PARTITION_FIELD, LOWER_BOUND, UPPER_BOUND und NUM_PARTITIONS können angegeben werden, wenn Sie Parallelität in Spark nutzen möchten. Mit diesen Parametern würde die ursprüngliche Abfrage in NUM_PARTITIONS Unterabfragen aufgeteilt, die von Spark-Aufgaben gleichzeitig ausgeführt werden können.

  • PARTITION_FIELD: der Name des Feldes, das zur Partitionierung der Abfrage verwendet werden soll.

  • LOWER_BOUND: ein inklusiver Untergrenzwert des ausgewählten Partitionsfelds.

    Für DateTime-Feld akzeptieren wir das Spark-Zeitstempelformat, das in Spark-SQL-Abfragen verwendet wird. Beispiel für gültige Werte: "2024-01-30T06:47:51.000Z".

  • UPPER_BOUND: ein exklusiver Obergrenzwert des ausgewählten Partitionsfelds.

  • NUM_PARTITIONS: Anzahl der Partitionen.

Details zur Unterstützung von Feldern für die entitätsbezogene Partitionierung sind in der folgenden Tabelle aufgeführt.

Entity Name Partitionierung von Feldern DataType
Dynamische Entität (Standardentität) Dynamische DateTime-Felder, die abfragbar sind createdon, modifiedon
Dynamische Entität (benutzerdefinierte Entität) createdon, modifiedon createdon, modifiedon

Beispiel

dynamics365_read = glueContext.create_dynamic_frame.from_options( connection_type="microsoftdynamics365crm", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "dynamic_entity", "API_VERSION": "v9.2", "instanceUrl": "https://{tenantID}.api.crm.dynamics.com" "PARTITION_FIELD": "createdon" "LOWER_BOUND": "2024-01-30T06:47:51.000Z" "UPPER_BOUND": "2024-06-30T06:47:51.000Z" "NUM_PARTITIONS": "10" }