CosmosContainer Clase

  • java.lang.Object
    • com.azure.cosmos.CosmosContainer

public class CosmosContainer

Proporciona métodos sincrónicos para leer, eliminar y reemplazar contenedores existentes Proporciona métodos para interactuar con recursos secundarios (elementos, scripts, conflictos)

Resumen del método

Modificador y tipo Método y descripción
CosmosItemResponse<T> createItem(T item)

Crea un nuevo elemento de forma sincrónica y devuelve su respuesta de elemento de Cosmos correspondiente.

CosmosItemResponse<T> createItem(T item, CosmosItemRequestOptions options)

Crea un nuevo elemento de forma sincrónica y devuelve su respuesta de elemento de Cosmos respectiva al especificar opciones adicionales.

CosmosItemResponse<T> createItem(T item, PartitionKey partitionKey, CosmosItemRequestOptions options)

Crea un nuevo elemento de forma sincrónica y devuelve su respuesta de elemento de Cosmos correspondiente al especificar opciones adicionales.

CosmosItemResponse<Object> deleteItem(T item, CosmosItemRequestOptions options)

Elimina un elemento del contenedor actual.

CosmosItemResponse<T> patchItem(String itemId, PartitionKey partitionKey, CosmosPatchOperations cosmosPatchOperations, CosmosPatchItemRequestOptions options, Class<T> itemType)

Ejecute una actualización parcial que modifique propiedades o campos específicos del elemento sin reemplazar todo el elemento.

CosmosItemResponse<T> patchItem(String itemId, PartitionKey partitionKey, CosmosPatchOperations cosmosPatchOperations, Class<T> itemType)

Ejecute una actualización parcial que modifique propiedades o campos específicos del elemento sin reemplazar todo el elemento.

CosmosPagedIterable<T> queryChangeFeed(CosmosChangeFeedRequestOptions options, Class<T> classType)

Consulte los elementos de la fuente de cambios del contenedor actual mediante CosmosChangeFeedRequestOptions.

CosmosPagedIterable<T> queryItems(SqlQuerySpec querySpec, CosmosQueryRequestOptions options, Class<T> classType)

Consulta de elementos del contenedor actual que devuelve los resultados como CosmosPagedIterable<T>.

CosmosPagedIterable<T> queryItems(String query, CosmosQueryRequestOptions options, Class<T> classType)

Consulta de elementos del contenedor actual que devuelve los resultados como CosmosPagedIterable<T>.

CosmosPagedIterable<T> readAllItems(PartitionKey partitionKey, CosmosQueryRequestOptions options, Class<T> classType)

Lee todos los elementos de una partición lógica que devuelven los resultados como CosmosPagedIterable<T>.

CosmosPagedIterable<T> readAllItems(PartitionKey partitionKey, Class<T> classType)

Lee todos los elementos de una partición lógica que devuelven los resultados como CosmosPagedIterable<T>.

CosmosItemResponse<T> readItem(String itemId, PartitionKey partitionKey, CosmosItemRequestOptions options, Class<T> itemType)

Lee un elemento del contenedor actual mientras especifica opciones adicionales.

CosmosItemResponse<T> readItem(String itemId, PartitionKey partitionKey, Class<T> itemType)

Lee un elemento del contenedor actual.

FeedResponse<T> readMany(List<CosmosItemIdentity> itemIdentityList, Class<T> classType)

Lee muchos documentos.

FeedResponse<T> readMany(List<CosmosItemIdentity> itemIdentityList, String sessionToken, Class<T> classType)

Lee muchos documentos.

CosmosItemResponse<T> replaceItem(T item, String itemId, PartitionKey partitionKey, CosmosItemRequestOptions options)

Reemplaza un elemento existente en un contenedor por un nuevo elemento.

CosmosItemResponse<T> upsertItem(T item)

Upserts un elemento de Cosmos en el contenedor actual.

CosmosItemResponse<T> upsertItem(T item, CosmosItemRequestOptions options)

Upserts un elemento de sincronización de Cosmos de elemento al especificar opciones adicionales.

CosmosItemResponse<T> upsertItem(T item, PartitionKey partitionKey, CosmosItemRequestOptions options)

Upserts un elemento de sincronización de Cosmos de elemento al especificar opciones adicionales.

