

ElasticLunr es una pequeña biblioteca de búsqueda de texto completo para su uso en el entorno Elixir. Indexa documentos JSON y proporciona una interfaz de búsqueda amistosa para recuperar documentos.
La biblioteca está creada para aplicaciones web que no requieren las complejidades de implementación de los motores de búsqueda populares al tiempo que aprovechan las capacidades del haz.
Imagine cuánto se obtiene cuando la funcionalidad de búsqueda de su aplicación reside en el mismo entorno (VM de Beam) que la lógica de su negocio; La búsqueda se resuelve más rápido, el número de servicios (Elasticsearch, Solr, etc.) para monitorear se reduce.
La biblioteca se puede instalar agregando elasticlunr a su lista de dependencias en mix.exs:
def deps do
[
{ :elasticlunr , "~> 0.6" }
]
endLa documentación se puede encontrar en hexdocs.pm. Vea la publicación de la publicación del blog a ElasticLunr y LiveBook para ver ejemplos.
A veces los usuarios quieren expandir un token de consulta para aumentar el retiro. Por ejemplo, el token de consulta de usuario es "micro", y suponga que el "microondas" y el "microscopio" están en el índice, si el usuario elige expandir el token de consulta "micro" para aumentar el recuerdo, tanto "microondas" como "microscopio" se devolverán y buscarán en el índice. Los resultados de la consulta de los tokens expandidos son penalizados porque no son los mismos que el token de consulta.
El repositorio incluye un archivo LiveBook que puede ejecutar. ¡Puede hacer clic en el botón de abajo para ejecutarlo con LiveBook.dev!
ElasticLunr le permite escribir sus índices a cualquier proveedor de almacenamiento que desee. No necesita adquirir el módulo Elasticlunr.Storage directamente, es utilizado por Elasticlunr.IndexManager . Ver proveedores disponibles a continuación:
Para configurar qué proveedor usar:
config :elasticlunr ,
storage: Elasticlunr.Storage.S3Tenga en cuenta que todos los índices de almacenamiento están precargados en el inicio de la aplicación. Para ver la configuración del proveedor disponible, debe hacer referencia al módulo.
ElasticLunr se publica bajo la licencia MIT: consulte el archivo de licencia.