Manorería es un motor de indexación y búsqueda de texto completo, escrito en Golang. La panorama es exclusivamente para fines educativos. Proporciona una API simple para buscar palabras o un grupo de palabras, dentro de una gran cantidad de texto repartido en múltiples documentos. Internamente, Widescale usa un índice invertido, similar a Elasticsearch. Para obtener más información, consulte este artículo.
Avísame si ustedes tienen alguna sugerencia.
Encontré un índice invertido mientras leía sobre Elasticsearch. Para entender por qué usarlo, aquí hay un extracto del artículo de Wikipedia al respecto,
Al tratar con un pequeño número de documentos, es posible que el motor de búsqueda de texto completo escanee directamente el contenido de los documentos con cada consulta, una estrategia llamada "escaneo en serie". Esto es lo que hacen algunas herramientas, como GREP, al buscar.
Sin embargo, cuando el número de documentos para buscar es potencialmente grande, o la cantidad de consultas de búsqueda para realizar es sustancial, el problema de la búsqueda de texto completo a menudo se divide en dos tareas: indexación y búsqueda. La etapa de indexación escaneará el texto de todos los documentos y creará una lista de términos de búsqueda (a menudo llamado índice). En la etapa de búsqueda, al realizar una consulta específica, solo se hace referencia al índice, en lugar del texto de los documentos originales.
Realmente no pensé que pudiera hacer una mejor explicación que eso.
go a su variable de entorno de ruta. > go get github.com/gorilla/mux
> go get github.com/anubhavp28/WideScale/
> go install github.com/anubhavp28/WideScale/
Para iniciar el servidor, simplemente ejecute:
> cd $(go env GOPATH)/bin
> widescale <path-to-dir-containing-txt-files-to-index>
Este proyecto tiene licencia bajo la licencia MIT: consulte el archivo License.md para más detalles.