Académique Documents
Professionnel Documents
Culture Documents
Ranking
Se usaron distintos tipos de Ranking ofrecidos por SphinxSearch, como por ejemplo
ordenar los resultados según la proximidad textual de los comentarios a nuestro query
de búsqueda, u ordenarlos por un contero simple de coincidencias. Esto ha permitido
realizar distintas pruebas en la recuperación de información.
Tipos de Búsqueda
Existen muchos tipos de búsqueda entre las cuales la más restante es la “búsqueda
exacta” la cual solo recupera aquellos comentarios que contengan la frase exacta que se
busca. Adicionalmente a este tipo de búsqueda se ha utilizado un tipo de búsqueda
basado en expresiones regulares para búsquedas de múltiples términos.
Índice incremental
Esta es una de las partes más importantes, ya que SphinxSearch no actualiza el índice
por sí solo, entonces se utilizó los índices incrementales, lo que significó crear dos
índices, uno que se actualiza una vez al día (el cual contiene el grueso de comentarios) y
otro que se actualiza cada 2 a 5 minutos, lo que nos permite tener los comentarios
indexados con un máximo de 5 minutos de retraso.
Para hacer posible este esquema se utilizó una tabla llamada “sph_counter” en la cual se
guarda el identificador del último comentario indexado por el índice principal, de esta
manera el índice delta (el que se actualiza cada 2 a 5 minutos) solo indexa los
comentarios restantes, en la Figura 1 se puede observar la configuración del índice
principal, mientras que en la Figura 2 la configuración del índice delta.
Luego de hacer todas las configuraciones necesarias fue necesario utilizar el API de
SphinxSearch disponible para Python. En la Figura 3 se muestra el uso de SphinxSearch
mediante el uso del API de Python, se establecen los parámetros de conexión, el límite de
comentarios a recuperar, el tipo de búsqueda (en este caso “4” equivale al tipo de búsqueda
mediante expresiones regulares) y el criterio de ordenamiento (en este caso por fecha); además
se muestra el uso de los filtros por fecha que se configuraron.
Proxmox
Proxmox VE es una solución completa de virtualización de servidores basada en
sistemas de código abierto. Permite la virtualización tanto sobre KVM (Máquina
virtual basada en el núcleo) como contenedores, y gestiona máquinas virtuales,
almacenamiento, redes virtualizadas y clústeres HA (clústeres de alta disponibilidad).
Se utilizó Proxmox para convertir una máquina del Centro de Investigación en Ciencia
de la Computación en un clúster de máquinas virtuales, específicamente tres máquinas
virtuales ya que dicha computadora cuenta con 4 núcleos, 3 núcleos destinados para
máquinas virtuales y uno para su administración.
Esta virtualización se realizó con el fin de utilizar SphinxSearch como un modelo
distribuido, es decir una maquina se encargaba de la ejecución de SphinxSearch, la
segunda se encargada de la base de datos y la última del funcionamiento del crawler que
recuperaba los comentarios de redes sociales.
A futuro es posible utilizar Proxmox para incrementar el número de máquinas virtuales
(agregando más maquinas físicas) de esta manera se incrementaría el número de
máquinas que corren SphinxSearch aumentando la escalabilidad del modelo.