Microsoft Dynamics 365 CRM 엔터티에서 읽기 - AWS Glue

Microsoft Dynamics 365 CRM 엔터티에서 읽기

사전 조건

  • 읽으려는 Microsoft Dynamics 365 CRM 객체입니다. 객체 이름(예: 연락처 또는 계정)이 필요합니다. 다음 표에는 지원되는 엔터티가 나와 있습니다.

지원되는 엔터티

개체 필터링 가능 제한 지원 정렬 기준 지원 Select * 지원 분할 지원
동적 엔터티

예제

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" }

Microsoft Dynamics 365 CRM 엔터티 및 필드 세부 정보

동적 메타데이터를 포함하는 엔터티:

Microsoft Dynamics 365 CRM은 메타데이터를 동적으로 가져올 수 있는 엔드포인트를 제공합니다. 그에 따라 동적 엔터티의 경우 운영자 지원은 데이터 유형 수준에서 캡처됩니다.

개체 데이터 형식 지원되는 연산자
동적 엔터티 DateTime =, >, >=, <, <=, BETWEEN
날짜 =, <, <=, >, >=
String =, !=
배정밀도 실수 =, <, <=, >, >=
Integer =, <, <=, >, >=
10진수 =, <, <=, >, >=
Long =, <, <=, >, >=
BigInteger =, <, <=, >, >=
나열 NA
Struct NA
NA

분할 쿼리

Microsoft Dynamics 365 CRM은 필드 기반 파티셔닝만 지원합니다.

Spark에서 동시성을 활용하려는 경우 추가 Spark 옵션(PARTITION_FIELD, LOWER_BOUND, UPPER_BOUND, NUM_PARTITIONS)을 제공할 수 있습니다. 이러한 파라미터를 사용하면 Spark 태스크에서 동시에 실행할 수 있는 NUM_PARTITIONS개의 하위 쿼리로 원본 쿼리가 분할됩니다.

  • PARTITION_FIELD: 쿼리 분할에 사용할 필드의 이름입니다.

  • LOWER_BOUND: 선택한 파티션 필드의 하한 값(경계 포함).

    Datetime의 경우 Spark SQL 쿼리에 사용된 Spark 타임스탬프 형식을 허용합니다. 유효한 값의 예제: "2024-01-30T06:47:51.000Z".

  • UPPER_BOUND: 선택한 파티션 필드의 상한 값(경계 제외).

  • NUM_PARTITIONS: 파티션 수.

엔터티 수준 분할 필드 지원 세부 정보는 아래 표에 나와 있습니다.

Entity Name Partitioning Fields 데이터 유형
동적 엔터티(표준 엔터티) 쿼리 가능한 동적 DateTime 필드 createdon, modifiedon
동적 엔터티(사용자 지정 엔터티) createdon, modifiedon createdon, modifiedon

예제

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" }