Iterable<CosmosBulkOperationResponse<TContext>> executeBulkOperations(Iterable<CosmosItemOperation> operations)

Ejecuta la lista de operaciones en masa.

Iterable<CosmosBulkOperationResponse<TContext>> executeBulkOperations(Iterable<CosmosItemOperation> operations, CosmosBulkExecutionOptions bulkOptions)

Ejecuta la lista de operaciones en masa.

CosmosContainerResponse delete()

Elimina el contenedor de Cosmos actual.

CosmosContainerResponse delete(CosmosContainerRequestOptions options)

Elimina el contenedor de Cosmos actual al especificar opciones adicionales, como If-Match.

CosmosItemResponse<Object> deleteAllItemsByPartitionKey(PartitionKey partitionKey, CosmosItemRequestOptions options)

Elimina todos los elementos del contenedor con el valor de clave de particiónespecificado.

CosmosItemResponse<Object> deleteItem(String itemId, PartitionKey partitionKey, CosmosItemRequestOptions options)

Elimina un elemento del contenedor actual.

void enableGlobalThroughputControlGroup(ThroughputControlGroupConfig groupConfig, GlobalThroughputControlConfig globalControlConfig)

Habilite el grupo de control de rendimiento con el modo de control global.

void enableLocalThroughputControlGroup(ThroughputControlGroupConfig groupConfig)

Habilite el grupo de control de rendimiento con el modo de control local.

CosmosBatchResponse executeCosmosBatch(CosmosBatch cosmosBatch)

Ejecuta el lote transaccional.

CosmosBatchResponse executeCosmosBatch(CosmosBatch cosmosBatch, CosmosBatchRequestOptions requestOptions)

Ejecuta el lote transaccional.

List<FeedRange> getFeedRanges()

Obtiene una lista de FeedRange que se puede usar para paralelizar las operaciones de fuente.

String getId()

Obtiene el identificador de contenedor actual.

CosmosScripts getScripts()

Obtiene los scripts de Cosmos mediante el contenedor actual como contexto.

void openConnectionsAndInitCaches()

Obsoleto

Inicializa el contenedor al calentar las memorias caché y las conexiones de la región de lectura actual.

void openConnectionsAndInitCaches(int numProactiveConnectionRegions)

Obsoleto

Inicializa el contenedor al calentar las memorias caché y las conexiones a un no especificado.

CosmosContainerResponse read()

Lee el contenedor actual.

CosmosContainerResponse read(CosmosContainerRequestOptions options)

Lee el contenedor actual mientras especifica opciones adicionales, como If-Match.

ThroughputResponse readThroughput()

Obtiene el rendimiento del contenedor actual.

CosmosContainerResponse replace(CosmosContainerProperties containerProperties)

Reemplaza las propiedades del contenedor actual.

CosmosContainerResponse replace(CosmosContainerProperties containerProperties, CosmosContainerRequestOptions options)

Reemplaza las propiedades del contenedor actual al especificar opciones adicionales, como If-Match.

ThroughputResponse replaceThroughput(ThroughputProperties throughputProperties)

Establece el rendimiento del contenedor actual.

Métodos heredados de java.lang.Object

Detalles del método

createItem

public CosmosItemResponse createItem(T item)

Crea un nuevo elemento de forma sincrónica y devuelve su respuesta de elemento de Cosmos correspondiente.

Parameters:

item - el elemento

Returns:

la respuesta del elemento de Cosmos

createItem

public CosmosItemResponse createItem(T item, CosmosItemRequestOptions options)

Crea un nuevo elemento de forma sincrónica y devuelve su respuesta de elemento de Cosmos respectiva al especificar opciones adicionales.

El valor de la clave de partición se extraerá automáticamente del contenido del elemento.

Parameters:

item - el elemento.
options - las opciones.

Returns:

la respuesta del elemento cosmos.

createItem

public CosmosItemResponse createItem(T item, PartitionKey partitionKey, CosmosItemRequestOptions options)

Crea un nuevo elemento de forma sincrónica y devuelve su respuesta de elemento de Cosmos respectiva al especificar opciones adicionales.

Parameters:

item - el elemento.
partitionKey - la clave de partición.
options - las opciones.

Returns:

la respuesta del elemento de Cosmos.

deleteItem

