Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Voraussetzung
Ein ServiceNow Tables-Objekt, aus dem Sie lesen möchten. Sie benötigen den Objektnamen wie pa_bucket oder incident.
Beispiel:
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 Entitäts- und Felddetails:
ServiceNow Stellt für die folgenden Entitäten Endpunkte zum dynamischen Abrufen von Metadaten bereit, sodass die Operatorunterstützung für jede Entität auf Datentypebene erfasst wird.
Entität | Datentyp | Unterstützte Operatoren |
---|---|---|
Tabellen (dynamische Entitäten) | Ganzzahl | =,! =, <, <=, >, >=, ZWISCHEN |
BigDecimal | =,! =, <, <=, >, >=, ZWISCHEN | |
Gleitkommazahl | =,! =, <, <=, >, >=, ZWISCHEN | |
Long | =,! =, <, <=, >, >=, ZWISCHEN | |
Datum | =,! =, <, <=, >, >=, ZWISCHEN | |
DateTime | =,! =, <, <=, >, >=, ZWISCHEN | |
Boolesch | =, != | |
String | =,! =, <, <=, >, >=, ZWISCHEN, WIE | |
Struct | N/A |
Anmerkung
Der Datentyp Struct wird in der Antwort des Konnektors in einen String-Datentyp umgewandelt.
Anmerkung
DML_STATUS
ist ein zusätzliches benutzerdefiniertes Attribut, das für die Nachverfolgung von ERSTELLTEN/AKTUALISIERTEN Datensätzen verwendet wird.
Abfragen partitionieren
Partitionierung auf Feldbasis:
Sie können die zusätzlichen Spark-OptionenPARTITION_FIELD
,LOWER_BOUND
, und angebenUPPER_BOUND
, NUM_PARTITIONS
ob Sie Parallelität in Spark nutzen möchten. Mit diesen Parametern würde die ursprüngliche Abfrage in eine NUM_PARTITIONS
Reihe von Unterabfragen aufgeteilt, die von Spark-Aufgaben gleichzeitig ausgeführt werden können.
Entity-Name | Partitionierung von Feldern | Datentyp |
---|---|---|
Dynamische Entität | sys_mod_count | Ganzzahl |
sys_created_on, sys_updated_on | DateTime |
PARTITION_FIELD
: der Name des Feldes, das zur Partitionierung der Abfrage verwendet werden soll.LOWER_BOUND
: ein inklusiver Untergrenzwert des ausgewählten Partitionsfeldes.Für das Datetime-Feld akzeptieren wir das Spark-Zeitstempelformat, das in SPark SQL-Abfragen verwendet wird.
Beispiele für gültige Werte:
"2024-01-30T06:47:51.000Z"
UPPER_BOUND
: ein exklusiver Obergrenzwert des ausgewählten Partitionsfeldes.NUM_PARTITIONS
: die Anzahl der Partitionen.
In der folgenden Tabelle werden die Informationen zur Unterstützung von Feldern zur Partitionierung von Entitäten beschrieben:
Beispiel:
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"
}
Datensatzbasierte Partitionierung:
Sie können die zusätzliche Spark-Option bereitstellen, NUM_PARTITIONS
wenn Sie Parallelität in Spark nutzen möchten. Mit diesem Parameter wird die ursprüngliche Abfrage in eine NUM_PARTITIONS
Anzahl von Unterabfragen aufgeteilt, die von Spark-Aufgaben gleichzeitig ausgeführt werden können.
Bei der datensatzbasierten Partitionierung wird die Gesamtzahl der vorhandenen Datensätze von der ServiceNow API abgefragt und durch die angegebene Anzahl dividiert. NUM_PARTITIONS
Die resultierende Anzahl von Datensätzen wird dann gleichzeitig von jeder Unterabfrage abgerufen.
NUM_PARTITIONS
: die Anzahl der Partitionen.
Beispiel:
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"
}