Lettura da ServiceNow entità - AWS Glue

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Lettura da ServiceNow entità

Prerequisito

Un oggetto ServiceNow Tables da cui desideri leggere. Avrai bisogno del nome dell'oggetto come pa_bucket o incident.

Esempio:

servicenow_read = glueContext.create_dynamic_frame.from_options( connection_type="servicenow", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "pa_buckets", "API_VERSION": "v2" "instanceUrl": "https://<instance-name>.service-now.com" } )

ServiceNow dettagli dell'entità e del campo:

Per le seguenti entità, ServiceNow fornisce endpoint per recuperare i metadati in modo dinamico, in modo che il supporto dell'operatore venga acquisito a livello di tipo di dati per ciascuna entità.

Entità Tipo di dati Operatori supportati
Tabelle (entità dinamiche) Numero intero =,! =, <, <=, >, >=, TRA
BigDecimal =,! =, <, <=, >, >=, TRA
Float =,! =, <, <=, >, >=, TRA
Long =,! =, <, <=, >, >=, TRA
Data =,! =, <, <=, >, >=, TRA
DateTime =,! =, <, <=, >, >=, TRA
Booleano =, !=
Stringa =,! =, <, <=, >, >=, TRA, COME
Struct N/D
Nota

Il tipo di dati Struct viene convertito in un tipo di dati String nella risposta del connettore.

Nota

DML_STATUSè un attributo aggiuntivo definito dall'utente utilizzato per tracciare i record CREATED/UPDATED.

Interrogazioni di partizionamento

Partizionamento di base sul campo:

Puoi fornire le opzioni Spark aggiuntive ePARTITION_FIELD, NUM_PARTITIONS se desideri LOWER_BOUNDUPPER_BOUND, utilizzare la concorrenza in Spark. Con questi parametri, la query originale verrebbe suddivisa in un NUM_PARTITIONS numero di sottoquery che possono essere eseguite contemporaneamente dalle attività Spark.

Nome dell'entità Campi di partizionamento Tipo di dati
Entità dinamica sys_mod_count Numero intero
sys_created_on, sys_updated_on DateTime
  • PARTITION_FIELD: il nome del campo da utilizzare per partizionare la query.

  • LOWER_BOUND: un valore limite inferiore inclusivo del campo di partizione scelto.

    Per il campo Datetime, accettiamo il formato di timestamp Spark utilizzato nelle query SQL. SPark

    Esempi di valori validi:

    "2024-01-30T06:47:51.000Z"
  • UPPER_BOUND: un valore limite superiore esclusivo del campo di partizione scelto.

  • NUM_PARTITIONS: il numero di partizioni.

La tabella seguente descrive i dettagli del supporto del campo di partizionamento delle entità:

Esempio:

servicenow_read = glueContext.create_dynamic_frame.from_options( connection_type="servicenow", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "pa_buckets", "API_VERSION": "v2", "instanceUrl": "https://<instance-name>.service-now.com" "PARTITION_FIELD": "sys_created_on" "LOWER_BOUND": "2024-01-30T06:47:51.000Z" "UPPER_BOUND": "2024-06-30T06:47:51.000Z" "NUM_PARTITIONS": "10" }

Partizionamento basato su record:

Puoi fornire l'opzione Spark aggiuntiva NUM_PARTITIONS se desideri utilizzare la concorrenza in Spark. Con questo parametro, la query originale viene suddivisa in un NUM_PARTITIONS numero di sottoquery che possono essere eseguite contemporaneamente dalle attività Spark.

Nel partizionamento basato sui record, il numero totale di record presenti viene interrogato dall'API e diviso per il ServiceNow numero fornito. NUM_PARTITIONS Il numero di record risultante viene quindi recuperato contemporaneamente da ciascuna sottoquery.

  • NUM_PARTITIONS: il numero di partizioni.

Esempio:

servicenow_read = glueContext.create_dynamic_frame.from_options( connection_type="servicenow", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "pa_buckets", "API_VERSION": "v2", "instanceUrl": "https://<instance-name>.service-now.com" "NUM_PARTITIONS": "2" }