public CosmosItemResponse deleteItem(T item, CosmosItemRequestOptions options)

Elimina un elemento del contenedor actual.

Parameters:

item - el elemento que se va a eliminar.
options - las opciones.

Returns:

la respuesta del elemento de Cosmos.

patchItem

public CosmosItemResponse patchItem(String itemId, PartitionKey partitionKey, CosmosPatchOperations cosmosPatchOperations, CosmosPatchItemRequestOptions options, Class itemType)

Ejecute una actualización parcial que modifique propiedades o campos específicos del elemento sin reemplazar todo el elemento.

CosmosPatchOperations cosmosPatchOperations = CosmosPatchOperations.create();

 cosmosPatchOperations
     .add("/departure", "SEA")
     .increment("/trips", 1);

 CosmosItemResponse<Passenger> response = cosmosContainer.patchItem(
     passenger.getId(),
     new PartitionKey(passenger.getId()),
     cosmosPatchOperations,
     Passenger.class);

Parameters:

itemId - el identificador del elemento.
partitionKey - la clave de partición.
cosmosPatchOperations - Representa un contenedor que tiene una lista de operaciones que se van a aplicar secuencialmente al elemento de Cosmos al que se hace referencia.
options - las opciones de solicitud.
itemType - el tipo de elemento.

Returns:

la respuesta del recurso de elemento de Cosmos con el elemento revisado o una excepción.

patchItem

public CosmosItemResponse patchItem(String itemId, PartitionKey partitionKey, CosmosPatchOperations cosmosPatchOperations, Class itemType)

Ejecute una actualización parcial que modifique propiedades o campos específicos del elemento sin reemplazar todo el elemento.

CosmosPatchOperations cosmosPatchOperations = CosmosPatchOperations.create();

 cosmosPatchOperations
     .add("/departure", "SEA")
     .increment("/trips", 1);

 CosmosItemResponse<Passenger> response = cosmosContainer.patchItem(
     passenger.getId(),
     new PartitionKey(passenger.getId()),
     cosmosPatchOperations,
     Passenger.class);

Parameters:

itemId - el identificador del elemento.
partitionKey - la clave de partición.
cosmosPatchOperations - Representa un contenedor que tiene una lista de operaciones que se van a aplicar secuencialmente al elemento de Cosmos al que se hace referencia.
itemType - el tipo de elemento.

Returns:

la respuesta del recurso de elemento de Cosmos con el elemento revisado o una excepción.

queryChangeFeed

public CosmosPagedIterable queryChangeFeed(CosmosChangeFeedRequestOptions options, Class classType)

Consulte los elementos de la fuente de cambios del contenedor actual mediante CosmosChangeFeedRequestOptions.

CosmosChangeFeedRequestOptions options = CosmosChangeFeedRequestOptions
     .createForProcessingFromNow(FeedRange.forFullRange())
     .allVersionsAndDeletes();

 Iterable<FeedResponse<Passenger>> feedResponses = cosmosContainer.queryChangeFeed(options, Passenger.class)
     .iterableByPage();
 for (FeedResponse<Passenger> feedResponse : feedResponses) {
     List<Passenger> results = feedResponse.getResults();
     System.out.println(results);
 }

La página siguiente se puede recuperar llamando a queryChangeFeed de nuevo con una nueva instancia de CosmosChangeFeedRequestOptions creada a partir del token de continuación de la instancia devuelta FeedResponse<T> anteriormente.

Parameters:

options - las opciones de solicitud de fuente de cambios.
classType - el tipo de clase .

Returns:

que contiene una CosmosPagedFlux<T> página de respuesta de fuente

queryItems

public CosmosPagedIterable queryItems(SqlQuerySpec querySpec, CosmosQueryRequestOptions options, Class classType)

Consulta de elementos del contenedor actual que devuelve los resultados como CosmosPagedIterable<T>.

CosmosQueryRequestOptions options = new CosmosQueryRequestOptions();
 String query = "SELECT * FROM Passenger p WHERE (p.departure = @departure)";
 List<SqlParameter> parameters = Collections.singletonList(new SqlParameter("@departure", "SEA"));
 SqlQuerySpec sqlQuerySpec = new SqlQuerySpec(query, parameters);

 Iterable<FeedResponse<Passenger>> queryResponses = cosmosContainer.queryItems(sqlQuerySpec, options, Passenger.class)
     .iterableByPage();

 for (FeedResponse<Passenger> feedResponse : queryResponses) {
     List<Passenger> results = feedResponse.getResults();
     System.out.println(results);
 }

