Arquitectura Criterios Iniciales
Enviado por Enrique Rocha • 15 de Mayo de 2018 • Apuntes • 2.972 Palabras (12 Páginas) • 104 Visitas
Arquitectura
Criterios Iniciales
La arquitectura propuesta está compuesta por cuatro capas:
- Recolección de datos.
- Almacenamiento.
- Procesamiento de datos.
- Visualización.
[pic 1]
Figura: Arquitectura por Capas
Los orígenes de datos serán recolectados a través de una capa de recolección de datos, con herramientas específicamente desarrolladas para tal función que explicaremos más adelante, esta información será almacenada para que puedan procesarse, analizarse y visualizarse tantas veces como haga falta y lo requiera el servicio. Esta arquitectura no es nueva, sino que ya es algo generalizado en las soluciones de Business Intelligence que existen hoy en día.
La arquitectura que implementará Temps utiliza una pila de tecnología "Open Source" o fuente abierta, se eligió esta opción debido a los siguientes puntos:
- Licencias gratuitas: No es necesario presupuestar el coste de mantenimiento de software y de personal encargado: Las licencias de software suponen un gasto adicional frente al salario del personal lo que significaría un ahorro en tema de costes.
- Actualizaciones gratuitas: Cada vez salen versiones mejoradas el cual mejora el rendimiento de la aplicación.
- Las soluciones están altamente probadas y funcionales al 100 % con una inversión inicial mínima.
- Software 100% seguro.
- Compatibilidad con muchas herramientas
Por otra parte, toda la arquitectura será implementada en servidores en la Nube debido a que:
- Posibilidad de tener un respaldo o copia de todos nuestros archivos en un lugar seguro.
- Bajos Costos
- Flexibilidad de acceso sin importar el lugar, tiempo.
- Actualización constante tanto de hardware como de software de parte del proveedor sin interrupción de servicios en la mayoría de los casos.
Diseño
Se muestra el diseño de la arquitectura a implementar:
[pic 2]
Figura: Arquitectura a implementar
A continuación, explicaremos el diseño en partes de derecha a izquierda para un mejor entendimiento.
- Primera parte: Recolección de datos
El acceso para cada uno de los usuarios finales de la solución que se propone en el proyecto Temps, serán mediante la creación de un portal Web construido íntegramente con herramientas del tipo “Open Source” y mediante la creación de una aplicación para dispositivos Apple y Android. El propósito final de dicho portal Web consiste en proporcionar una herramienta de Inteligencia de Negocio, además de proporcionar mediante la creación de una aplicación para equipos Android y Apple el acceso móvil.
Contamos con tres periféricos de entrada para el ingreso de los datos:
- Sensor: dispositivo que recolectará datos de los establecimientos. El tipo de transmisión de datos será por LPWAN (Low Power Wide Area Newtork), debido a que el tamaño del envío de datos es pequeño, no necesitamos tener un buen ancho de banda, pero sí necesitamos que la información pueda ser enviada a grandes distancias.
- Móvil (app): A través de la aplicación se recogerán datos del usuario y otros necesarios
- Portátil, PC (Página web): A través de la página web se recolectará información necesaria.
Los datos que envíe el sensor tendrán el siguiente formato:
[pic 3]
Figura: Información enviada desde el sensor
Los datos serán recolectados de dos distintas formas mediante un software libre que nos permita aplicar los procesos:
- Mediante procesamiento en tiempo real: La información llegará al servidor de base de datos para el registro de la información porque necesitamos que esta información sea recolectada en casi en tiempo real, el tamaño aproximado de los archivos planos será de 76 bytes, siendo casi insignificante el tamaño.
- Mediante procesamiento en lote (batch): la información llegará directamente al servidor de almacenamiento para ser almacenados y luego ser tratados para un fin específico.
Para el tratamiento de la gestión empresarial como ser la administración de costos, finanzas, recursos humanos y otras herramientas, se contará con un sistema ERP de licencia gratuita y esta contará con una base de datos dedicada que a la vez estará conectada a nuestro servidor de almacenamiento principal.
Como la autenticación de los usuarios será por una parte mediante redes sociales, necesitaremos que nuestro servidor de aplicaciones se encuentre conectado mediante un API a los servidores de Facebook, Instagram u otro para el correspondiente registro.
- Segunda parte: Almacenamiento
Nuestra plataforma de almacenamiento estará basada en un sistema de ficheros HDFS que presenta las siguientes características:
- Es un servicio que acepta almacenar datos estructurados como no estructurados
- Software de licenciamiento libre
- Es escalable
- Capacidad de procesar información a gran velocidad (punto importante en el funcionamiento de la arquitectura).
- Fácil vinculación con herramientas de procesamiento de datos a gran velocidad.
En este punto se guardará toda la información que el sistema necesite, así como también será fuente de datos para la parte de business intelligence y machine learning.
- Tercera Parte: Procesamiento de datos
Para el procesamiento de datos se aplicará un modelo Business Intelligence el cual nos ayude en la toma de decisiones mediante el procesamiento, análisis, reporting de los datos transformados en información.
[pic 4]
Figura: Diseño de la arquitectura Business Intelligence
Tendremos dos fuentes de datos: la que proviene del servidor de almacenamiento y de la base de datos ERP.
- Los datos que llegan de la base de datos ERP pasarán por un proceso ETL el cual transforma los datos para luego ser almacenados en un servidor DataWarehouse y mediante herramientas de análisis, reporting, ser analizados con el fin de ayudar en la toma de decisiones de la empresa. El software tendrá licencia gratuita.
- Los datos que lleguen del servidor de almacenamiento pasarán por un proceso ETL para la transformación de los datos y luego aplicar herramientas de machine learning, estos procesos empiezan con una selección de los datos a tratar en función de variables de predicción y cálculo, es decir, de un conjunto de variables objetivas y otro de variables independientes: las primeras son las que guían la elección en función de los objetivos que se persiguen con el análisis, y las segundas determinan de qué modo se llevará a cabo el proceso. Tras ello, se analizarán las propiedades del conjunto de datos seleccionados para detectar patrones, tendencias, valores atípicos y datos descartables. Este análisis previo guiará el posterior procesamiento de los datos, que permitirá clasificarlos y segmentarlos en función del modelo predictivo que se elegirá de acuerdo al objetivo que se tenga, y tras lo cual se elaborarán modelos de conocimiento gracias a la identificación de patrones de comportamiento, y de elementos de asociación y disociación entre las distintas variables usadas en el análisis previo. Una vez obtenido los modelos de conocimiento, se procede a la validación de los mismos tras compararlos e interpretarlos mediante herramientas de visualización, y a la elección del más satisfactorio según los resultados obtenidos. Si ningún modelo satisface las expectativas de conocimiento esperadas, el proceso se repite de nuevo cambiando variables y adoptando técnicas distintas a las usadas en los procesos anteriores, hasta obtener un modelo de explotación, un ejemplo sería el predecir los gustos de los usuarios según a los lugares que frecuenta. El software en esta sección será libre.
- Cuarta parte: Visualización
En esta sección se espera mostrar la información ya procesada mediante herramientas de visualización, de reportes predeterminados, reportes ad-hoc, dashboards y análisis predictivos de los resultados extraídos de la herramienta machine learning como la información almacenada en el servidor de DataWarehouse. Dichos resultados deben ser entendibles por los usuarios, independientemente de sus conocimientos, con la única ayuda de una imagen o un gráfico.
...