SlideShare una empresa de Scribd logo
UNIVERSIDAD TÉCNICA DEL NORTE
Instituto de postgrado
Andrea Guevara
Alexandra Juma
Gabriela Valencia
COMPUTACIÓN EN LA NUBE Investigación de API´S
agregadas y cómputo masivo
API´S
agregadas
Cómputo
masivo
APIS REST
REST, REpresentational State Transfer, es el tipo de arquitectura más natural y
estándar para crear APIs para servicios orientados a Internet. (SOA)
En los APIs REST el número de solicitudes(llamadas) al servidor son recurrentes
debido a su naturaleza genérica y granularidad; cada llamada devuelve sólo
una parte de la funcionalidad para una experiencia de usuario dado, lo que
requiere aplicaciones cliente para hacer múltiples llamadas que necesitan ser
montados con el fin de ser una sola experiencia de usuario.
MODELO
Este modelo de interacción se ilustra en el siguiente diagrama:
APIS DE AGREGACIÓN
Para reducir las múltiples llamadas inherente a la API REST, las solicitudes discretas
deben realizarse en una sola petición optimizado para un cliente determinado.
La ventaja es que el dispositivo paga el precio de una latencia WAN y aprovecha
la baja latencia y el potente del lado del servidor en el hardware.
Como efecto secundario, esto también elimina las redundancias que se producen
para cada petición entrante. Este modelo de interacción se ilustra en el siguiente
diagrama:
Una petición optimizada como el modelo anterior debe abarcar el paralelismo del
lado del servidor para al menos el mismo nivel que el alcanzado previamente a
través de múltiples peticiones de red del cliente.
Debido a que en el lado del servidor las solicitudes paralelizadas se están
ejecutando en la misma red.
EJEMPLO
API Agregación por Lua y Nginx en una aplicación móvil de calificación de palabras
según la carga emocional más positiva.
Con concurrencia de 1 proceso, por solicitud nos referimos a la carga de la página
de un click en enviar para obtener los resultados (esto se traduce en múltiples
peticiones a la API REST).
RESULTADO
El resultado del experimento son
los siguientes:
MODELOS DE APIS AGREGADAS EN EL MERCADO
Existe una amplia diversidad en cómo se obtienen los resultados de las empresas que
ofertan APIS de agregación. Algunos tienen una relación de tipo uno a uno: extraen
datos de una fuente de API y la envían a otra.
Algunos tienen un modelo de varios a uno que extrae servicios y datos de múltiples
fuentes de API y lo entrega en una salida, por ejemplo, una visualización.
API AGREGADAS PARA AUTOMATIZACIÓN
Extrae datos de API de una
fuente hace el envió a otra.
OBJETIVO
Con niveles de precios
establecidos por número de
integraciones y / o número
de llamadas de API
realizadas cada mes.
Tienden a tener una
biblioteca de SaaS que se
pueden integrar con
cualquier otro servicio para
crear un flujo de trabajo
automatizado.
Las empresas utiliza las API
del servicio externo para
crear integraciones que
permiten a los clientes que no
son programadores integrar
fácilmente las API en un flujo
de trabajo transparente
CARACTERISTICAS
Zapier, Temboo
PROVEEDORES
API AGREGADAS PARA PRODUCCIÓN CREATIVA
Extraer datos de
múltiples fuentes,
los combina y
luego
los envía como la
salida
OBJETIVO
Las agencias creativas y las
empresas digitales de
relaciones públicas son un
sector en crecimiento de los
consumidores de la API, no solo
utilizando API para monitorear
análisis de marketing o medios
sociales, sino como parte de la
campaña de relaciones
públicas.
CARACTERÍSTICAS
Digital PR firms.
PROVEEDORES
API AGREGADAS PARA LA VISUALIZACIÓN DE BI Y ANÁLISIS
Extrae datos de
múltiples fuentes de API
y los envía a una salida
visual (panel).
OBJETIVOS
Agregadores de
automatización, servicios
de tablero proporcionar
una biblioteca de los
servicios que se pueden
extraer de (detrás de
las escenas, el acceso a
la API correspondiente),
junto con los datos de la
compañía privada para
crear la analítica y
paneles de inteligencia
empresarial para los
usuarios finales.
CARACTERÍSTICAS
Adigami
PROVEEDOR
API AGREGADAS DE DATOS GRANDES Y PERSONALES
Extrae datos de
multiples fuentes API
(datos abiertos) y
combinan con las API
que extraen de las
cuentas privadas
designadas, analiza y
envia los resultados a
la salida (dasboards y
apps)
OBJETIVO
Estos modelos emulan o
amplían las ideas principales
detrás de los mashups
remezclando datos abiertos
con fuentes propietarias,
algoritmos y luego
agregando los datos
privados de los usuarios
finales a través de la API
para crear informes de
inteligencia personal.
Estos pueden ser en forma de
aplicaciones, alertas o
cuadros de mando que
ayudan a los clientes finales
a tomar medidas pertinentes.
CARACTERÍSTICAS
API Yodlee interactivo
agregada está
diseñado para clientes
que necesitan acceso y
de nivel de reserva de
seguridad basado en
el permiso para tener
acceso a banco de sus
clientes, tarjeta de
crédito, inversiones y
cuentas de crédito.
PROVEEDOR
EJEMPLO
IGG Software desarrolla iBank
El cliente para poder ver una visión holística de sus finanzas en cualquier Apple
dispositivo. La ventaja "incorporada" de Envestnet® | Yodlee® Aggregation API
permite el cliente para tener sus datos actualizados, todo el tiempo. Diseñado para
ayudar al cliente a controlar el gasto, construir ahorros y planificar
Ejemplo: remezclando los datos de tiempo abierto con los datos
propietarios de sus clientes y tal vez otros datos específicos de ubicación
enrutados a través de la API para calcular los riesgos de riesgo climático
para apoyar la toma de decisiones agrícolas locales
CÓMPUTO MASIVO
Trabajar con grandes volúmenes de datos es prácticamente imposible con los
recursos disponibles en las computadoras personales modernas. Para lidiar con este
problema se divide la tarea en partes que trabajan de forma independiente. Esto es
conocido como cómputo en paralelo (cómputo masivo) y puede realizarse sobre
distintos núcleos en una misma computadora o sobre diferentes computadoras
agrupadas en un clúster. Un clúster es un conjunto de computadoras que
colaboran en la solución de una tarea.
EJEMPLO DE PROYECTO
El presente documento analiza la implementación de proyecto utilizando computación
masiva.
Consiste en la implantación de un nuevo sistema de clustering o computación masiva
para el Departamento de Lenguajes y Sistemas Informáticos de la Universidad
Politécnica de Catalunya.
Las principales actividades del departamento son la docencia y la investigación. Es
esta faceta la que requiere de una gran potencia de cálculo dada la complejidad y
variedad de los proyectos que se tratan.
Durante el proyecto se lleva a cabo un análisis de los requisitos para el nuevo
sistema de clustering, se estudia las distintas opciones para realizar una
propuesta que finalmente se implementará.
ANÁLISIS PRELIMINAR
SITUACIÓN ACTUAL
En el momento de comenzar el proyecto, el Departamento de Lenguajes y
Sistemas Informáticos contaba con tres clusters de computación. Cada uno ellos
propiedad de un grupo de investigación distinto.
El modelo HPC(High performance Computing o cómputo de alto rendimiento)
basado en openMosix que proporcionaba un entorno confortable y productivo para
la cantidad inicial de usuarios, ha quedado obsoleto ante el continuo crecimiento
tanto en número de usuarios como en necesidades de cálculo y espacio de disco
OBJETIVOS DEL PROYECTO
La sustitución de los clusters por uno
nuevo que se adapte a las nuevas
necesidades del Departamento
La creación de una documentación
que sirva como referencia técnica al
Laboratorio de Cálculo.
El sistema debe proveer a los usuarios
un entorno de trabajo sencillo,
amigable y proporcionar una
escalabilidad que permita afrontar el
futuro sentando unas bases sólidas.
SISTEMAS DE CLUSTERING
Software de Clustering
Es necesario un software o middleware que se encargue de distribuir los trabajos de
los usuarios entre los nodos disponibles de forma óptima.
openMosix
Middleware de los tres clusters en producción.
DISEÑO E IMPLEMENTACIÓN
ESTUDIO, ANÁLISIS Y DISEÑO DE UNA SOLUCIÓN
El análisis de los requisitos llevará a lo largo del proyecto a plantear varios
diseños y arquitecturas posibles para el nuevo cluster, que tras implementarlos
y llevar a cabo las pertinentes pruebas de integración, estabilidad y rendimiento
conducirán a la propuesta final.
COMPARACIÓN
Antiguo cluster Requerimientos nuevo cluster
No tiene ningún mecanismo de limitación de recursos:
cualquier usuario puede, en un momento dado, lanzar
tantos procesos como quiera y saturar un nodo o el
cluster completo.
El nuevo cluster debe ofrecer un servicio igual al que
ofrece el sistema actual, es decir, debe ser capaz de
procesar los trabajos de los usuarios y debe disponer de
un espacio de disco para albergar sus datos y
programas en un sistema de disco centralizado
Presenta problemas con varios tipos de aplicaciones: el
mecanismo de migración automática de openMosix no
funciona con aplicaciones que hacen uso de threads o
memoria compartida.
El middleware elegido debe ser personalizable a nivel
de gestión de colas, proyectos, grupos de usuarios, etc.
Además debe contar con un software de gestión de
imágenes de sistema que permita instalar y modificar
fácilmente el sistema en los nodos que la componen, de
forma que la instalación y posterior mantenimiento de
los nodos (más de 50) sea asumible.
Estrechamente ligado al kernel: openMosix impone el
kernel de los nodos, siendo el más reciente de la rama
2.4, sin soporte para el hardware de los nuevos nodos.
El cluster debe ser monitorizable, es decir, el
administrador debe tener las herramientas necesarias
para controlar el estado de sus componentes y
percatarse de cualquier fallo.
ARQUITECTURA PROPUESTA (GLUSTERFS)
Cada uno de los seis nodos servidores de disco cuenta con dos discos de 750 GB,
que tras instalar sistema y swap deja una partición exportable de unos
700GB. Lo habitual en los servidores es utilizar una configuración RAID1 que
permita el fallo de un disco sin pérdida de datos. En el caso del sistema GlusterFS
con AFR (Automatic File Replication) los datos de cada nodo ya están replicados en
su peer, por lo que optamos por una configuración RAID0.
De esta manera no se pierde espacio y el acceso al volumen resultante es más
rápido.
PRUEBAS
TEST AD-HOC
El siguiente test consiste en la ejecución concurrente de procesos con un alto uso de
E/S.
A continuación, se muestra los resultados de la comparación de las pruebas
obtenidos correspondientes a ejecutar un determinado número de procesos de
lectura entre las arquitecturas: Lustre y GlusterFS.
104,5 206,4 303,9 300 292,5 264,3 215,2
98,2
193,3
267,5
238,2
174,4
182,7
120,5
0
50
100
150
200
250
300
350
1-47 2-47,6 3-48,5 6-98 9-152 18-337 36-734
Concurrencia - Tiempo respuesta(s)
Throughput agregado (MB/s)
GlusterFS Lustre
CONCLUSIONES
El tiempo de respuesta de APIs agregadas tiene una considerable disminución
comparado con la API de Ajax.
A partir de los resultados obtenidos de las pruebas del nuevo sistema de clustering o
computación masiva para el Departamento de Lenguajes y Sistemas Informáticos de
la Universidad Politécnica de Catalunya elige el modelo de computación
masiva GLusterFS.
REFERENCIAS
Nuevo sistema de clustering. Revisado el 25 de noviembre de
2016. https://rdlab.cs.upc.edu/docu/html/cluster/#_Toc219597953
API Aggregation: Why It Matters and Eight Different Models. Revisado 25 de
noviembre de 2016, http://www.programmableweb.com/news/api-aggregation-whyit-matters-and-eight-different-
models/2013/12/13
Optimizing the Netflix API. Revisado el 25 de noviembre de 2016.
http://techblog.netflix.com/2013/01/optimizing-netflix-api.html
API AGGREGATOR. Revisado el 25 de noviembre de 2016.
https://github.com/solso/api-aggregator#architecture
Extending REST APIs with API Aggregator. Revisado el 25 de noviembre de 2016.
http://tech.3scale.net/2013/04/18/accelerate-your-mobile-api-with-nginx-and-lua
http://solutions.yodlee.com/rs/789-EJH-884/images/CS_IGG-Software-Case-Study.pdf
API Agregadas y Computo Masivo