Parameters:

querySpec - la especificación de consulta.
options - las opciones.
classType - el tipo de clase .

Returns:

queryItems

public CosmosPagedIterable queryItems(String query, CosmosQueryRequestOptions options, Class classType)

Consulta de elementos del contenedor actual que devuelve los resultados como CosmosPagedIterable<T>.

CosmosQueryRequestOptions options = new CosmosQueryRequestOptions();
 String query = "SELECT * FROM Passenger WHERE Passenger.departure IN ('SEA', 'IND')";
 Iterable<FeedResponse<Passenger>> queryResponses = cosmosContainer.queryItems(query, options, Passenger.class)
     .iterableByPage();

 for (FeedResponse<Passenger> feedResponse : queryResponses) {
     List<Passenger> results = feedResponse.getResults();
     System.out.println(results);
 }

Parameters:

query - la consulta.
options - las opciones.
classType - el tipo de clase .

Returns:

readAllItems

public CosmosPagedIterable readAllItems(PartitionKey partitionKey, CosmosQueryRequestOptions options, Class classType)

Lee todos los elementos de una partición lógica que devuelven los resultados como CosmosPagedIterable<T>.

CosmosPagedIterable<Passenger> passengers = cosmosContainer
     .readAllItems(new PartitionKey(partitionKey), Passenger.class);

 passengers.forEach(passenger -> {
     System.out.println(passenger);
 });

Parameters:

partitionKey - el valor de clave de partición de los documentos que deben leerse
options - las opciones de fuente.
classType - el tipo de clase .

Returns:

readAllItems

public CosmosPagedIterable readAllItems(PartitionKey partitionKey, Class classType)

Lee todos los elementos de una partición lógica que devuelven los resultados como CosmosPagedIterable<T>.

CosmosPagedIterable<Passenger> passengers = cosmosContainer
     .readAllItems(new PartitionKey(partitionKey), Passenger.class);

 passengers.forEach(passenger -> {
     System.out.println(passenger);
 });

Parameters:

partitionKey - el valor de clave de partición de los documentos que deben leerse
classType - el tipo de clase .

Returns:

readItem

public CosmosItemResponse readItem(String itemId, PartitionKey partitionKey, CosmosItemRequestOptions options, Class itemType)

Lee un elemento del contenedor actual mientras especifica opciones adicionales. Esta operación se usa para recuperar un solo elemento de un contenedor en función de su identificador único (ID) y clave de partición. La operación readItem proporciona acceso directo a un elemento específico mediante su identificador único, que consta del identificador del elemento y del valor de clave de partición. Esta operación es eficaz para recuperar un elemento conocido por su identificador y clave de partición sin necesidad de realizar consultas complejas.

Parameters:

itemId - el identificador del elemento.
partitionKey - la clave de partición.
options - las opciones (opcional).
itemType - el tipo de clase de elemento.

Returns:

la respuesta del elemento de Cosmos.

readItem

public CosmosItemResponse readItem(String itemId, PartitionKey partitionKey, Class itemType)

Lee un elemento del contenedor actual. Esta operación se usa para recuperar un solo elemento de un contenedor en función de su identificador único (ID) y clave de partición. La operación readItem proporciona acceso directo a un elemento específico mediante su identificador único, que consta del identificador del elemento y del valor de clave de partición. Esta operación es eficaz para recuperar un elemento conocido por su identificador y clave de partición sin necesidad de realizar consultas complejas.

// Read an item
 try {
     CosmosItemResponse<Passenger> response = cosmosContainer.readItem(
         passenger.getId(),
         new PartitionKey(passenger.getId()),
         Passenger.class
     );
     Passenger passengerItem = response.getItem();
 } catch (NotFoundException e) {
     // catch exception if item not found
     System.out.printf("Passenger with item id %s not found\n",
         passenger.getId());
 } catch (Exception e) {
     System.out.println(e.getMessage());
 }

 // ...

Parameters:

itemId - el identificador del elemento.
partitionKey - la clave de partición.
itemType - el tipo de clase de elemento.

