Docs Menu
Docs Home
/ /

$collStats Etapa (Federación de Datos Atlas)

$collStats Devuelve estadísticas para una colección dada. $collstats debe ser la primera etapa del proceso de agregación. Para más información, consulte $collStats. En$collStats la federación de datos, solo se puede usar para recuperar información sobre las particiones de una colección o vista determinada.

En Atlas Data Federation, $collStats acepta un documento vacío. Solo admite el campo opcional count y devuelve un error si se especifica una opción no compatible.

db.<collection-name>|<view-name>.aggregate([{ "$collStats" : { "count" : {} } }])
Campo
tipo
Descripción
Necesidad

count

Documento

Agrega el número total de documentos en las particiones al documento de retorno.

Opcional

$collStats devuelve los siguientes campos en el documento para cada partición:

Campo
Tipo
Descripción

count

Número

El número total de documentos en la partición. Esto sólo se retorna si especificas la opción count.

ns

string

El espacio de nombres de la colección o vista actual en el formato [database].[collection|view].

partition

Documento

Los detalles sobre la partición, como la fuente, el formato, el tamaño y atributos de partición, si los hay.

partition.format

string

El formato del archivo. El valor puede ser cualquiera de los formatos de datos admitidos para datos en un almacén en la nube o MONGO para datos en el clúster Atlas.

partition.attributes

Documento

Los atributos de partición de esta partición se definen en para particiones de almacenamiento en la nube. Un documento vacío indica que no hay atributos de partición en la fuente de datos de la path partición.

partition.size

Int

El tamaño de la partición.

partition.source

string

El origen de la partición. El valor puede ser uno de los siguientes:

  • La ruta al archivo en el almacenamiento en la nube.

  • El nombre del clúster para las particiones en Atlas.

partition.version

string

Versión de MongoDB del clúster Atlas. La etapa $collStats devuelve este campo solo para almacenes de datos del clúster Atlas. El valor tiene el siguiente formato:

<major-version-number>.<minor-version-number>.<patch-version-number>

Por ejemplo, 7.0.1.

El siguiente ejemplo muestra la sintaxis $collStats para recuperar las particiones de una s3Db.abc colección con 3 archivos en una instancia de base de datos federada de almacenamiento en la nube:

use s3Db
db.abc.aggregate([ {$collStats: {}} ])

El comando anterior devuelve el siguiente resultado:

{ "ns" : "s3Db.abc", "partition" : { "format" : "JSON", "attributes" : { "year" : NumberLong(2018) }, "size" : 139, "source" : "s3://my-bucket/s3Db/abc/2018/1.json?delimiter=%2F&region=us-east-1" } }
{ "ns" : "s3Db.abc", "partition" : { "format" : "JSON", "attributes" : { "year" : NumberLong(2017) }, "size" : 124, "source" : "s3://my-bucket/s3Db/abc/2017/1.json?delimiter=%2F&region=us-east-1" } }
{ "ns" : "s3Db.abc", "partition" : { "format" : "JSON", "attributes" : { "year" : NumberLong(2017) }, "size" : 130, "source" : "s3://my-bucket/s3Db/abc/2017/2.json?delimiter=%2F&region=us-east-1" } }

El siguiente ejemplo muestra la sintaxis de $collStats para recuperar las particiones de la colección atlasDb.sampleColl en el clúster Atlas denominado mySandboxCluster:

use atlasDb
db.sampleColl.aggregate([ {$collStats: {}} ])

El comando anterior devuelve el siguiente resultado:

{ "ns" : "atlasDb.sampleColl", "partition" : { "format" : "MONGO", "attributes" : { }, "size" : 94362191, "source" : "mySandboxCluster" } }

El siguiente ejemplo muestra la sintaxis $collStats para recuperar el número total de documentos en las particiones.

use s3Db
db.abc.aggregate([ {$collStats: {"count" : {} }} ])

El comando anterior devuelve el siguiente resultado:

{ "ns" : "atlasDb.sampleColl", "partition" : { "format" : "MONGO", "attributes" : { }, "size" : 94362191, "source" : "mySandboxCluster" }, "count" : 23530}

Se devuelve un error similar al siguiente si el argumento collStats document contiene alguna de las opciones permitidas por el servidor MongoDB pero no por Atlas Data Federation.

{
"ok" : 0,
"errmsg" : "$collStats param 'latencyStats' is not valid for Data Federation, correlationID = 1622929884a47d16f4888a1c",
"code" : 9,
"codeName" : "FailedToParse"
}

Volver

Pipeline de agregación

En esta página