batch Módulo

Espacios de nombres de la operación por lotes para el SDK de Dataverse.

Clases

BatchDataFrameOperations

Contenedores orientados a dataframes para operaciones de registro por lotes.

Proporciona create, updatey delete que aceptanpandas.Series / pandas.DataFrame entradas y las convierten en dicts estándar antes de poner en cola en el lote. Esto permite a los autores de llamadas de ciencia de datos alimentar dataFrames directamente en un lote sin conversión manual.

Acceso a través de batch.dataframe.

Ejemplo:


   import pandas as pd

   batch = client.batch.new()
   df = pd.DataFrame([
       {"name": "Contoso", "telephone1": "555-0100"},
       {"name": "Fabrikam", "telephone1": "555-0200"},
   ])
   batch.dataframe.create("account", df)
   result = batch.execute()
BatchOperations

Espacio de nombres para operaciones por lotes (client.batch).

Acceso a través de client.batch. Use new para crear un BatchRequest generador.

Ejemplo:


   batch = client.batch.new()
   batch.records.create("account", {"name": "Fabrikam"})
   result = batch.execute()
BatchQueryOperations

Operaciones de consulta en .BatchRequest

Refleja client.query exactamente: los mismos nombres de método, las mismas firmas. Todos los métodos devuelven None; los resultados llegan a través de BatchResult.

No cree instancias directamente; use batch.query.

BatchRecordOperations

Registra las operaciones en un BatchRequest.

Reflejos client.records: los mismos nombres de método, las mismas firmas. Todos los métodos devuelven None; los resultados están disponibles a través de BatchResult después executede .

Métodos de disponibilidad general: retrieve (registro único) y list (varios registros, página única). get está en desuso: use retrieve en su lugar.

No cree instancias directamente; use batch.records.

BatchRequest

Generador para construir y ejecutar una solicitud de OData $batch de Dataverse.

Obtener a través new de (client.batch.new()). Agregue operaciones a través recordsde , tables, queryy dataframe, opcionalmente, agrupe las escrituras en y changeset, a continuación, llame a execute.

Las operaciones se ejecutan secuencialmente en el orden agregado. El resultado BatchResult contiene una BatchItemResponse por solicitud HTTP enviada (algunas operaciones se expanden a varias solicitudes).

Nota:

Máximo de 1000 operaciones HTTP por lote.

Ejemplo:


   batch = client.batch.new()
   batch.records.create("account", {"name": "Contoso"})
   batch.tables.get("account")
   with batch.changeset() as cs:
       ref = cs.records.create("contact", {"firstname": "Alice"})
       cs.records.update("account", account_id, {
           "primarycontactid@odata.bind": ref
       })
   result = batch.execute()
BatchTableOperations

Operaciones de metadatos de tabla en un BatchRequest.

Refleja client.tables exactamente: los mismos nombres de método, las mismas firmas. Todos los métodos devuelven None; los resultados llegan a través de BatchResult.

Nota:

tables.delete, tables.add_columns y tables.remove_columns

requerir una búsqueda de metadatos (GET EntityDefinitions) en

execute tiempo para resolver el MetadataId de la tabla.

Esta búsqueda es transparente para el autor de la llamada.

Nota:

tables.add_columns y tables.remove_columns producen uno

elemento por lotes por columna, por lo que contribuyen a varias entradas

responses.

No cree instancias directamente; use batch.tables.

ChangeSet

Un grupo transaccional de operaciones de escritura de registro único.

Todas las operaciones se realizan correctamente o se revierten juntas. Use como administrador de contexto o llame records a para agregar operaciones directamente.

No cree instancias directamente; use changeset.

Ejemplo:


   with batch.changeset() as cs:
       ref = cs.records.create("contact", {"firstname": "Alice"})
       cs.records.update("account", account_id, {
           "primarycontactid@odata.bind": ref
       })
ChangeSetRecordOperations

Registre las operaciones de escritura disponibles dentro de .ChangeSet

Reflejos, pero restringidos a formularios client.records de registro único (sin creación o actualización o eliminación masivas). Solo se permiten operaciones de escritura: GET no se permite dentro de un conjunto de cambios.

No cree instancias directamente; use ChangeSet.records.