Returns:

la respuesta del elemento de Cosmos.

readMany

public FeedResponse readMany(List itemIdentityList, Class classType)

Lee muchos documentos. Resulta útil para leer muchos documentos con un identificador determinado y una clave de partición en una sola solicitud. Si falta algún documento de la lista, no se producirá ninguna excepción.

List<CosmosItemIdentity> itemIdentityList = new ArrayList<>();
 itemIdentityList.add(new CosmosItemIdentity(new PartitionKey(passenger1Id), passenger1Id));
 itemIdentityList.add(new CosmosItemIdentity(new PartitionKey(passenger2Id), passenger2Id));

 FeedResponse<Passenger> passengerFeedResponse = cosmosContainer.readMany(itemIdentityList, Passenger.class);
 for (Passenger passenger : passengerFeedResponse.getResults()) {
     System.out.println(passenger);
 }

Parameters:

itemIdentityList - Identificador de CosmosItem y tupla de clave de partición de elementos que deben leerse
classType - tipo de clase

Returns:

un mono con respuesta de fuente de elementos de Cosmos

readMany

public FeedResponse readMany(List itemIdentityList, String sessionToken, Class classType)

Lee muchos documentos. Resulta útil para leer muchos documentos con un identificador determinado y una clave de partición en una sola solicitud. Si falta algún documento de la lista, no se producirá ninguna excepción.

List<CosmosItemIdentity> itemIdentityList = new ArrayList<>();
 itemIdentityList.add(new CosmosItemIdentity(new PartitionKey(passenger1Id), passenger1Id));
 itemIdentityList.add(new CosmosItemIdentity(new PartitionKey(passenger2Id), passenger2Id));

 FeedResponse<Passenger> passengerFeedResponse = cosmosContainer.readMany(itemIdentityList, Passenger.class);
 for (Passenger passenger : passengerFeedResponse.getResults()) {
     System.out.println(passenger);
 }

Parameters:

itemIdentityList - Identificador de CosmosItem y tupla de clave de partición de elementos que deben leerse
sessionToken - el token de sesión opcional: null si se puede realizar la lectura sin un token de sesión específico.
classType - tipo de clase

Returns:

un mono con respuesta de fuente de elementos de Cosmos

replaceItem

public CosmosItemResponse replaceItem(T item, String itemId, PartitionKey partitionKey, CosmosItemRequestOptions options)

Reemplaza un elemento existente en un contenedor por un nuevo elemento. Realiza un reemplazo completo del elemento, reemplazando todas sus propiedades por las propiedades del nuevo elemento.

CosmosItemResponse<Passenger> response = cosmosContainer.replaceItem(
     newPassenger,
     oldPassenger.getId(),
     new PartitionKey(oldPassenger.getId()),
     new CosmosItemRequestOptions());

Parameters:

item - el elemento.
itemId - el identificador del elemento.
partitionKey - la clave de partición.
options - las opciones.

Returns:

la respuesta del elemento de Cosmos.

upsertItem

public CosmosItemResponse upsertItem(T item)

Upserts un elemento de Cosmos en el contenedor actual.

Parameters:

item - el elemento.

Returns:

la respuesta del elemento de Cosmos.

upsertItem

public CosmosItemResponse upsertItem(T item, CosmosItemRequestOptions options)

Upserts un elemento de sincronización de Cosmos de elemento al especificar opciones adicionales.

Parameters:

item - el elemento.
options - las opciones.

Returns:

la respuesta del elemento de Cosmos.

upsertItem

public CosmosItemResponse upsertItem(T item, PartitionKey partitionKey, CosmosItemRequestOptions options)

Upserts un elemento de sincronización de Cosmos de elemento al especificar opciones adicionales.

Parameters:

item - el elemento.
partitionKey - partitionKey.
options - las opciones.

Returns:

la respuesta del elemento de Cosmos.

executeBulkOperations

public Iterable<>> executeBulkOperations(Iterable operations)

Ejecuta la lista de operaciones en masa.

Parameters:

operations - lista de operaciones que ejecutará este contenedor.

Returns:

