Table of Contents | ||||
---|---|---|---|---|
|
Introducción
En Q3 de 2023 hemos incorporado la creación guiada de índices en MongoDB.El objetivo de este post es familiarizarse con creación de Índex en MongoDB y sus distintas opciones.sobre Entidades Mongo desde el propio Control Panal.
Índices en Mongo
La creación de índices en MongoDB es una parte fundamental del diseño de bases de datos y optimización de consultas . Los en Mongo, los índices mejoran la eficiencia de las consultas al permitir que MongoDB acceda rápidamente a los documentos que coinciden con ciertos criterios de búsqueda sin tener que escanear toda la colección.
...
En MongoDB, un índice es una estructura de datos que almacena un subconjunto de los datos de una colección en un formato que permite una búsqueda rápida y eficiente. Los índices se basan en uno o varios campos de los documentos de una colección y se utilizan para acelerar las consultas que involucran esos campos.
Tipos de índices en MongoDB.
En MongoDB, existen varios tipos de índices que se pueden crear según las necesidades específicas de tu aplicación. Los dos tipos principales de creación de índices son los índices simples y los índices múltiples o compuestos.
Índice Simple
Un índice simple se configura con una única propiedad. Puede ser ascendente o descendente, lo que determina la manera en que se organizan los valores dentro del índice.
Estos índices son valiosos cuando buscas optimizar la búsqueda o clasificación de documentos basándote en una sola característica. Un caso práctico sería la creación de un índice simple en el campo "name" para agilizar la búsqueda de documentos según sus nombres.
...
Índice Múltiple o Compuesto
Un índice compuesto se crea en múltiples campos de un documento. Puedes especificar el orden (ascendente o descendente) para cada campo en el índice compuesto, también muestra el orden de la inserción de las propiedades al crear el índice, ya que influye y puede tener un impacto significativo en el rendimiento de las consultas y la eficiencia de las operaciones de búsqueda.
Esto es útil cuando deseas acelerar consultas que involucran varios campos en combinación. Por ejemplo, si deseas buscar documentos por "name" y "id", puedes crear un índice compuesto en ambos campos.
...
Opciones al crear un índice
...
Las opciones que tenemos para crear un índice son las siguientes:
...
Unique: Si marcamos el check, MongoDB garantizará que no haya duplicados en los campos indexados. Es decir, no se permitirá más de un documento con el mismo valor para los campos indexados. Esto es útil cuando necesitas garantizar la unicidad de los datos.
Sparse: Si marcamos el check, el índice solo incluirá documentos que contengan el campo indexado. Esto es útil cuando no todos los documentos de la colección tienen el campo que deseas indexar.
Creación de índices
...
desde el Control Panel
Podemos acceder a la sección Creación de índices una vez creada la Entidad en la pestaña Index Configuration:
...
Al acceder a la pantalla podemos observar el listado de índices creados, y debajo las opciones para la creación de índices, en las cuales podemos introducir el nombre que queremos poner a nuestro índice, el tipo (Simple o Múltiple) y sus distintas opciones:
En índex simple (Unique, Sparse , Background y TTL)
En índex múltiple (Unique, Sparse , Background)
...
Creación de un índice
...
simple
Para crear un índice simple, el primer paso implica asignarle un nombre al índice que deseamos crear. Por defecto, se establece que el tipo de índice es simple. Luego, seleccionamos las opciones que deseamos configurar para nuestro índice y elegimos la propiedad que servirá como base para la creación del mismo.
Es importante tener en cuenta que no es posible crear índices únicos utilizando propiedades de tipo "Object" o "Array", ya que estas opciones aparecen deshabilitadas.
Finalmente, concluimos el proceso haciendo clic en la opción "Crear índice".
...
Podemos ver como aparece en el listado de la parte superior, especificando las opciones añadidas.
...
Creación índice Múltiples o Compuestos
Para crear un índice compuesto, el proceso inicia al asignar un nombre al índice compuesto que deseamos crear. Luego, modificamos el tipo de índice de "simple" a "múltiple". A continuación, seleccionamos las opciones que deseamos configurar para nuestro índice y especificamos las propiedades que servirán como base para la creación del índice compuesto.
Es posible observar el orden en que estas propiedades están dispuestas al crear el índice en la columna "Field Order". Importante recordar que no es viable crear índices compuestos utilizando propiedades de tipo "Object" o "Array", ya que estas opciones aparecen deshabilitadas. Para finalizar, confirmamos la creación del índice compuesto.
...
Podemos ver como aparece en el listado de la parte superior, especificando las opciones añadidas, junto a todos los índices creados:
...
Eliminación de índices
Para eliminar el índice creado o existente, podemos hacer al editar la entidad
...
A continuación, pinchamos en “Índex “Index Configuration” y eliminamos un índice simple y otro índice compuesto:
...
Al eliminarlos podemos ver como se eliminan del listado.
...
Visualización de índices creados
Al crear los índices, se pueden visualizar desde tres sitios, desde la parte de :
Desde la edición de la entidad en la cual se puede crear y eliminar
...
Desde la
...
visualización de
...
la entidad en la cual solo se puede visualizar los índices
...
Desde el Query Tool, en el cual podemos crear, elimina y visualizar.
Visualización de Entidad
...
Solo podemos observar el listado de índices
...
Edición de Entidad
...
Podemos observar el listado de índices, eliminar y crear
...
Query Tool
Ejecutando la sentencia de getIndex(); podemos obtener los índices:
...
Con la ejecución de dropIndex(), eliminamos el indiceíndice
...
Podemos observar cómo se ha eliminado:
...