Lee varias filas de datos de una o más tablas simultáneamente.
La operación BatchGetRow consiste en un conjunto de operaciones GetRow. Al invocar la operación BatchGetRow, cada operación GetRow se ejecuta de forma independiente, su respuesta se devuelve por separado y las unidades de capacidad (CU) se calculan individualmente para cada operación GetRow.
Si utiliza la operación BatchGetRow en lugar de llamar varias veces a la operación GetRow, se reduce el tiempo de respuesta y mejora el rendimiento de lectura de datos.
Sintaxis de la solicitud
message BatchGetRowRequest {
repeated TableInBatchGetRowRequest tables = 1;
}
|
Parámetro |
Tipo |
Obligatorio |
Descripción |
|
tables |
repeated TableInBatchGetRowRequest |
Sí |
Las filas que desea leer de cada tabla. La operación falla y devuelve un error si se cumple alguna de las siguientes condiciones:
|
Sintaxis de la respuesta
La operación BatchGetRow puede fallar parcialmente en el nivel de fila. No obstante, la operación sigue devolviendo el código de estado HTTP 200. La aplicación debe comprobar los errores en RowInBatchGetRowResponse para confirmar el resultado de ejecución de cada fila antes de continuar.
message BatchGetRowResponse {
repeated TableInBatchGetRowResponse tables = 1;
}
|
Parámetro |
Tipo |
Descripción |
|
tables |
repeated TableInBatchGetRowResponse |
Las filas leídas de cada tabla. El orden de los objetos TableInBatchGetRowResponse en la respuesta coincide con el orden de los objetos TableInBatchGetRowRequest en BatchGetRowRequest. Asimismo, el orden de los objetos RowInBatchGetRowResponse dentro de TableInBatchGetRowResponse coincide con el orden de los objetos RowInBatchGetRowRequest en TableInBatchGetRowRequest. Si una fila no existe o si las columnas especificadas mediante el parámetro columns_to_get en una fila están vacías, el objeto RowInBatchGetRowResponse aparece igualmente en el objeto TableInBatchGetRowResponse. Sin embargo, los parámetros primary_key_columns y attribute_columns correspondientes a dicha fila estarán vacíos. Si falla la lectura de una fila, el valor de is_ok en RowInBatchGetRowResponse será false para esa fila y la fila estará vacía. |
Uso de los SDK de Tablestore
Utilice los siguientes SDK de Tablestore para leer varias filas de datos de una o más tablas simultáneamente:
Tablestore SDK for Java: Read multiple rows of data at a time
Tablestore SDK for Go: Read multiple rows of data at a time
Tablestore SDK for Python: Read multiple rows of data at a time
Tablestore SDK for Node.js: Read multiple rows of data at a time
Tablestore SDK for .NET: Read multiple rows of data at a time
Tablestore SDK for PHP: Read multiple rows of data at a time
Consumo de CU
Si la operación falla, no se consumen CU.
Si la solicitud agota el tiempo de espera y los resultados quedan indefinidos, es posible que se consuman CU o no.
En los demás casos, cada objeto RowInBatchGetRowRequest se considera una operación GetRow para la cual se calculan por separado las CU de lectura. Para obtener más información, consulte CU consumption.