Iterable de CosmosBulkOperationResponse<TContext> la que contiene la operación y es respuesta o excepción. Para crear una operación que se puede ejecutar aquí, use CosmosBulkOperations. Por ejemplo, para una operación upsert com.azure.cosmos.models.CosmosBulkOperations#getUpsertItemOperation(Object, PartitionKey) Podemos obtener la operación correspondiente mediante getOperation() y es la respuesta mediante getResponse(). Si la operación se ejecutó correctamente, el valor devuelto por isSuccessStatusCode() será true. Para obtener el estado real, use getStatusCode(). Para comprobar si la operación tiene alguna excepción, use getException() para obtener la excepción.

executeBulkOperations

public Iterable<>> executeBulkOperations(Iterable operations, CosmosBulkExecutionOptions bulkOptions)

Ejecuta la lista de operaciones en masa.

Parameters:

operations - lista de operaciones que ejecutará este contenedor.
bulkOptions - Opciones que se aplican a esta solicitud masiva, que especifica opciones relacionadas con la ejecución, como la simultaneidad, el tamaño del procesamiento por lotes, el intervalo y el contexto.

Returns:

Iterable de CosmosBulkOperationResponse<TContext> la que contiene la operación y es respuesta o excepción. Para crear una operación que se puede ejecutar aquí, use CosmosBulkOperations. Por ejemplo, para una operación upsert com.azure.cosmos.models.CosmosBulkOperations#getUpsertItemOperation(Object, PartitionKey) Podemos obtener la operación correspondiente mediante getOperation() y es la respuesta mediante getResponse(). Si la operación se ejecutó correctamente, el valor devuelto por isSuccessStatusCode() será true. Para obtener el estado real, use getStatusCode(). Para comprobar si la operación tiene alguna excepción, use getException() para obtener la excepción.

delete

public CosmosContainerResponse delete()

Elimina el contenedor de Cosmos actual.

Returns:

la respuesta del contenedor de Cosmos.

delete

public CosmosContainerResponse delete(CosmosContainerRequestOptions options)

Elimina el contenedor de Cosmos actual al especificar opciones adicionales, como If-Match.

Parameters:

options - las opciones.

Returns:

la respuesta del contenedor de Cosmos.

deleteAllItemsByPartitionKey

public CosmosItemResponse deleteAllItemsByPartitionKey(PartitionKey partitionKey, CosmosItemRequestOptions options)

Elimina todos los elementos del contenedor con el valor partitionKey especificado. Inicia una operación en segundo plano asincrónica de Cosmos DB que elimina todos los elementos del contenedor con el valor especificado. La operación en segundo plano asincrónica de Cosmos DB se ejecuta con un porcentaje de RU de usuario.

Parameters:

partitionKey - la clave de partición.
options - las opciones.

Returns:

respuesta del elemento de Cosmos

deleteItem

public CosmosItemResponse deleteItem(String itemId, PartitionKey partitionKey, CosmosItemRequestOptions options)

Elimina un elemento del contenedor actual.

try {
     CosmosItemRequestOptions options = new CosmosItemRequestOptions();
     CosmosItemResponse<Object> deleteItemResponse = cosmosContainer.deleteItem(
         passenger.getId(),
         new PartitionKey(passenger.getId()),
         options
     );
     System.out.println(deleteItemResponse);
 } catch (NotFoundException e) {
     // catch exception if item not found
     System.out.printf("Passenger with item id %s not found\n",
         passenger.getId());
 } catch (Exception e) {
     System.out.println(e.getMessage());
 }

Parameters:

itemId - el identificador del elemento.
partitionKey - la clave de partición.
options - las opciones.

Returns:

la respuesta del elemento de Cosmos.

enableGlobalThroughputControlGroup

public void enableGlobalThroughputControlGroup(ThroughputControlGroupConfig groupConfig, GlobalThroughputControlConfig globalControlConfig)

Habilite el grupo de control de rendimiento con el modo de control global. El límite de rendimiento definido se compartirá entre distintos clientes.

ThroughputControlGroupConfig groupConfig =
     new ThroughputControlGroupConfigBuilder()
         .groupName("localControlGroup")
         .targetThroughputThreshold(0.1)
         .build();

 GlobalThroughputControlConfig globalControlConfig =
     this.client.createGlobalThroughputControlConfigBuilder(database.getId(), container.getId())
         .setControlItemRenewInterval(Duration.ofSeconds(5))
         .setControlItemExpireInterval(Duration.ofSeconds(10))
         .build();

 container.enableGlobalThroughputControlGroup(groupConfig, globalControlConfig);

