
un indexador concurrente combinado con algoritmos de búsqueda rápidos y relevantes
El contenido de este repositorio ahora está disponible en el repositorio de Meilisearch en el milli del espacio de trabajo.
Este repositorio contiene el motor central utilizado en Meilisearch.
Contiene una biblioteca que puede administrar un solo índice. MeilISearch administra el Multi-Index en sí. Milli no puede almacenar actualizaciones en una tienda: es el trabajo de otra cosa anterior y es por eso que solo puede procesar una actualización a la vez.
Este repositorio contiene cajas para depurar rápidamente el motor:
benchmarks .cli Crate es una interfaz de línea de comandos simple que ayuda a ejecutar FlameGraph encima.filter-parser contiene el analizador para la sintaxis del filtro Meilisearch.flatten-serde-json contiene la biblioteca que aplana objetos Value SERDE-JSON como elasticsearch.json-depth-checker se usa para indicar si un JSON debe ser aplanado. Milli es una biblioteca que busca cosas de búsqueda, debe estar integrada en un programa. Puede calcular la documentación de TI utilizando cargo doc --open .
Aquí hay un uso de ejemplo de la biblioteca donde insertamos documentos en el motor y buscamos uno de ellos justo después.
let path = tempfile :: tempdir ( ) . unwrap ( ) ;
let mut options = EnvOpenOptions :: new ( ) ;
options . map_size ( 10 * 1024 * 1024 ) ; // 10 MB
let index = Index :: new ( options , & path ) . unwrap ( ) ;
let mut wtxn = index . write_txn ( ) . unwrap ( ) ;
let content = documents ! ( [
{
"id" : 2 ,
"title" : "Prideand Prejudice" ,
"author" : "Jane Austin" ,
"genre" : "romance" ,
"price$" : "3.5$" ,
} ,
{
"id" : 456 ,
"title" : "Le Petit Prince" ,
"author" : "Antoine de Saint-Exupéry" ,
"genre" : "adventure" ,
"price$" : "10.0$" ,
} ,
{
"id" : 1 ,
"title" : "Wonderland" ,
"author" : "Lewis Carroll" ,
"genre" : "fantasy" ,
"price$" : "25.99$" ,
} ,
{
"id" : 4 ,
"title" : "Harry Potter ing fantasy