Particiona una consulta devolviendo cursores de partición que se pueden usar para ejecutar la consulta en paralelo. Los cursores de partición devueltos son puntos de división que documents.runQuery puede utilizar como puntos de inicio/finalización de los resultados de la consulta.
solicitud HTTP
POST https://firestore.googleapis.com/v1beta1/{parent=projects/*/databases/*/documents}:partitionQuery
La URL utiliza la sintaxis de transcodificación gRPC .
Parámetros de ruta
Parámetros | |
---|---|
parent | Requerido. El nombre del recurso principal. En el formato: |
Cuerpo de la solicitud
El cuerpo de la solicitud contiene datos con la siguiente estructura:
Representación JSON |
---|
{ "partitionCount": string, "pageToken": string, "pageSize": integer, // Union field |
Campos | |
---|---|
partitionCount | El número máximo deseado de puntos de partición. Las particiones pueden devolverse en varias páginas de resultados. El número debe ser positivo. El número real de particiones devueltas puede ser menor. Por ejemplo, esto se puede establecer en uno menos que el número de consultas paralelas que se ejecutarán o, al ejecutar un trabajo de canalización de datos, uno menos que el número de trabajadores o instancias informáticas disponibles. |
pageToken | El valor Por ejemplo, dos llamadas posteriores utilizando un pageToken pueden devolver:
Para obtener un conjunto de resultados completo ordenado con respecto a los resultados de la consulta suministrada a documents.partitionQuery, los conjuntos de resultados deben fusionarse: cursor A, cursor B, cursor M, cursor Q, cursor U, cursor W |
pageSize | El número máximo de particiones que se devolverán en esta llamada, sujeto a Por ejemplo, si |
Campo de unión query_type . La consulta para particionar. query_type puede ser solo uno de los siguientes: | |
structuredQuery | Una consulta estructurada. La consulta debe especificar una colección con todos los descendientes y ordenarse por nombre de forma ascendente. No se admiten otros filtros, orden por orden, límites, compensaciones y cursores de inicio/fin. |
consistency_selector del campo de unión. El modo de coherencia para esta solicitud. Si no se establece, el valor predeterminado es una coherencia fuerte. consistency_selector puede ser sólo uno de los siguientes: | |
readTime | Lee documentos tal como estaban en el momento dado. Debe ser una marca de tiempo con precisión de microsegundos dentro de la última hora o, si la recuperación de un punto en el tiempo está habilitada, también puede ser una marca de tiempo de un minuto completo dentro de los últimos 7 días. Una marca de tiempo en formato RFC3339 UTC "Zulu", con resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
Cuerpo de respuesta
La respuesta para Firestore.PartitionQuery
.
Si tiene éxito, el cuerpo de la respuesta contiene datos con la siguiente estructura:
Representación JSON |
---|
{
"partitions": [
{
object ( |
Campos | |
---|---|
partitions[] | Resultados de la partición. Cada partición es un punto de división que documents.runQuery puede utilizar como punto inicial o final para los resultados de la consulta. Las solicitudes de document.runQuery deben realizarse con la misma consulta proporcionada a esta solicitud de document.partitionQuery. Los cursores de partición se ordenarán según el mismo orden que los resultados de la consulta proporcionada a documents.partitionQuery. Por ejemplo, si una solicitud document.partitionQuery devuelve los cursores de partición A y B, ejecutar las tres consultas siguientes devolverá el conjunto de resultados completo de la consulta original:
Un resultado vacío puede indicar que la consulta tiene muy pocos resultados para particionarse o que la consulta aún no es compatible con la partición. |
nextPageToken | Un token de página que se puede utilizar para solicitar un conjunto adicional de resultados, hasta el número especificado por |
Ámbitos de autorización
Requiere uno de los siguientes ámbitos de OAuth:
-
https://www.googleapis.com/auth/datastore
-
https://www.googleapis.com/auth/cloud-platform
Para obtener más información, consulte Descripción general de la autenticación .