Parameters:

groupConfig - La configuración del grupo de control de rendimiento, consulte GlobalThroughputControlGroup.
globalControlConfig - La configuración del control de rendimiento global, vea GlobalThroughputControlConfig.

enableLocalThroughputControlGroup

public void enableLocalThroughputControlGroup(ThroughputControlGroupConfig groupConfig)

Habilite el grupo de control de rendimiento con el modo de control local.

ThroughputControlGroupConfig groupConfig =
     new ThroughputControlGroupConfigBuilder()
         .groupName("localControlGroup")
         .targetThroughputThreshold(0.1)
         .build();

 container.enableLocalThroughputControlGroup(groupConfig);

Parameters:

groupConfig - Un objeto GlobalThroughputControlConfig.

executeCosmosBatch

public CosmosBatchResponse executeCosmosBatch(CosmosBatch cosmosBatch)

Ejecuta el lote transaccional.

Parameters:

cosmosBatch - Lote que tiene una lista de operaciones y clave de partición que este contenedor ejecutará.

Returns:

TransactionalBatchResponse que contiene detalles de ejecución del lote transaccional.

Si el lote transaccional se ejecuta correctamente, el valor devuelto por CosmosBatchResponse#getStatusCode en la respuesta devuelta se establecerá en 200}.

Si se produce un error en una operación dentro del lote transaccional durante la ejecución, no se confirmará ningún cambio del lote y el estado de la operación con errores estará disponible por CosmosBatchResponse#getStatusCode o por la excepción. Para obtener información sobre las operaciones con errores en caso de algún error de usuario, como conflicto, no encontrado, etc., se puede enumerar la respuesta. Esto devuelve CosmosBatchOperationResult instancias correspondientes a cada operación del lote transaccional en el orden en que se agregaron al lote transaccional. Para obtener un resultado correspondiente a una operación dentro del lote transaccional, use CosmosBatchOperationResult#getStatusCode para acceder al estado de la operación. Si la operación no se ejecutó o se anuló debido al error de otra operación dentro del lote transaccional, el valor de este campo será 424; para la operación que provocó la anulación del lote, el valor de este campo indicará la causa del error.

Si hay problemas como tiempos de espera de solicitud, No disponible, sesión no disponible, error de red o si el servicio devuelve de alguna manera 5xx, se producirá una excepción en lugar de devolver cosmosBatchResponse.

Use CosmosBatchResponse#isSuccessStatusCode en la respuesta devuelta para asegurarse de que el lote transaccional se realizó correctamente.

executeCosmosBatch

public CosmosBatchResponse executeCosmosBatch(CosmosBatch cosmosBatch, CosmosBatchRequestOptions requestOptions)

Ejecuta el lote transaccional.

Parameters:

cosmosBatch - Lote que tiene una lista de operaciones y clave de partición que este contenedor ejecutará.
requestOptions - Opciones que se aplican específicamente a la solicitud por lotes.

Returns:

CosmosBatchResponse que contiene detalles de ejecución del lote transaccional.

Si el lote transaccional se ejecuta correctamente, el valor devuelto por CosmosBatchResponse#getStatusCode en la respuesta devuelta se establecerá en 200}.

Si se produce un error en una operación dentro del lote transaccional durante la ejecución, no se confirmará ningún cambio del lote y el estado de la operación con errores estará disponible por CosmosBatchResponse#getStatusCode o por la excepción. Para obtener información sobre las operaciones con errores en caso de algún error de usuario, como conflicto, no encontrado, etc., se puede enumerar la respuesta. Esto devuelve CosmosBatchOperationResult instancias correspondientes a cada operación del lote transaccional en el orden en que se agregaron al lote transaccional. Para obtener un resultado correspondiente a una operación dentro del lote transaccional, use CosmosBatchOperationResult#getStatusCode para acceder al estado de la operación. Si la operación no se ejecutó o se anuló debido al error de otra operación dentro del lote transaccional, el valor de este campo será 424; para la operación que provocó la anulación del lote, el valor de este campo indicará la causa del error.

