Docs Menu
Docs Home
/ /

crear (comando de base de datos)

create

Crea explícitamente una colección o vista.

Nota

La vista creada con este comando no hace referencia a vistas materializadas. Para obtener información sobre vistas materializadas bajo demanda, consulte $merge en su lugar.

Este comando está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube

Nota

Este comando es compatible con todos los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulte Comandos no compatibles.

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

El comando create tiene la siguiente sintaxis:

Nota

MongoDB 6.3 añade los bucketMaxSpanSeconds bucketRoundingSeconds parámetros y. Para degradar 6.3 la versión a una versión inferior a, debe eliminar todas las colecciones con estos parámetros o modificarlas para usar el parámetro granularity correspondiente, si es posible. Para más detalles,collMod consulte.

db.runCommand(
{
create: <collection or view name>,
capped: <true|false>,
timeseries: {
timeField: <string>,
metaField: <string>,
granularity: <string>,
bucketMaxSpanSeconds: <timespan>, // Added in MongoDB 6.3
bucketRoundingSeconds: <timespan> // Added in MongoDB 6.3
},
expireAfterSeconds: <number>,
clusteredIndex: <document>, // Added in MongoDB 5.3
changeStreamPreAndPostImages: <document>, // Added in MongoDB 6.0
autoIndexId: <true|false>,
size: <max_size>,
max: <max_documents>,
storageEngine: <document>,
validator: <document>,
validationLevel: <string>,
validationAction: <string>,
indexOptionDefaults: <document>,
viewOn: <source>,
pipeline: <pipeline>,
collation: <document>,
writeConcern: <document>,
encryptedFields: <document>,
comment: <any>
}

El comando create tiene los siguientes campos:

Campo
Tipo
Descripción

create

string

El nombre de la nueva colección o vista.Consulte Restricciones de nombres. Si intenta crear una colección o vista ya existente y proporciona opciones idénticas para ella, no se realizará ninguna acción y se devolverá el resultado.

capped

booleano

Opcional. Para crear una colección con tamaño fijo, especifica true. Si especificas true, también debes establecer un tamaño máximo en el campo size.

timeseries.timeField

string

Requerido al crear una colección de series de tiempo. El nombre del campo que contiene la fecha en cada documento de serie de tiempo. Los documentos en una colección de series de tiempo deben tener una fecha BSON válida como valor para el timeField.

timeseries.metaField

string

Opcional. El nombre del campo que contiene los metadatos en cada documento de serie de tiempo. Los metadatos del campo especificado deben ser datos que se utilicen para etiquetar una serie única de documentos. Los metadatos difícilmente cambien. El nombre del campo especificado no puede ser _id ni el mismo que el timeseries.timeField. El campo puede ser de cualquier tipo de dato.

Aunque el campo metaField es opcional, el uso de metadatos puede mejorar la optimización de query. Por ejemplo, MongoDB crea un índice compuesto automáticamente en los campos metaField y timeField para las nuevas colecciones. Si no proporcionas un valor para este campo, los datos se agrupan únicamente en función del tiempo.

timeseries.granularity

string

Opcional, no lo utilices si se configura bucketRoundingSeconds y bucketMaxSpanSeconds. Los valores posibles son seconds (por defecto), minutes y hours.

Configura granularity al valor que más se asemeje al intervalo de tiempo entre las marcas de tiempo entrantes consecutivas. Esto mejora el rendimiento al optimizar cómo MongoDB almacena internamente los datos en la colección.

Para obtener más información sobre la granularidad y los intervalos de agrupación, consulta Configurar granularidad para datos de series de tiempo.

timeseries.bucketMaxSpanSeconds

entero

Opcional, se utiliza con bucketRoundingSeconds como una alternativa a granularity. Establece el tiempo máximo entre marcas de tiempo en el mismo bucket. Los valores posibles son de 1 a 31536000. Si configuras bucketMaxSpanSeconds, debes configurar bucketRoundingSeconds al mismo valor.

Para degradar a una versión anterior a MongoDB 6.3, debes modificar la colección para utilizar el valor granularity correspondiente o descartar la colección. Para obtener más detalles, consulta collMod.

timeseries.bucketRoundingSeconds

entero

Opcional, se usa con bucketMaxSpanSeconds como alternativa a granularity. Establece el número de segundos que se redondearán a la baja cuando MongoDB establezca la marca de tiempo mínima para un nuevo bucket. Debe ser igual a bucketMaxSpanSeconds.

Por ejemplo, al establecer ambos parámetros en 1800, los nuevos intervalos se redondean a los 30 minutos más cercanos. Si un documento con una marca de tiempo de 2023-03-27T18:24:35Z no encaja en un bucket existente, MongoDB crea un nuevo bucket con un tiempo mínimo de 2023-03-27T18:00:00Z y un tiempo máximo de 2023-03-27T18:30:00Z.

expireAfterSeconds

entero

Opcional. Especifica los segundos después de los cuales los documentos en una colección de series de tiempo o colección con índice clusterizado expiran. MongoDB elimina automáticamente los documentos caducados.

clusteredIndex

Documento

A partir de MongoDB 5.3, puedes crear una colección con un índice agrupado. Los índices agrupados se almacenan en el mismo archivo WiredTiger de la colección. La colección resultante se llama colección con índice clusterizado.

El campo clusteredIndex tiene la siguiente sintaxis:

clusteredIndex: {
key: <object>,
unique: <boolean>,
name: <string>
}
key
Requerido. El campo clave del índice agrupado. Debe estar configurado en { _id: 1 }. El valor por defecto del campo _id es un objectId único generado automáticamente, pero puedes establecer tus propios valores de clave de índice agrupado.
unique
Requerido. Debe establecerse en true. Un índice único indica que la colección no aceptará documentos insertados o actualizados si el valor de la clave del índice agrupado coincide con un valor ya existente en el índice.
name
Opcional. Un nombre que identifica de manera única el índice agrupado.

Novedades en la versión 5.3.

changeStreamPreAndPostImages

Documento

Opcional.

A partir de MongoDB 6.0, puedes utilizar eventos de flujo de cambios para generar la versión de un documento antes y después de los cambios (las imágenes previas y posteriores del documento):

  • La imagen previa es el documento antes de reemplazarlo, actualizarlo o borrarlo. No existe una imagen previa para un documento insertado.

  • La imagen posterior es el documento tras insertarse, sustituirse o actualizarse. No hay imagen posterior para un documento borrado.

  • Activa changeStreamPreAndPostImages para una colección con db.createCollection(), create o collMod. Por ejemplo, cuando se utiliza el comando collMod:

    db.runCommand( {
    collMod: <collection>,
    changeStreamPreAndPostImages: { enabled: true }
    } )

changeStreamPreAndPostImages tiene la siguiente sintaxis:

changeStreamPreAndPostImages: {
enabled: <boolean>
}

Para habilitar las imágenes previas y posteriores del flujo de cambios para la colección, se debe establecer enabled en true.

Para obtener ejemplos completos con la salida del flujo de cambios, consulta Flujos de cambio con imágenes previas y posteriores de documentos.

Para un ejemplo de create en esta página, se debe consultar Crear una colección con imágenes previas y posteriores de Change Stream para documentos.

Novedades en la versión 6.0.

size

entero

Opcional. Especifica un tamaño máximo en bytes para una colección con tamaño fijo. Una vez que una colección con tamaño fijo alcanza su tamaño máximo, MongoDB remueve los documentos más antiguos para dejar espacio a los nuevos documentos. El campo size es obligatorio para las colecciones con tamaño fijo y se ignora para las demás colecciones.

max

entero

Opcional. El número máximo de documentos permitidos en la colección con tamaño fijo. El límite de size tiene prioridad sobre este límite. Si una colección con tamaño fijo alcanza el límite size antes de alcanzar el número máximo de documentos, MongoDB remueve los documentos antiguos. Si prefieres usar el límite de max, asegúrate de que el límite de size, que es necesario para una colección con tamaño fijo, sea suficiente para contener el número máximo de documentos.

storageEngine

Documento

Opcional. Disponible solo para el motor de almacenamiento WiredTiger.

Permite a los usuarios especificar la configuración para el motor de almacenamiento por colección al crear una colección. El valor de la opción storageEngine debe tomar la siguiente forma:

{ <storage-engine-name>: <options> }

La configuración del motor de almacenamiento especificada al crear colecciones se valida y se registra en el oplog durante la replicación para soportar conjuntos de set de réplicas con miembros que utilizan diferentes motores de almacenamiento.

A partir de MongoDB 7.2, no se pueden especificar opciones de cifrado del motor de almacenamiento wiredTiger al crear una colección con db.createCollection(). Para configurar el cifrado para el motor de almacenamiento WiredTiger, consulta Cifrado en reposo.

Para obtener más información, consulte Especificar opciones del motor de almacenamiento.

validator

Documento

Opcional. Permite a los usuarios especificar reglas o expresiones de validación para la colección.

La opción validator requiere un documento que especifique las reglas o expresiones de validación. Puedes especificar las expresiones utilizando los mismos operadores que los operadores del query, con la excepción de $near, $nearSphere, $text, y $where.

  • La validación ocurre durante las actualizaciones e inserciones. Los documentos existentes no pasan por comprobaciones de validación hasta que se modifican.

  • No se puede especificar un validador para colecciones en las bases de datos admin, local y config.

  • No se puede especificar un validador para las colecciones de system.*.

validationLevel

string

Opcional. Determina con qué rigor MongoDB aplica las reglas de validación a los documentos existentes durante una actualización.

"off"
No hay validación para inserciones o actualizaciones.
"strict"
Por defecto, aplica reglas de validación a todas las inserciones y a todas las actualizaciones.
"moderate"
Aplica reglas de validación a las inserciones y a las actualizaciones en documentos válidos existentes. No apliques reglas a las actualizaciones en documentos inválidos existentes.

validationAction

string

Opcional. Determina si se debe mostrar error en documentos no válidos o solo warn sobre las infracciones, pero permite que se inserten documentos no válidos.

La validación de documentos solo se aplica a aquellos documentos según lo determinado por el validationLevel.

"error"
Los documentos predeterminados deben pasar la validación antes de la escritura. De lo contrario, la operación falla.
"warn"
Los documentos no necesitan pasar la validación. Si el documento no la supera, la operación de escritura registra el fallo.

indexOptionDefaults

Documento

Opcional. Permite a los usuarios especificar una configuración por defecto para los índices al crear una colección.

La opción indexOptionDefaults acepta un documento storageEngine, el cual debe tener la siguiente forma:

{ <storage-engine-name>: <options> }

La configuración del motor de almacenamiento especificada al crear índices se valida y se registra en el oplog durante la replicación para admitir sets de réplicas con miembros que utilizan diferentes motores de almacenamiento.

viewOn

string

El nombre de la colección o vista de origen desde la que se creará la vista. El nombre no es el espacio de nombres completo de la colección o vista; es decir, no incluye el nombre de la base de datos e implica la misma base de datos que la vista que se va a crear. Debe crear las vistas en la misma base de datos que la colección de origen.

Consulte también db.createView().

pipeline

arreglo

Una matriz que consta de las etapas de la canalización de agregación. create crea la vista aplicando el especificado pipeline a la viewOn colección o vista.

Una definición de vista pipeline no puede incluir la etapa $out o la $merge. Esta restricción también se aplica a pipelines integradas, como las pipelines usadas en las etapas de $lookup o $facet.

La definición de la vista es pública; es decir, las operaciones db.getCollectionInfos() y explain en la vista incluirán el pipeline que define la vista. Por lo tanto, evite referirse directamente a campos y valores sensibles en las definiciones de vistas.

Consulte también db.createView().

collation

Especifica la intercalación predeterminada para la colección o la vista.

La intercalación permite a los usuarios especificar reglas propias del lenguaje para la comparación de strings, como reglas para el uso de mayúsculas y minúsculas y marcas de acento.

La opción de intercalación tiene la siguiente sintaxis:

collation: {
locale: <string>,
caseLevel: <boolean>,
caseFirst: <string>,
strength: <int>,
numericOrdering: <boolean>,
alternate: <string>,
maxVariable: <string>,
backwards: <boolean>
}

Al especificar la intercalación, el campo locale es obligatorio; todos los demás campos de intercalación son opcionales. Para las descripciones de los campos, consulta Documento de intercalación.

Si especificas una intercalación a nivel de colección:

  • Los índices de esa colección se crearán con esa intercalación a menos que la operación de creación del índice especifique explícitamente una intercalación diferente.

  • Las operaciones en esa colección utilizan la intercalación por defecto de la colección, a menos que especifiquen explícitamente una intercalación diferente.

    No puedes especificar varias intercalaciones para una operación. Por ejemplo, no puedes especificar diferentes intercalaciones por campo, o si realizas una búsqueda con un ordenamiento, no puedes usar una intercalación para la búsqueda y otra para el ordenamiento.

Si no se especifica ninguna intercalación para la colección o para las operaciones, MongoDB utiliza la comparación binaria simple usada en versiones anteriores para las comparaciones de strings.

Para una vista, si no se especifica ninguna intercalación, la intercalación predeterminada es la intercaladora de comparación binaria simple. Para una vista de una colección, la vista no hereda la configuración de intercalación de la colección. Para una vista de otra vista, la vista que se va a crear debe especificar la misma configuración de intercalación.

Después de crear la colección o la vista, no es posible actualizar su intercalación predeterminada.

Para ver un ejemplo que especifica la intercalación predeterminada durante la creación de una colección, consulte Especificar intercalación.

writeConcern

Documento

Opcional. Un documento que expresa el nivel de confirmación de escritura para la operación. Omite usar el nivel de confirmación de escritura por defecto.

Cuando se emite en un clúster particionado, mongos convierte el nivel de confirmación de escritura del comando create y su asistente db.createCollection() a "majority".

encryptedFields

Documento

Opcional. Un documento que configura el cifrado consultable para la colección que se está creando.

Para usar campos cifrados en una colección, especifique una nueva opción de configuración. Debe tener permisos para crear y modificar una colección para crear o editar esta configuración.

La configuración incluye una lista de campos y sus identificadores clave correspondientes, tipos y queries compatibles.

encryptedFieldsConfig = {
"fields": [
{
"keyId": UUID, // required
"path": String, // path to field, required
"bsonType": "string" | "int" ..., // required
"queries": // optional
[
{ "queryType": "equality" },
]
}
],
"queryPatterns": [ // optional
{"fieldName": queryType, "fieldName": queryType, … }
]
}

Para obtener más detalles, consulte Tutoriales de cifrado consultable.

comment

any

Opcional. Un comentario proporcionado por el usuario para adjuntar a este comando. Una vez configurado, este comentario aparece junto a los registros de este comando en las siguientes ubicaciones:

Un comentario puede ser de cualquier tipo BSON válido (string, objeto, arreglo, etc.).

El método db.createCollection() db.createView() y create el método envuelven el comando.

create tiene el siguiente comportamiento:

create obtiene un bloqueo exclusivo en la colección o vista especificada durante la duración de la operación. Todas las operaciones posteriores en la colección deben esperar hasta que create libere el bloqueo. create normalmente mantiene este bloqueo durante un breve período de tiempo.

Crear una vista requiere obtener un bloqueo exclusivo adicional en la colección system.views de la base de datos. Este bloqueo impide la creación o modificación de vistas en la base de datos hasta que el comando se complete.

Puede crear colecciones e índices dentro de una transacción distribuida si la transacción es No es una transacción de escritura entre fragmentos.

Para utilizar create en una transacción, la transacción debe emplear el nivel de consistencia de lectura "local". Si especificas un nivel de consistencia de lectura distinto de "local", la transacción fallará.

Tip

Si ejecutas create con el mismo nombre y opciones que una colección o vista existente, create indica éxito.

Modificado en la versión 5.0.

Al utilizar la API estable1 V, no puede especificar los siguientes campos en un create comando:

  • autoIndexId

  • capped

  • indexOptionDefaults

  • max

  • size

  • storageEngine

Si la implementación aplica autenticación/autorización, create requiere los siguientes privilegios:

Tarea
Privilegios requeridos

Crea una colección no limitada

createCollection en la base de datos, o

insert en la colección a crear

convertToCapped para la colección

createCollection en la base de datos

Crear una vista

createCollection en la base de datos.

Sin embargo, si el usuario tiene createCollection en la base de datos y find en la vista que desea crear, el usuario también debe tener los siguientes permisos adicionales:

  • find en la colección o vista de origen.

  • find en cualquier otra colección o vista referenciada en el pipeline, si corresponde.

Un usuario con el rol incorporado readWrite en la base de datos tiene los privilegios necesarios para ejecutar las operaciones enumeradas. O crea un usuario con el rol requerido o concede el rol a un usuario existente.

Para crear una colección limitada a 64 kilobytes, emita el comando en el siguiente formato:

db.runCommand( { create: "collection", capped: true, size: 64 * 1024 } )

Para crear una colección de series de tiempo que capture datos meteorológicos de las últimas 24 horas, ejecuta este comando:

db.createCollection(
"weather24h",
{
timeseries: {
timeField: "timestamp",
metaField: "data",
granularity: "hours"
},
expireAfterSeconds: 86400
}
)

Alternativamente, para crear la misma colección pero limitar cada bucket a valores de marca de tiempo dentro de la misma hora, ejecuta este comando:

db.createCollection(
"weather24h",
{
timeseries: {
timeField: "timestamp",
metaField: "data",
bucketMaxSpanSeconds: 3600,
bucketRoundingSeconds: 3600
},
expireAfterSeconds: 86400
}
)

Nota

En este ejemplo,expireAfterSeconds se especifica como,86400 lo que significa que los documentos caducan 86400 segundos después del timestamp valor.Consulte "Configurar la eliminación automática de colecciones de series temporales (TTL)".

El siguiente create ejemplo agrega una colección con índice clusterizado denominada products:

db.runCommand( {
create: "products",
clusteredIndex: { "key": { _id: 1 }, "unique": true, "name": "products clustered key" }
} )

En el ejemplo, clusteredIndex indica:

  • "key": { _id: 1 }, que establece la clave del índice agrupado en el campo _id.

  • "unique": true, lo que indica que el valor de la clave del índice agrupado debe ser único.

  • "name": "products clustered key", que define el nombre del índice clúster.

A partir de MongoDB 6.0, puedes utilizar eventos de flujo de cambios para generar la versión de un documento antes y después de los cambios (las imágenes previas y posteriores del documento):

  • La imagen previa es el documento antes de reemplazarlo, actualizarlo o borrarlo. No existe una imagen previa para un documento insertado.

  • La imagen posterior es el documento tras insertarse, sustituirse o actualizarse. No hay imagen posterior para un documento borrado.

  • Habilite changeStreamPreAndPostImages para una colección usando, o. Por ejemplo, al usar db.createCollection() create collModel collMod comando:

    db.runCommand( {
    collMod: <collection>,
    changeStreamPreAndPostImages: { enabled: true }
    } )

El siguiente ejemplo crea una colección que tiene changeStreamPreAndPostImages habilitado:

db.runCommand( {
create: "temperatureSensor",
changeStreamPreAndPostImages: { enabled: true }
} )

Las imágenes previas y posteriores no están disponibles para un evento de flujo de cambios si las imágenes fueron:

  • No está habilitado en la colección en el momento de la operación de actualización o eliminación de un documento.

  • Eliminado después del tiempo de retención de imágenes previas y posteriores establecido en expireAfterSeconds.

    • El siguiente ejemplo configura expireAfterSeconds en 100 segundos en todo el clúster:

      use admin
      db.runCommand( {
      setClusterParameter:
      { changeStreamOptions: {
      preAndPostImages: { expireAfterSeconds: 100 }
      } }
      } )

      Nota

      El comando setClusterParameter no es compatible con los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulta Comandos no compatibles en Atlas.

    • El siguiente ejemplo devuelve la configuración actual de changeStreamOptions, incluyendo expireAfterSeconds:

      db.adminCommand( { getClusterParameter: "changeStreamOptions" } )
    • Configurar expireAfterSeconds en off utiliza la política de retención por defecto: las imágenes previas y posteriores se conservan hasta que los eventos correspondientes del flujo de cambios se eliminan del oplog.

    • Si se elimina un evento de flujo de cambios del oplog, las imágenes previas y posteriores correspondientes también se eliminan independientemente del tiempo de retención de las imágenes previas y posteriores expireAfterSeconds.

Consideraciones adicionales:

  • Habilitar las imágenes previas y posteriores consume espacio de almacenamiento y aumenta el tiempo de procesamiento. Habilita solo las imágenes previas y de publicación si las necesitas.

  • Limita el tamaño del evento del flujo de cambios a menos de 16 mebibytes. Para limitar el tamaño del evento, puedes:

    • Limita el tamaño del documento a 8 megabytes. Puedes solicitar imágenes previas y posteriores simultáneamente en la salida del flujo de cambios si otros campos de eventos del flujo de cambios como updateDescription no son grandes.

    • Solicita solo imágenes posteriores en la salida del flujo de cambios para documentos de hasta 16 mebibytes si otros campos de eventos del flujo de cambios como updateDescription no son grandes.

    • Solicita solo imágenes previas en la salida del flujo de cambios para documentos de hasta 16 mebibytes si:

      • las actualizaciones de documento afectan solo a una pequeña fracción de la estructura o el contenido del documento, y

      • no cause un evento de cambio replace. Un evento replace siempre incluye la imagen de publicación.

  • Para realizar una solicitud de imagen previa, debes establecer fullDocumentBeforeChange en required o whenAvailable en db.collection.watch(). Para solicitar una imagen posterior, establece fullDocument mediante el mismo método.

  • Las imágenes previas se escriben en la colección config.system.preimages.

    • La colección config.system.preimages puede agrandarse. Para limitar el tamaño de la colección, puedes establecer el tiempo a expireAfterSeconds para las imágenes previas como se mostró antes.

    • Las imágenes previas se eliminan de forma asincrónica mediante un proceso en segundo plano.

Importante

Característica incompatible con versiones anteriores

A partir de MongoDB 6.0, si utilizas imágenes previas y posteriores de documentos para los flujos de cambios, debes deshabilitar changeStreamPreAndPostImages para cada colección mediante el comando collMod antes de poder volver a una versión anterior de MongoDB.

Tip

Nota

La vista creada por este comando no hace referencia a vistas materializadas. Para obtener información sobre vistas materializadas bajo demanda,$merge consulte.

Una definición de vista pipeline no puede incluir la etapa $out o la $merge. Esta restricción también se aplica a pipelines integradas, como las pipelines usadas en las etapas de $lookup o $facet.

Para crear una vista utilizando el create comando, utilice la siguiente sintaxis:

db.runCommand( { create: <view>, viewOn: <source>, pipeline: <pipeline> } )

o si se especifica una intercalación:

db.runCommand( { create: <view>, viewOn: <source>, pipeline: <pipeline>, collation: <collation> } )

Por ejemplo, crea una colección survey con los siguientes documentos:

db.survey.insertMany(
[
{ _id: 1, empNumber: "abc123", feedback: { management: 3, environment: 3 }, department: "A" },
{ _id: 2, empNumber: "xyz987", feedback: { management: 2, environment: 3 }, department: "B" },
{ _id: 3, empNumber: "ijk555", feedback: { management: 3, environment: 4 }, department: "A" }
]
)

La siguiente operación crea una vista managementRatings con los campos _id, feedback.management y department:

db.runCommand ( {
create: "managementFeedback",
viewOn: "survey",
pipeline: [ { $project: { "management": "$feedback.management", department: 1 } } ]
} )

Importante

La definición de la vista es pública; es decir, las operaciones db.getCollectionInfos() y explain en la vista incluirán el pipeline que define la vista. Por lo tanto, evite referirse directamente a campos y valores sensibles en las definiciones de vistas.

Puedes especificar intercalación a nivel de la colección o vista. Por ejemplo, la siguiente operación crea una colección, especificando una intercalación para la colección (Consulta el Documento de intercalación para descripciones de los campos de intercalación):

db.runCommand ( {
create: "myColl",
collation: { locale: "fr" }
});

Esta intercalación será utilizada por los índices y las operaciones que admiten la intercalación, a menos que especifiquen explícitamente una intercalación diferente. Por ejemplo, inserta los siguientes documentos en myColl:

{ _id: 1, category: "café" }
{ _id: 2, category: "cafe" }
{ _id: 3, category: "cafE" }

La siguiente operación utiliza la intercalación de la colección:

db.myColl.find().sort( { category: 1 } )

La operación devuelve los documentos en el siguiente orden:

{ "_id" : 2, "category" : "cafe" }
{ "_id" : 3, "category" : "cafE" }
{ "_id" : 1, "category" : "café" }

La misma operación en una colección que utiliza intercalación binaria simple (es decir, no se ha establecido una intercalación específica) devuelve documentos en el siguiente orden:

{ "_id" : 3, "category" : "cafE" }
{ "_id" : 2, "category" : "cafe" }
{ "_id" : 1, "category" : "café" }

Puede especificar opciones de configuración del motor de almacenamiento específicas de la colección al crear una colección db.createCollection() con. Considere la siguiente operación:

db.runCommand( {
create: "users",
storageEngine: { wiredTiger: { configString: "<option>=<setting>" } }
} )

Esta operación crea una nueva colección llamada users con una cadena de configuración específica que MongoDB pasará al wiredTiger motor de almacenamiento. Consulte la documentación de WiredTiger sobre las opciones de nivel de colección.para opciones wiredTiger específicas.

A partir de MongoDB 7.2, no se pueden especificar opciones de cifrado del motor de almacenamiento wiredTiger al crear una colección con db.createCollection(). Para configurar el cifrado para el motor de almacenamiento WiredTiger, consulta Cifrado en reposo.

Volver

convertToCapped

En esta página