buildInfo
Para el ComandobuildInfo, la respuesta contiene los siguientes campos:
Campo | Descripción |
|---|---|
| Devuelve |
| Versión compatible con el cliente MongoDB. Esta es la versión más antigua del cliente MongoDB compatible con el servicio de Federación de Datos. |
| Versión de compatibilidad del cliente MongoDB en formato arreglo. |
| Número de versión de Data Federation. |
| Versión Git del servicio de federación de datos. |
| Marca de tiempo de compilación del servicio de Federación de datos. |
|
|
Ejemplo
{ "ok" : <return>, "version" : "<version-number>", "versionArray" : [ <number>, <number>, <number>, <number> ], "dataLake" : { "version" : "<version-number>", "gitVersion" : "<version-number>", "date" : "<timestamp>", "mongoSQLVersion" : "<version-number>" } }
collStats
Para el comando collStats, Atlas Data Federation omite los siguientes campos en la respuesta:
avgObjSizecappedmaxmaxSizewiredTigernindexestotalIndexSizeindexSizes
Atlas Data Federation incluye los siguientes campos en la respuesta. Puedes usar estos campos para verificar qué particiones se utilizan para poblar una colección, comprender cuán recientemente se calcularon las estadísticas y determinar si Atlas Data Federation truncó el documento de salida.
Campo | Descripción | |
|---|---|---|
| Número de particiones. | |
| Tamaño promedio de todas las particiones. | |
| Formato de archivo de la partición. | |
| Filtrado de los atributos de la partición. | |
| Número de documentos en la partición. | |
| Tamaño, en bytes, de la partición. | |
| URL de almacenamiento en la nube, que contiene la información de la partición. | |
| Versión de MongoDB del clúster Atlas. El comando Por ejemplo, | |
| Información sobre cómo recientemente Atlas Data Federation calculó las estadísticas. | |
| Hora en formato ISODate cuando comenzó el cálculo de las estadísticas. | |
| Bandera que indica si ahora se está ejecutando un trabajo en segundo plano para actualizar la caché. | |
| Bandera que indica si Atlas Data Federation aplicó el límite máximo de tamaño de documento de 16MiB. El valor del indicador puede ser uno de los siguientes:
|
Ejemplo
{ ... "partitionCount": <number of partitions>, "avgPartitionSize": <average size of all partitions>, "partitions": [ { "format": <file format>, "attributes": <filtering attributes>, "count": <number of documents in partition>, "source": <cloud storage URL>, "size": <size, in bytes, of the partition> }, ... ], "truncated": false, "cacheMetadata": { computeTime: ISODate("2021-07-25T15:10:33.513Z"), automaticRefreshInProgress: false }, ... }
Atlas Data Federation introduce un parámetro booleano opcional, sync, para omitir la caché y obtener las estadísticas de almacenamiento más recientes de una colección dada. Los siguientes valores son válidos para el parámetro sync:
true- para omitir el caché y devolver las estadísticas de almacenamiento más recientesfalse- para devolver datos almacenados en caché
Si se omite el parámetro sync, el valor predeterminado es false.
Ejemplo
db.runCommand( {collStats: "<string>", sync: true|false} )
Para obtener más información sobre los parámetros que admite este comando, consulte collStats.
connectionStatus
Para el comando connectionStatus, Atlas Data Federation devuelve información sobre la conexión actual, específicamente el estado de los usuarios autenticados y sus rolesdisponibles.
Nota
Sólo un usuario puede autenticarse en una conexión a una instancia federada de base de datos en cualquier momento. Si un usuario se autentica y luego ejecuta el comando db.auth(), Data Federation reemplaza los permisos del usuario anterior por los del nuevo usuario.
El comando connectionStatus muestra únicamente al usuario recién autenticado en el campo de salida authenticatedUsers.
dbStats
Para el comando dbStats, Atlas Data Federation introduce un parámetro booleano opcional, sync, para omitir la caché y obtener las estadísticas de almacenamiento más recientes de una base de datos específica. Los siguientes valores son válidos para el parámetro sync:
true- para omitir el caché y devolver las estadísticas de almacenamiento más recientesfalse- para utilizar también los datos almacenados en caché
Si se omite el parámetro sync, el valor predeterminado es false.
Ejemplo
db.runCommand( {dbStats: 1, sync: true|false} )
Para aprender más sobre los parámetros compatibles con esta orden, consulte dbStats.
El comando "Atlas Data Federation" omite los siguientes campos en la respuesta:
objectavgObjSizefsUsedSizefsTotalSize
El comando añade los siguientes campos en la respuesta. Puedes utilizar estos campos para determinar si el comando devolvió datos desactualizados.
Campo | Descripción |
|---|---|
| Contiene información sobre qué tan recientemente se calcularon las estadísticas. |
| Hora en formato ISODate cuando comenzó el cálculo de las estadísticas. |
| Bandera que indica si ahora se está ejecutando un trabajo en segundo plano para actualizar la caché. |
explain
El comando explain devuelve información que describe el plan del query de Data Federation. La salida de explain difiere de MongoDB en que proporciona información sobre las particiones de datos utilizadas para satisfacer la query.
Los siguientes comandos se pueden explicar en Data Federation:
aggregate()count()find()
Uso
Atlas Data Federation admite los siguientes modos verbosity:
queryPlanner- proporciona información sobre el plan del query. Si no se especifica el nivel de verbosidad, Atlas Data Federation utiliza este modo por defecto.queryPlannerExtended- proporciona información detallada sobre el plan de consulta, incluida información sobre los objetos de almacenamiento de objetos, como los nombres y tamaños de los objetos de almacenamiento de objetos que se consultarán.executionStats- proporciona estadísticas de ejecución de consultas y rendimiento.
Atlas Data Federation no admite el modo allPlansExecution.
Ejemplo
El siguiente ejemplo muestra cómo usar el comando explain para obtener información sobre el comando aggregate, incluida información detallada sobre el plan del query.
db.runCommand({ "explain": { "aggregate": "user", "verbosity": "queryPlannerExtended", "pipeline": [ ], "cursor": {} }})
El siguiente ejemplo muestra cómo agregar un método al método explain, como el método find(), para obtener estadísticas de ejecución de queries en la query.
db.users.explain("executionStats").find({"type": "admin"})
Salida
Al ejecutar explain, Atlas Data Federation devuelve los siguientes campos adicionales para otras particiones:
Nombre del campo de salida | Descripción |
|---|---|
| Documento que describe la cantidad y el tamaño total de las particiones que Atlas Data Federation podría abrir para la consulta. |
| Tamaño total de las particiones que Atlas Data Federation podría abrir para la consulta. |
| Número de particiones que Atlas Data Federation podría abrir para la consulta. |
| Booleano que indica si la salida de |
| Documento que contiene el plan de ejecución de la query para la query. El documento contiene nodos anidados del plan de ejecución, y cada uno de estos nodos es un documento que describe el nodo del plan. Los documentos del nodo del plan anidado contienen una descripción interna de la ejecución de consultas de Atlas Data Federation, e incluyen varios tipos de nodos que son susceptibles de cambiar. Ponte en contacto con el soporte de MongoDB si necesitas más ayuda para entender el plan del query. |
En el modo queryPlanner, los resultados devueltos por explain proporcionan información detallada sobre las particiones en la instancia federada de base de datos.
1 { 2 ok: 1, 3 stats: { size: '66 B', numberOfPartitions: 2 }, 4 truncated: false, 5 plan: { 6 kind: 'region', 7 region: 'aws/us-east-1', 8 node: { 9 kind: 'data', 10 size: '66 B', 11 numberOfPartitions: 2, 12 partitionsTruncated: false, 13 partitions: [ 14 { 15 source: 'projectID:cluster', 16 provider: 'atlas', 17 size: '4 B', 18 database: 'locations', 19 collection: 'nyc' 20 }, 21 { 22 source: 'dls:projectID', 23 provider: 'dls:aws', 24 size: '62 B', 25 metadataLocation: { provider: 'aws', region: 'us-east-1' }, 26 dataSetName: 'v1$atlas$archive$etc', 27 optimizationPlan: { kind: 'everything' } 28 } 29 ] 30 } 31 } 32 }
El comando explain devuelve los siguientes campos adicionales para las particiones Atlas:
Salida | Descripción |
|---|---|
| Base de datos consultada por Atlas Data Federation. |
| Colección que Atlas Data Federation consultó. |
| Canal de agregación que ejecutó Atlas Data Federation. |
El comando explain devuelve el siguiente campo adicional para las particiones del Archivo en línea:
Nombre del campo de salida | Descripción |
|---|---|
| Detalles sobre las optimizaciones del fichero en linea. Las queries probablemente se optimicen cuando contengan campos que coincidan con las claves de partición configuradas para un fichero en línea. |
En el modo queryPlannerExtended, los resultados devueltos por explain proporcionan información ampliada de planificación de consultas para tipos de particiones.
1 { 2 ok: 1, 3 stats: { size: '66 B', numberOfPartitions: 2 }, 4 truncated: false, 5 plan: { 6 kind: 'region', 7 region: 'aws/us-east-1', 8 node: { 9 kind: 'data', 10 size: '66 B', 11 numberOfPartitions: 2, 12 partitionsTruncated: false, 13 partitions: [ 14 { 15 source:'projectID:cluster', 16 provider: 'atlas', 17 size: '4 B', 18 database: 'locations', 19 collection: 'nyc' 20 }, 21 { 22 source: 'dls:projectID', 23 provider: 'dls:aws', 24 size: '62 B', 25 metadataLocation: { provider: 'aws', region: 'us-east-1' }, 26 dataSetName: 'v1$atlas$archive$etc', 27 scannedDataSetPartitionsCount: 1, 28 percentOfTotalPartitions: 100, 29 optimizationPlan: { kind: 'everything' } 30 }, 31 ] 32 } 33 } 34 }
El comando explain devuelve toda la información de queryPlanner y los siguientes campos adicionales para particiones de fichero en línea:
Nombre del campo de salida | Descripción |
|---|---|
| Número de particiones escaneadas para completar la consulta. |
| Porcentaje de particiones escaneadas sobre el número total de particiones. |
En el modo executionStats, los resultados devueltos por explain proporcionan información sobre estadísticas de ejecución de consultas y rendimiento únicamente para las particiones de Atlas. Esto se obtiene ejecutando un comando explain executionStats en la colección subyacente de Atlas de la partición de Atlas. Para particiones que no son de Atlas, explain devuelve la información de queryPlanner. El campo partitions en los resultados incluye un campo adicional explainResults, que es un documento que podría contener los siguientes campos:
Nombre del campo de salida | Descripción |
|---|---|
| Proporciona información sobre la ejecución del plan del query ganador del clúster Atlas, incluida la cantidad de documentos y claves examinadas. |
| Contiene información sobre la selección del plan del query del clúster Atlas, incluida la selección de índices. |
| Incluye un desglose de las etapas del pipeline y estadísticas por cada etapa. |
Nota
Para obtener más información sobre estos campos, consulte executionStats.
1 { 2 ok: 1, 3 stats: { size: '66 B', numberOfPartitions: 2 }, 4 truncated: false, 5 plan: { 6 kind: 'region', 7 region: 'aws/us-east-1', 8 node: { 9 kind: 'data', 10 size: '66 B', 11 numberOfPartitions: 2, 12 partitionsTruncated: false, 13 partitions: [ 14 { 15 source: 'projectID:cluster', 16 provider: 'atlas', 17 size: '4 B', 18 database: 'locations', 19 collection: 'nyc', 20 explainResults: { 21 queryPlanner: { 22 ... 23 winningPlan: { 24 ... 25 }, 26 rejectedPlans: [] 27 }, 28 executionStats: { 29 ... 30 }, 31 stages: { 32 ... 33 } 34 } 35 }, 36 { 37 source: 'dls:projectID', 38 provider: 'dls:aws', 39 size: '62 B', 40 metadataLocation: { provider: 'aws', region: 'us-east-1' }, 41 dataSetName: 'v1$atlas$archive$etc' 42 }, 43 ] 44 } 45 } 46 }
getLog
Para el comando getLog, Atlas Data Federation devuelve una respuesta exitosa, pero no incluye datos del registro.
getMore
Para el comando getMore, Atlas Data Federation devuelve lotes subsecuentes de documentos actualmente apuntados por un cursor, cuando se utiliza junto con comandos que devuelven un cursor, por ejemplo, find y aggregate.
hostInfo
Para el comando hostInfo, Atlas Data Federation devuelve solo el siguiente subconjunto de campos de la respuesta estándar de MongoDB:
{ "ok" : <return>, "system" : { "currentTime" : ISODate("<timestamp>"), "hostname" : "<hostname>", "cpuAddrSize" : <number>, "memSizeMB" : <number>, "numCores" : <number>, "cpuArch" : "<identifier>", }, "os" : { "type" : "<string>", "name" : "<string>", }, "extra" : { } }
ping
Para el comando ping, Atlas Data Federation prueba si un servidor responde a los comandos.
whatsmyuri
Para el comando whatsmyuri, Atlas Data Federation devuelve la dirección IP del cliente.