Publicado el 11 de Junio del 2019
438 visualizaciones desde el 11 de Junio del 2019
3,1 MB
45 paginas
Creado hace 12a (01/01/2012)
Desarrollo de herramientas empresariales para la búsqueda de información
utilizando Biginsights, Java y otras tecnologías de la informática
Introducción
Capítulo 1: Contexto General
1.1 Descripción del problema
1.2 Descripción del sistema
Capítulo 2: Tecnologías involucradas
Índice
2.1 IBM Biginsights
2.1.1 Big Data
2.1.2 Hadoop
2.1.3 Características de Biginsights
2.1.2.1 MapReduce
2.2 Java
2.2.1 Servlets y JSP
2.2.2 Frameworks de Java
2.2.2.1 Struts
2.2.2.2 Log4j
Bash scripting
Derby
IBM Db2
2.3 Freemarker
IBM Rational Team Concert
IBM Websphere
Jaql
IBM MQ
Linux
Bases de datos
XML
Capítulo 3 : Sistema de Búsqueda
Backend
Frontend
Motor de búsqueda
Nutch Crawler
Aplicaciones Web
Interfaz de Usuario
Interfaz de Administración
Runtime
Aplicación para empujar documentos
Servicio de búsqueda empresarial
Capítulo 4: Desarrollo e implementación del sistema
Capítulo 5: Evaluación y funcionamiento del sistema
Capítulo 6 : Conclusiones
Introducción
Este trabajo presenta bajo la modalidad de titulación por caso de estudio el
desarrollo de algunas herramientas de software que dan solución al problema de
búsqueda de información interna y externa a una empresa multinacional mediante la
implementación de un sistema de búsqueda. Este documento es producto de la
experiencia de casi cuatro años como desarrollador y analista de sistemas como parte del
equipo encargado del sistema de búsqueda implementando nuevos requerimientos,
mejoras, actualizaciones y solucionando problemas de diferentes tipos que se han
presentado durante el proyecto al que pertenece esta solución o sistema.
Por razones de confidencialidad y seguridad no se mencionará en este trabajo el
nombre de la empresa ni se detallará a fondo la arquitectura del sistema implementado.
En este documento se hablará sobre las tecnologías involucradas en la implementación
del sistema de búsqueda y de cómo interactúan entre sí.
tiempo reducido. Mismo que es solucionado mediante
El problema de la búsqueda de información se refiere como un usuario puede
obtener información, documentos, contenidos multimedia , entre otros, de forma precisa,
es decir, que la información encontrada sea de relevancia conforme a lo que el usuario
necesita y en un
la
implementación de un sistema de búsqueda en la página web de la empresa de manera
que clientes, estudiantes, investigadores o cualquier usuario interesado en obtener
cualquier tipo de información relacionada a la empresa lo pueda hacer de la manera más
eficiente posible.
Además de satisfacer las necesidades de los usuarios finales mencionados
anteriormente, el sistema debe de solucionar las necesidades de los usuarios
relacionados con el funcionamiento del sistema, por ejemplo, los usuarios encargados
de actualizar contenidos y de administrar cada uno de los componentes del mismo.
La resolución de este problema se inscribe en el área de desarrollo de sistemas. Se
requiere contar con experiencia en programación en la tecnología Java, ingeniería y
arquitectura en software, componentes web, patrones de diseño, entre otras áreas.
Estas áreas de conocimiento fueron estudiadas y reforzadas durante el tiempo que cursé
la Maestría en Tecnologías de Información principalmente en las materia de
Programación avanzada, Matemáticas avanzadas, Sistemas operativos avanzados , Bases
de datos Ingeniería de Software I y II y Tópicos selectos de desarrollo de sistemas
(Usabilidad)
En este trabajo primero se hablará a fondo sobre las diferentes tecnologías
involucradas en el desarrollo del sistema de búsqueda, después de los componentes que
conforman el sistema y por último un análisis del funcionamiento sistema. También hay
un anexo sobre cómo se ejecutaron las pruebas del sistema y de la metodología Agile
que se utilizó para las etapas de desarrollo y mantenimiento del sistema.
Capítulo 1: Contexto General
1.1 Descripción del problema
Una empresa multinacional cuyo giro son las Tecnologías de Información necesita
de un sistema de búsqueda el cual permita buscar información de manera eficiente sobre
productos, tecnologías desarrolladas y cualquier otro tipo de información relacionada
con la empresa. Este debe ser implementado como un buscador web de contenidos,
parecido a los sistemas de búsqueda web que implementan Yahoo o Google. Este
sistema será parte de la página principal de la empresa.
La información o los contenidos provienen de muchos sistemas que pertenecen a
diferentes áreas de la compañía, estos sistemas generan diferente tipo de información en
diversos tipos de archivos o presentaciones por ejemplo se generan blogs, páginas web,
wikis, archivos de texto, archivos multimedia, entre otros. La totalidad de la información
disponible es demasiado grande, se estiman más de 10 Terabytes de datos.
Por tanto, la problemática general a resolver consiste en cómo desarrollar un
sistema de búsqueda web que sea capaz presentar de forma eficaz la información que el
usuario necesita. También es necesario que el sistema esté disponible 99.9% del tiempo.
Existen muchos otras problemáticas que se originan por la naturaleza de las
actividades de la empresa pero que no pueden ser incluidas en este documento por
cuestiones de confidencialidad, Problemas como los tipos de accesos a la aplicación, el
tipo de infraestructura de hardware empleada, idiomas que soporta el sistema, entre otros
están por tanto fuera del alcance del documento.
1.2 Descripción del sistema
El sistema de debe ser capaz de manejar grandes volúmenes de datos de una manera
rápida y eficiente para dar una respuesta satisfactoria en relevancia, tiempo y en calidad
a los usuarios. Este sistema debe contar con las características básicas de un buscador
web y debe contar con diferentes módulos para los diferentes tipos de operaciones que
se realizan en un buscador. También debe permitir a los usuarios administradores del
mismo contar con herramientas para llevar a cabo tareas relacionadas la búsqueda de
información, tales como actualización de contenidos, administración de la publicidad en
la página, bloqueo de contenidos, generación de reportes, entre otras.
Para entender el funcionamiento del sistema de búsqueda que se requiere es
necesario entender cómo funciona un motor de búsqueda. Un sistema de búsqueda o
motor de búsqueda efectúa al menos dos funciones principales [1]:
• Proceso de indexar: Se refiere a construir estructuras de datos que permiten la
búsqueda
• Proceso de consulta: Se refiere a usar esas estructuras para producir una lista
de documentos ordenadas por relevancia dada una consulta de un usuario
El proceso de indexar se compone de:
• Adquisición de texto
• Transformación de texto
• Creación de un índice
El proceso de adquisición de texto se refiere a identificar y poner a disponibilidad
los documentos que podrán ser buscados. Esto se efectúa mediante un “crawler” que se
encarga de escanear el repositorio de datos para posteriormente identificar y adquirir los
documentos para el motor de búsqueda. Otra de sus funciones es la de describir
contenido nuevo en el repositorio e integrarlo al índice.
Después se efectúa el proceso de convertir la variedad de formatos de archivos
que se encuentran a una estructura de datos que contiene tanto el documento como
información relevante sobre él. Estas estructuras de datos son guardadas generalmente
en un “Data Document Store” que es una base de datos para este tipo de estructuras.
Después la información de esta base de datos se transforma en un índice, que es una
representación depurada y reducida de estos datos para facilitar el proceso de consulta.
Figura 1. Proceso de Indexar. [1]
El proceso de consulta se refiere a las actividades que involucran las consultas que
realizan el usuario y los resultados que obtiene del sistema. Este proceso consta de:
• Interacción del usuario
• Evaluación
• Categorización
Primero el usuario envía una petición de consulta al sistema, dicha consulta se
transforma y pasa por un proceso de evaluación en el cual la consulta se transforma a
información significativa para el sistema con el fin de que obtengamos resultados
relevantes respecto a la búsqueda. Finalmente todos esos resultados son categorizados
por relevancia y son presentados al usuario iniciando por el más relevante.
Figura 2. El proceso de consulta. [2]
El sistema de búsqueda incluye las funcionalidades previamente explicadas y cuenta
además de otros módulos. Los componentes de los que consta el sistema son:
• Motor de búsqueda: Encargado de recolectar, actualizar documentos, contenidos y
generar un índice de contenidos.
• Interfaz de usuario para búsqueda: Es la interfaz que utilizaran los usuarios para
efectuar búsquedas de información y ver los resultados
• Interfaz de usuario para administración: Se refiere a la interfaz de usuario que
utilizarán los administradores de la aplicación para realizar actividades diversas
como actualización de contenidos, parar el sistema, entre otras.
• Servicios p
Comentarios de: Desarrollo de herramientas empresariales para la búsqueda de información utilizando Biginsights, Java y otras tecnologías de la informática (0)
No hay comentarios