Más contenido relacionado

La actualidad más candente

Herramientas Case
Herramientas CaseHerramientas Case
Herramientas Case
Cecilia Panozo
 
Herramientas CASE
Herramientas CASEHerramientas CASE
Herramientas CASE
Jesús Cedeño
 
C:\Fakepath\Case001[Easy Case]
C:\Fakepath\Case001[Easy Case]C:\Fakepath\Case001[Easy Case]
C:\Fakepath\Case001[Easy Case]Roman DC
 
Herranientas case
Herranientas caseHerranientas case
Herramientas case[gestion de cambio gestion de la configu
Herramientas case[gestion de cambio   gestion de la configuHerramientas case[gestion de cambio   gestion de la configu
Herramientas case[gestion de cambio gestion de la configuManuel Villalta
 

La actualidad más candente (6)

Herramientas Case
Herramientas CaseHerramientas Case
Herramientas Case
 
Herramientas CASE
Herramientas CASEHerramientas CASE
Herramientas CASE
 
Oracle APEX
Oracle APEXOracle APEX
Oracle APEX
 
C:\Fakepath\Case001[Easy Case]
C:\Fakepath\Case001[Easy Case]C:\Fakepath\Case001[Easy Case]
C:\Fakepath\Case001[Easy Case]
 
Herranientas case
Herranientas caseHerranientas case
Herranientas case
 
Herramientas case[gestion de cambio gestion de la configu
Herramientas case[gestion de cambio   gestion de la configuHerramientas case[gestion de cambio   gestion de la configu
Herramientas case[gestion de cambio gestion de la configu
 

Similar a API Agregadas y Computo Masivo

Apis Agregadas computomasivo
Apis Agregadas computomasivoApis Agregadas computomasivo
Apis Agregadas computomasivo
Andrea Guevara
 
Cloud computing
Cloud computingCloud computing
Cloud computing
Andhrsn Naranjo
 
Cloud computing
Cloud computingCloud computing
Cloud computing
Andhrsn Naranjo
 
Computación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicComputación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicsimeonhuamanchao
 
Computación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicComputación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológic
simeonhuamanchao
 
Computación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicComputación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológic
simeonhuamanchao
 
Cloud Computing VS SOA
Cloud Computing VS SOACloud Computing VS SOA
Cloud Computing VS SOA
Alejandro Fernando García Alcarria
 
Trabajo grupal 1 taller-prog-distribuida
Trabajo grupal 1 taller-prog-distribuidaTrabajo grupal 1 taller-prog-distribuida
Trabajo grupal 1 taller-prog-distribuida
RJ Manayay Chavez
 
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.pptCOMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
JUANPABLOCHVEZNAVA
 
Diapositivas diego
Diapositivas diegoDiapositivas diego
Diapositivas diegodbastos15
 
7984
7984 7984
Arquitectura de sistemas distribuidos-grupo Maria
Arquitectura de sistemas distribuidos-grupo MariaArquitectura de sistemas distribuidos-grupo Maria
Arquitectura de sistemas distribuidos-grupo Maria
gequito
 
Arquitectura de sistemas distribuidos-Grupo de Maria
Arquitectura de sistemas distribuidos-Grupo de MariaArquitectura de sistemas distribuidos-Grupo de Maria
Arquitectura de sistemas distribuidos-Grupo de Maria
gequito
 
Herramientas Case
Herramientas CaseHerramientas Case
Herramientas Caseguestf131a9
 
Sistema.inventario@hotmail.com
Sistema.inventario@hotmail.comSistema.inventario@hotmail.com
Sistema.inventario@hotmail.com
simeon
 
TESIS APLICACION DE MASHUPS EMPRESARIALES SOBRE ENTERPRISE 2.0
TESIS APLICACION DE MASHUPS EMPRESARIALES SOBRE ENTERPRISE 2.0TESIS APLICACION DE MASHUPS EMPRESARIALES SOBRE ENTERPRISE 2.0
TESIS APLICACION DE MASHUPS EMPRESARIALES SOBRE ENTERPRISE 2.0
Victor Cueva
 
Sistemas Operativos Distribuidos
Sistemas Operativos DistribuidosSistemas Operativos Distribuidos
Sistemas Operativos Distribuidos
Vectorinox01
 

Similar a API Agregadas y Computo Masivo (20)

Apis Agregadas computomasivo
Apis Agregadas computomasivoApis Agregadas computomasivo
Apis Agregadas computomasivo
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Computación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicComputación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológic
 
Computación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicComputación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológic
 
Computación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicComputación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológic
 
Soa
SoaSoa
Soa
 
Cloud Computing VS SOA
Cloud Computing VS SOACloud Computing VS SOA
Cloud Computing VS SOA
 
Trabajo grupal 1 taller-prog-distribuida
Trabajo grupal 1 taller-prog-distribuidaTrabajo grupal 1 taller-prog-distribuida
Trabajo grupal 1 taller-prog-distribuida
 
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.pptCOMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
 
Diapositivas diego
Diapositivas diegoDiapositivas diego
Diapositivas diego
 
7984
7984 7984
7984
 
Arquitectura de sistemas distribuidos-grupo Maria
Arquitectura de sistemas distribuidos-grupo MariaArquitectura de sistemas distribuidos-grupo Maria
Arquitectura de sistemas distribuidos-grupo Maria
 
Arquitectura de sistemas distribuidos-Grupo de Maria
Arquitectura de sistemas distribuidos-Grupo de MariaArquitectura de sistemas distribuidos-Grupo de Maria
Arquitectura de sistemas distribuidos-Grupo de Maria
 
Herramientas Case
Herramientas CaseHerramientas Case
Herramientas Case
 
Sistema.inventario@hotmail.com
Sistema.inventario@hotmail.comSistema.inventario@hotmail.com
Sistema.inventario@hotmail.com
 
Arquitectura multicapa
Arquitectura multicapaArquitectura multicapa
Arquitectura multicapa
 
TESIS APLICACION DE MASHUPS EMPRESARIALES SOBRE ENTERPRISE 2.0
TESIS APLICACION DE MASHUPS EMPRESARIALES SOBRE ENTERPRISE 2.0TESIS APLICACION DE MASHUPS EMPRESARIALES SOBRE ENTERPRISE 2.0
TESIS APLICACION DE MASHUPS EMPRESARIALES SOBRE ENTERPRISE 2.0
 
Myappgen
MyappgenMyappgen
Myappgen
 
Sistemas Operativos Distribuidos
Sistemas Operativos DistribuidosSistemas Operativos Distribuidos
Sistemas Operativos Distribuidos
 

Último

Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOSAnálisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
ppame8010
 
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA  PPTCONTROL DE MOTORES DE CORRIENTE ALTERNA  PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
LuisLobatoingaruca
 
Distribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de MediasDistribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de Medias
arielemelec005
 
Edafología - Presentacion Orden Histosoles
Edafología - Presentacion Orden HistosolesEdafología - Presentacion Orden Histosoles
Edafología - Presentacion Orden Histosoles
FacundoPortela1
 
Una solucion saturada contiene la cantidad máxima de un soluto que se disuel...
Una solucion saturada contiene la cantidad máxima de un  soluto que se disuel...Una solucion saturada contiene la cantidad máxima de un  soluto que se disuel...
Una solucion saturada contiene la cantidad máxima de un soluto que se disuel...
leonpool521
 
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuariaBOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
mesiassalazarpresent
 
Las Fuentes de Alimentacion Conmutadas (Switching).pdf
Las Fuentes de Alimentacion Conmutadas (Switching).pdfLas Fuentes de Alimentacion Conmutadas (Switching).pdf
Las Fuentes de Alimentacion Conmutadas (Switching).pdf
NicolasGramajo1
 
Vehiculo para niños con paralisis cerebral
Vehiculo para niños con paralisis cerebralVehiculo para niños con paralisis cerebral
Vehiculo para niños con paralisis cerebral
everchanging2020
 
Ciclo de Otto. Máquinas térmicas para el estudio de la termodinámica química
Ciclo de Otto. Máquinas térmicas para el estudio de la termodinámica químicaCiclo de Otto. Máquinas térmicas para el estudio de la termodinámica química
Ciclo de Otto. Máquinas térmicas para el estudio de la termodinámica química
ycalful01
 
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDADPRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
mirellamilagrosvf
 
Desbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptx
Desbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptxDesbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptx
Desbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptx
ValGS2
 
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdfPLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
MariaCortezRuiz
 
Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.
thatycameron2004
 
Seguridad en mineria los Controles criticos
Seguridad en mineria los Controles criticosSeguridad en mineria los Controles criticos
Seguridad en mineria los Controles criticos
Melvin191754
 
Hidrostatica_e_Hidrodinamica.pdggggggggf
Hidrostatica_e_Hidrodinamica.pdggggggggfHidrostatica_e_Hidrodinamica.pdggggggggf
Hidrostatica_e_Hidrodinamica.pdggggggggf
JavierAlejosM
 
MATERIALES MAGNETICOS EN EL CAMPO SIDERURGICO.pptx
MATERIALES MAGNETICOS EN EL CAMPO SIDERURGICO.pptxMATERIALES MAGNETICOS EN EL CAMPO SIDERURGICO.pptx
MATERIALES MAGNETICOS EN EL CAMPO SIDERURGICO.pptx
Fernando Benavidez
 
Dialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdf
Dialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdfDialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdf
Dialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdf
fernanroq11702
 
Joseph juran aportaciones al control de la calidad
Joseph juran aportaciones al control de la calidadJoseph juran aportaciones al control de la calidad
Joseph juran aportaciones al control de la calidad
KevinCabrera96
 
1º Caso Practico Lubricacion Rodamiento Motor 10CV
1º Caso Practico Lubricacion Rodamiento Motor 10CV1º Caso Practico Lubricacion Rodamiento Motor 10CV
1º Caso Practico Lubricacion Rodamiento Motor 10CV
CarlosAroeira1
 
TEMA 11. FLUIDOS-HIDROSTATICA.TEORIApptx
TEMA 11.  FLUIDOS-HIDROSTATICA.TEORIApptxTEMA 11.  FLUIDOS-HIDROSTATICA.TEORIApptx
TEMA 11. FLUIDOS-HIDROSTATICA.TEORIApptx
maitecuba2006
 

Último (20)

Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOSAnálisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
Análisis Combinatorio ,EJERCICIOS Y PROBLEMAS RESUELTOS
 
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA  PPTCONTROL DE MOTORES DE CORRIENTE ALTERNA  PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
 
Distribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de MediasDistribución Muestral de Diferencia de Medias
Distribución Muestral de Diferencia de Medias
 
Edafología - Presentacion Orden Histosoles
Edafología - Presentacion Orden HistosolesEdafología - Presentacion Orden Histosoles
Edafología - Presentacion Orden Histosoles
 
Una solucion saturada contiene la cantidad máxima de un soluto que se disuel...
Una solucion saturada contiene la cantidad máxima de un  soluto que se disuel...Una solucion saturada contiene la cantidad máxima de un  soluto que se disuel...
Una solucion saturada contiene la cantidad máxima de un soluto que se disuel...
 
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuariaBOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
 
Las Fuentes de Alimentacion Conmutadas (Switching).pdf
Las Fuentes de Alimentacion Conmutadas (Switching).pdfLas Fuentes de Alimentacion Conmutadas (Switching).pdf
Las Fuentes de Alimentacion Conmutadas (Switching).pdf
 
Vehiculo para niños con paralisis cerebral
Vehiculo para niños con paralisis cerebralVehiculo para niños con paralisis cerebral
Vehiculo para niños con paralisis cerebral
 
Ciclo de Otto. Máquinas térmicas para el estudio de la termodinámica química
Ciclo de Otto. Máquinas térmicas para el estudio de la termodinámica químicaCiclo de Otto. Máquinas térmicas para el estudio de la termodinámica química
Ciclo de Otto. Máquinas térmicas para el estudio de la termodinámica química
 
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDADPRESENTACION REUNION DEL COMITE DE SEGURIDAD
PRESENTACION REUNION DEL COMITE DE SEGURIDAD
 
Desbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptx
Desbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptxDesbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptx
Desbalanceo Rotatorio cabeceo de flechas y elementos rotativos_GSV.pptx
 
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdfPLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
PLAN DE TRABAJO DE REFUERZO ESCOLAR 2024.pdf
 
Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.Flujograma de gestión de pedidos de usuarios.
Flujograma de gestión de pedidos de usuarios.
 
Seguridad en mineria los Controles criticos
Seguridad en mineria los Controles criticosSeguridad en mineria los Controles criticos
Seguridad en mineria los Controles criticos
 
Hidrostatica_e_Hidrodinamica.pdggggggggf
Hidrostatica_e_Hidrodinamica.pdggggggggfHidrostatica_e_Hidrodinamica.pdggggggggf
Hidrostatica_e_Hidrodinamica.pdggggggggf
 
MATERIALES MAGNETICOS EN EL CAMPO SIDERURGICO.pptx
MATERIALES MAGNETICOS EN EL CAMPO SIDERURGICO.pptxMATERIALES MAGNETICOS EN EL CAMPO SIDERURGICO.pptx
MATERIALES MAGNETICOS EN EL CAMPO SIDERURGICO.pptx
 
Dialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdf
Dialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdfDialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdf
Dialnet-EnsenanzaDeLaModelacionMedianteEcuacionesDiferenci-9304821.pdf
 
Joseph juran aportaciones al control de la calidad
Joseph juran aportaciones al control de la calidadJoseph juran aportaciones al control de la calidad
Joseph juran aportaciones al control de la calidad
 
1º Caso Practico Lubricacion Rodamiento Motor 10CV
1º Caso Practico Lubricacion Rodamiento Motor 10CV1º Caso Practico Lubricacion Rodamiento Motor 10CV
1º Caso Practico Lubricacion Rodamiento Motor 10CV
 
TEMA 11. FLUIDOS-HIDROSTATICA.TEORIApptx
TEMA 11.  FLUIDOS-HIDROSTATICA.TEORIApptxTEMA 11.  FLUIDOS-HIDROSTATICA.TEORIApptx
TEMA 11. FLUIDOS-HIDROSTATICA.TEORIApptx
 

API Agregadas y Computo Masivo

  • 1. UNIVERSIDAD TÉCNICA DEL NORTE Instituto de postgrado Andrea Guevara Alexandra Juma Gabriela Valencia
  • 2. COMPUTACIÓN EN LA NUBE Investigación de API´S agregadas y cómputo masivo
  • 4. APIS REST REST, REpresentational State Transfer, es el tipo de arquitectura más natural y estándar para crear APIs para servicios orientados a Internet. (SOA)
  • 5. En los APIs REST el número de solicitudes(llamadas) al servidor son recurrentes debido a su naturaleza genérica y granularidad; cada llamada devuelve sólo una parte de la funcionalidad para una experiencia de usuario dado, lo que requiere aplicaciones cliente para hacer múltiples llamadas que necesitan ser montados con el fin de ser una sola experiencia de usuario.
  • 6. MODELO Este modelo de interacción se ilustra en el siguiente diagrama:
  • 7. APIS DE AGREGACIÓN Para reducir las múltiples llamadas inherente a la API REST, las solicitudes discretas deben realizarse en una sola petición optimizado para un cliente determinado. La ventaja es que el dispositivo paga el precio de una latencia WAN y aprovecha la baja latencia y el potente del lado del servidor en el hardware.
  • 8. Como efecto secundario, esto también elimina las redundancias que se producen para cada petición entrante. Este modelo de interacción se ilustra en el siguiente diagrama:
  • 9. Una petición optimizada como el modelo anterior debe abarcar el paralelismo del lado del servidor para al menos el mismo nivel que el alcanzado previamente a través de múltiples peticiones de red del cliente. Debido a que en el lado del servidor las solicitudes paralelizadas se están ejecutando en la misma red.
  • 10. EJEMPLO API Agregación por Lua y Nginx en una aplicación móvil de calificación de palabras según la carga emocional más positiva. Con concurrencia de 1 proceso, por solicitud nos referimos a la carga de la página de un click en enviar para obtener los resultados (esto se traduce en múltiples peticiones a la API REST).
  • 11. RESULTADO El resultado del experimento son los siguientes:
  • 12. MODELOS DE APIS AGREGADAS EN EL MERCADO Existe una amplia diversidad en cómo se obtienen los resultados de las empresas que ofertan APIS de agregación. Algunos tienen una relación de tipo uno a uno: extraen datos de una fuente de API y la envían a otra. Algunos tienen un modelo de varios a uno que extrae servicios y datos de múltiples fuentes de API y lo entrega en una salida, por ejemplo, una visualización.
  • 13. API AGREGADAS PARA AUTOMATIZACIÓN Extrae datos de API de una fuente hace el envió a otra. OBJETIVO Con niveles de precios establecidos por número de integraciones y / o número de llamadas de API realizadas cada mes. Tienden a tener una biblioteca de SaaS que se pueden integrar con cualquier otro servicio para crear un flujo de trabajo automatizado. Las empresas utiliza las API del servicio externo para crear integraciones que permiten a los clientes que no son programadores integrar fácilmente las API en un flujo de trabajo transparente CARACTERISTICAS Zapier, Temboo PROVEEDORES
  • 14. API AGREGADAS PARA PRODUCCIÓN CREATIVA Extraer datos de múltiples fuentes, los combina y luego los envía como la salida OBJETIVO Las agencias creativas y las empresas digitales de relaciones públicas son un sector en crecimiento de los consumidores de la API, no solo utilizando API para monitorear análisis de marketing o medios sociales, sino como parte de la campaña de relaciones públicas. CARACTERÍSTICAS Digital PR firms. PROVEEDORES
  • 15. API AGREGADAS PARA LA VISUALIZACIÓN DE BI Y ANÁLISIS Extrae datos de múltiples fuentes de API y los envía a una salida visual (panel). OBJETIVOS Agregadores de automatización, servicios de tablero proporcionar una biblioteca de los servicios que se pueden extraer de (detrás de las escenas, el acceso a la API correspondiente), junto con los datos de la compañía privada para crear la analítica y paneles de inteligencia empresarial para los usuarios finales. CARACTERÍSTICAS Adigami PROVEEDOR
  • 16. API AGREGADAS DE DATOS GRANDES Y PERSONALES Extrae datos de multiples fuentes API (datos abiertos) y combinan con las API que extraen de las cuentas privadas designadas, analiza y envia los resultados a la salida (dasboards y apps) OBJETIVO Estos modelos emulan o amplían las ideas principales detrás de los mashups remezclando datos abiertos con fuentes propietarias, algoritmos y luego agregando los datos privados de los usuarios finales a través de la API para crear informes de inteligencia personal. Estos pueden ser en forma de aplicaciones, alertas o cuadros de mando que ayudan a los clientes finales a tomar medidas pertinentes. CARACTERÍSTICAS API Yodlee interactivo agregada está diseñado para clientes que necesitan acceso y de nivel de reserva de seguridad basado en el permiso para tener acceso a banco de sus clientes, tarjeta de crédito, inversiones y cuentas de crédito. PROVEEDOR
  • 17. EJEMPLO IGG Software desarrolla iBank El cliente para poder ver una visión holística de sus finanzas en cualquier Apple dispositivo. La ventaja "incorporada" de Envestnet® | Yodlee® Aggregation API permite el cliente para tener sus datos actualizados, todo el tiempo. Diseñado para ayudar al cliente a controlar el gasto, construir ahorros y planificar Ejemplo: remezclando los datos de tiempo abierto con los datos propietarios de sus clientes y tal vez otros datos específicos de ubicación enrutados a través de la API para calcular los riesgos de riesgo climático para apoyar la toma de decisiones agrícolas locales
  • 18. CÓMPUTO MASIVO Trabajar con grandes volúmenes de datos es prácticamente imposible con los recursos disponibles en las computadoras personales modernas. Para lidiar con este problema se divide la tarea en partes que trabajan de forma independiente. Esto es conocido como cómputo en paralelo (cómputo masivo) y puede realizarse sobre distintos núcleos en una misma computadora o sobre diferentes computadoras agrupadas en un clúster. Un clúster es un conjunto de computadoras que colaboran en la solución de una tarea.
  • 19. EJEMPLO DE PROYECTO El presente documento analiza la implementación de proyecto utilizando computación masiva. Consiste en la implantación de un nuevo sistema de clustering o computación masiva para el Departamento de Lenguajes y Sistemas Informáticos de la Universidad Politécnica de Catalunya.
  • 20. Las principales actividades del departamento son la docencia y la investigación. Es esta faceta la que requiere de una gran potencia de cálculo dada la complejidad y variedad de los proyectos que se tratan. Durante el proyecto se lleva a cabo un análisis de los requisitos para el nuevo sistema de clustering, se estudia las distintas opciones para realizar una propuesta que finalmente se implementará.
  • 21. ANÁLISIS PRELIMINAR SITUACIÓN ACTUAL En el momento de comenzar el proyecto, el Departamento de Lenguajes y Sistemas Informáticos contaba con tres clusters de computación. Cada uno ellos propiedad de un grupo de investigación distinto. El modelo HPC(High performance Computing o cómputo de alto rendimiento) basado en openMosix que proporcionaba un entorno confortable y productivo para la cantidad inicial de usuarios, ha quedado obsoleto ante el continuo crecimiento tanto en número de usuarios como en necesidades de cálculo y espacio de disco
  • 22. OBJETIVOS DEL PROYECTO La sustitución de los clusters por uno nuevo que se adapte a las nuevas necesidades del Departamento La creación de una documentación que sirva como referencia técnica al Laboratorio de Cálculo. El sistema debe proveer a los usuarios un entorno de trabajo sencillo, amigable y proporcionar una escalabilidad que permita afrontar el futuro sentando unas bases sólidas.
  • 23. SISTEMAS DE CLUSTERING Software de Clustering Es necesario un software o middleware que se encargue de distribuir los trabajos de los usuarios entre los nodos disponibles de forma óptima. openMosix Middleware de los tres clusters en producción.
  • 24. DISEÑO E IMPLEMENTACIÓN ESTUDIO, ANÁLISIS Y DISEÑO DE UNA SOLUCIÓN El análisis de los requisitos llevará a lo largo del proyecto a plantear varios diseños y arquitecturas posibles para el nuevo cluster, que tras implementarlos y llevar a cabo las pertinentes pruebas de integración, estabilidad y rendimiento conducirán a la propuesta final.
  • 25. COMPARACIÓN Antiguo cluster Requerimientos nuevo cluster No tiene ningún mecanismo de limitación de recursos: cualquier usuario puede, en un momento dado, lanzar tantos procesos como quiera y saturar un nodo o el cluster completo. El nuevo cluster debe ofrecer un servicio igual al que ofrece el sistema actual, es decir, debe ser capaz de procesar los trabajos de los usuarios y debe disponer de un espacio de disco para albergar sus datos y programas en un sistema de disco centralizado Presenta problemas con varios tipos de aplicaciones: el mecanismo de migración automática de openMosix no funciona con aplicaciones que hacen uso de threads o memoria compartida. El middleware elegido debe ser personalizable a nivel de gestión de colas, proyectos, grupos de usuarios, etc. Además debe contar con un software de gestión de imágenes de sistema que permita instalar y modificar fácilmente el sistema en los nodos que la componen, de forma que la instalación y posterior mantenimiento de los nodos (más de 50) sea asumible. Estrechamente ligado al kernel: openMosix impone el kernel de los nodos, siendo el más reciente de la rama 2.4, sin soporte para el hardware de los nuevos nodos. El cluster debe ser monitorizable, es decir, el administrador debe tener las herramientas necesarias para controlar el estado de sus componentes y percatarse de cualquier fallo.
  • 26. ARQUITECTURA PROPUESTA (GLUSTERFS) Cada uno de los seis nodos servidores de disco cuenta con dos discos de 750 GB, que tras instalar sistema y swap deja una partición exportable de unos 700GB. Lo habitual en los servidores es utilizar una configuración RAID1 que permita el fallo de un disco sin pérdida de datos. En el caso del sistema GlusterFS con AFR (Automatic File Replication) los datos de cada nodo ya están replicados en su peer, por lo que optamos por una configuración RAID0. De esta manera no se pierde espacio y el acceso al volumen resultante es más rápido.
  • 27. PRUEBAS TEST AD-HOC El siguiente test consiste en la ejecución concurrente de procesos con un alto uso de E/S. A continuación, se muestra los resultados de la comparación de las pruebas obtenidos correspondientes a ejecutar un determinado número de procesos de lectura entre las arquitecturas: Lustre y GlusterFS.
  • 28. 104,5 206,4 303,9 300 292,5 264,3 215,2 98,2 193,3 267,5 238,2 174,4 182,7 120,5 0 50 100 150 200 250 300 350 1-47 2-47,6 3-48,5 6-98 9-152 18-337 36-734 Concurrencia - Tiempo respuesta(s) Throughput agregado (MB/s) GlusterFS Lustre
  • 29. CONCLUSIONES El tiempo de respuesta de APIs agregadas tiene una considerable disminución comparado con la API de Ajax. A partir de los resultados obtenidos de las pruebas del nuevo sistema de clustering o computación masiva para el Departamento de Lenguajes y Sistemas Informáticos de la Universidad Politécnica de Catalunya elige el modelo de computación masiva GLusterFS.
  • 30. REFERENCIAS Nuevo sistema de clustering. Revisado el 25 de noviembre de 2016. https://rdlab.cs.upc.edu/docu/html/cluster/#_Toc219597953 API Aggregation: Why It Matters and Eight Different Models. Revisado 25 de noviembre de 2016, http://www.programmableweb.com/news/api-aggregation-whyit-matters-and-eight-different- models/2013/12/13 Optimizing the Netflix API. Revisado el 25 de noviembre de 2016. http://techblog.netflix.com/2013/01/optimizing-netflix-api.html API AGGREGATOR. Revisado el 25 de noviembre de 2016. https://github.com/solso/api-aggregator#architecture Extending REST APIs with API Aggregator. Revisado el 25 de noviembre de 2016. http://tech.3scale.net/2013/04/18/accelerate-your-mobile-api-with-nginx-and-lua http://solutions.yodlee.com/rs/789-EJH-884/images/CS_IGG-Software-Case-Study.pdf