Si hay problemas como tiempos de espera de solicitud, No disponible, sesión no disponible, error de red o si el servicio devuelve de alguna manera 5xx, se producirá una excepción en lugar de devolver cosmosBatchResponse.

Use CosmosBatchResponse#isSuccessStatusCode en la respuesta devuelta para asegurarse de que el lote transaccional se realizó correctamente.

getFeedRanges

public List getFeedRanges()

Obtiene una lista de FeedRange que se puede usar para paralelizar las operaciones de fuente.

List<FeedRange> feedRanges = cosmosContainer.getFeedRanges();
 for (FeedRange feedRange : feedRanges) {
     System.out.println("Feed range: " + feedRange);
 }

Returns:

Una lista no modificable de FeedRange

getId

public String getId()

Obtiene el identificador de contenedor actual.

Returns:

el identificador del contenedor.

getScripts

public CosmosScripts getScripts()

Obtiene los scripts de Cosmos mediante el contenedor actual como contexto.

Returns:

los scripts de sincronización de Cosmos.

openConnectionsAndInitCaches

@Deprecated
public void openConnectionsAndInitCaches()

Obsoleto

Inicializa el contenedor al calentar las memorias caché y las conexiones de la región de lectura actual.

NOTA: Lo ideal es llamar a esta API solo una vez durante la inicialización de la aplicación antes de cualquier carga de trabajo. En el caso de cualquier error transitorio, el autor de la llamada debe consumir el error y continuar con la carga de trabajo normal.

openConnectionsAndInitCaches

@Deprecated
public void openConnectionsAndInitCaches(int numProactiveConnectionRegions)

Obsoleto

Inicializa el contenedor al calentar las memorias caché y las conexiones a un no especificado de regiones de conexión proactivas. Para más información sobre las regiones de conexión proactivas, consulte getProactiveConnectionRegionsCount()

NOTA: Lo ideal es llamar a esta API solo una vez durante la inicialización de la aplicación antes de cualquier carga de trabajo. En el caso de cualquier error transitorio, el autor de la llamada debe consumir el error y continuar con la carga de trabajo normal.

Parameters:

numProactiveConnectionRegions - el no de regiones a las que conectarse de forma proactiva desde la lista preferida de regiones

read

public CosmosContainerResponse read()

Lee el contenedor actual.

Returns:

la respuesta del contenedor de Cosmos con el contenedor de lectura.

read

public CosmosContainerResponse read(CosmosContainerRequestOptions options)

Lee el contenedor actual mientras especifica opciones adicionales, como If-Match.

Parameters:

options - las opciones.

Returns:

la respuesta del contenedor de Cosmos.

readThroughput

public ThroughputResponse readThroughput()

Obtiene el rendimiento del contenedor actual.

try {
     ThroughputResponse throughputResponse = cosmosContainer.readThroughput();
     System.out.println(throughputResponse);
 } catch (CosmosException ce) {
     ce.printStackTrace();
 } catch (Exception e) {
     e.printStackTrace();
 }

Returns:

la respuesta de rendimiento.

replace

public CosmosContainerResponse replace(CosmosContainerProperties containerProperties)

Reemplaza las propiedades del contenedor actual.

Parameters:

containerProperties - las propiedades del contenedor.

Returns:

la respuesta del contenedor de Cosmos.

replace

public CosmosContainerResponse replace(CosmosContainerProperties containerProperties, CosmosContainerRequestOptions options)

Reemplaza las propiedades del contenedor actual al especificar opciones adicionales, como If-Match.

Parameters:

containerProperties - las propiedades del contenedor.
options - las opciones.

Returns:

la respuesta del contenedor de Cosmos.

replaceThroughput

public ThroughputResponse replaceThroughput(ThroughputProperties throughputProperties)

Establece el rendimiento del contenedor actual.

ThroughputProperties throughputProperties =
     ThroughputProperties.createAutoscaledThroughput(1000);
 try {
     ThroughputResponse throughputResponse =
         cosmosContainer.replaceThroughput(throughputProperties);
     System.out.println(throughputResponse);
 } catch (CosmosException ce) {
     ce.printStackTrace();
 } catch (Exception e) {
     e.printStackTrace();
 }

Parameters:

throughputProperties - las propiedades de rendimiento (opcional).

Returns:

la respuesta de rendimiento.

Se aplica a