índice MongoDB
El índice general es posible mejorar en gran medida la eficiencia de la consulta, si no hay un índice, MongoDB cuando los datos de lectura deben escanear cada archivo de la recogida y seleccionar aquellos registros que coinciden con los criterios de la consulta.
Este conjunto de exploración eficiencia de recolección de consulta es muy bajo, especialmente cuando se trata de grandes cantidades de datos, las consultas pueden tener decenas de segundos o incluso minutos, el rendimiento de este sitio es muy mortal.
El índice es una estructura de datos especial, el índice se almacena en un conjunto de datos de recorrido y fácil de leer, el valor del índice es una estructura de una tabla de base de datos o columnas para ordenar
ensureIndex método ()
MongoDB utiliza el método ensureIndex () para crear el índice.
gramática
método ensureIndex () sintaxis básica es la siguiente:
>db.COLLECTION_NAME.ensureIndex({KEY:1})
Gramática clave valor del campo de índice que desea crear un índice para la creación ascendente especificado, descendente si desea crear un índice de -1 se puede especificar.
Ejemplos
>db.col.ensureIndex({"title":1}) >
ensureIndex método (), también se puede configurar para utilizar varios campos para crear un índice (base de datos relacional llama un índice compuesto).
>db.col.ensureIndex({"title":1,"description":-1}) >
ensureIndex () recibe los parámetros opcionales, los parámetros opcionales se enumeran a continuación:
parámetro | tipo | descripción |
---|---|---|
fondo | Boole | proceso de indexación bloqueará otras operaciones de base de datos, crear índices de fondo se puede especificar el sistema etapa posterior, un aumento del "fondo" parámetros opcionales. "Fondo" El valor predeterminado esfalso. |
único | Boole | La indexación es único. Especifica que se debe crear un índice único en true. El valor predeterminado esfalso. |
nombre | cadena | Nombre del índice. Si no se especifica, MongoDB conectando el nombre del campo de índice y ordenar el fin de generar un nombre de índice. |
dropDups | Boole | Eliminar registros duplicados cuando se crea un índice único, especifique true para crear un índice único. El valor predeterminado esfalso. |
escaso | Boole | Para los datos de campo no existe en el documento no habilite el índice; este parámetro requiere una atención especial, si es true, entonces el campo de índice no consultar el documento no contiene un campo correspondiente .. El valor predeterminado esfalso. |
expireAfterSeconds | entero | Especificar un valor en segundos para que la unidad para completar el ajuste TTL, ajuste el tiempo de supervivencia de colección. |
v | versión índice | Índice de número de versión. La versión por defecto del índice depende de la ejecución cuando mongod crear una versión índice. |
pesos | documento | los pesos de índice, los valores entre 1 a 99.999, representa el derecho a conseguir otro campo de índice con respecto al peso del índice. |
default_language | cadena | Para los índices de texto, este parámetro determina las palabras vacías y las derivadas de las reglas y listas de palabras. El valor predeterminado es Inglés |
language_override | cadena | Para el índice de texto, que especifica los nombres de los campos contenidos en el documento, el idioma anulan el idioma por defecto, el valor por defecto es el lenguaje. |
Ejemplos
Crear un índice en el fondo:
db.values.ensureIndex({open: 1, close: 1}, {background: true})
Mediante la adición de fondo al crear un índice: verdadera opción, que permite crear trabajo en el fondo