Si fuese un investigador del siglo XIX, que ha realizado un avance científico, me surgiría una gran inquietud sobre compartir mi hallazgo. Por un lado, al compartir mis avances podré beneficiarme del conocimiento de la comunidad científica, su perspectiva global y contar con recursos que yo no dispongo, así como dividir la carga de trabajo.
Por otro lado, corro el riesgo de que mis conclusiones caigan en malas manos, o que la toma de decisiones sea más lenta al tener que esperar el feedback de expertos e incluso la aprobación final de la comunidad académica.
Análogamente, cuando se gestionan los datos cerca de los sistemas que los generan y se interactúa con la nube, se deben abordar estas consideraciones, la eterna dicotomía entre la rapidez o la coordinación en la respuesta. El procesamiento en la nube proporciona unos recursos de computación y almacenamiento flexibles que se pueden ampliar y disminuir a demanda y proporciona una perspectiva global de todo lo que está sucediendo en distintos dispositivos (coordinación).
Asimismo, permite analizar patrones en un conjunto de datos incomparablemente mayor. De este modo, grandes volúmenes de datos pueden ser analizados contando con los recursos necesarios. Sin embargo, no todo son ventajas, ya que cuando estamos procesando datos en un dispositivo y queremos realizar un procesamiento en la nube y obtener una respuesta, en determinados contextos, como sistemas críticos de mantenimiento, realidad aumentada o videojuegos, puede producirse una latencia mayor que la deseada.
Esto se debe a que desde que se mandan los datos a la nube, hasta que se procesan y vuelven, éstos pasan por varios servidores y redes, lo que implica una demora (rapidez). Además, se debe garantizar la seguridad de los datos, desde que salen de los diferentes dispositivos hasta que llegan a la nube y vuelven. Para ello, hay que considerar aspectos como anonimización, encriptación, integridad o autorización y autenticación, pudiendo englobar estas consideraciones bajo el concepto de Gobernanza del Dato.
El uso óptimo de los datos es cada vez más importante para la industria. Muchas empresas ya han reconocido este hecho y están analizando datos de máquinas y plantas en PC industriales utilizando soluciones específicas para ello. Estas soluciones requieren una alta inversión en recursos junto con actualizaciones manuales frecuentes para garantizar que el software, el sistema operativo y la ciberseguridad estén siempre asegurados y actualizados.
Un dispositivo en el borde (o en el campo de trabajo) no tiene ninguna de las características de la nube, no es elástico ni escalable, y el usuario final tiende a tener que configurarlo y administrarlo, pero su ventaja principal es que puede procesar datos y tomar decisiones simples de manera excepcionalmente rápida. Edge computing, o la computación en el borde de la red, es un paradigma que permite aglutinar todas estas soluciones y su estudio.
El objetivo final es el uso óptimo de los datos en el campo. La idea es permitir que los datos se procesen directamente y de forma segura en la máquina sin latencia, utilizando su software y un sistema central para la administración, implementación y gestión de actualizaciones.
¿Cuáles son los casos de uso principales?
Entre los números casos de uso en Edge Computing, queremos destacar tres que están siendo tendencia en el ámbito de la inteligencia artificial:
- Análisis de datos en tiempo real. Como se ha comentado anteriormente, la comunicación con la nube genera una latencia que en determinados contextos no es admisible. Por lo tanto, es recomendable el procesamiento del análisis cercano al nodo. De esta manera, se pueden tomar decisiones y actuar en base a ellas de una manera eficaz. Un ejemplo claro es el mantenimiento predictivo, con análisis en tiempo real mediante el uso de servidores perimetrales en el dominio industrial.
- Pipelines analíticos considerando Edge Computing. El concepto de pipeline analítico consiste en ejecutar varios procesos o modelos matemáticos, donde las salidas de unos son las entradas de los siguientes. Generalmente, todas las fases del pipeline se ejecutan en un entorno en la nube, sin embargo, existen números artículos que demuestran que ejecutar partes de este pipeline cerca de la generación de los datos favorece la utilización de recursos del nodo. Esto se debe a que, de esta forma, se evita el trasiego de información, mandando, por ejemplo, solo los datos requeridos a la nube, o incluso un agregado de los datos. Además, aprovechando de manera óptima nuestros recursos, se reduce la cantidad de infraestructura a contratar y gestionar en la nube.
- Aprendizaje automático federado. Tradicionalmente, los modelos matemáticos se entrenan en la nube para conseguir un gran volumen de datos de dispositivos o usuarios y, así, mejorar la calidad del modelo. En cambio, mediante este enfoque, se entrena una parte del modelo considerando características específicas del usuario o dispositivo en un entorno Edge, y a su vez, se entrena otra parte en la nube, considerando características más globales. De este modo, el modelo puede tener en cuenta características específicas de los usuarios de manera más adecuada y, además, se evita el intercambio de datos y potenciales riesgos de seguridad, ya que a la nube solo se mandarán resultados del modelo y / o datos anonimizados y no datos privados de una empresa o una persona. Un ejemplo de ello, son los algoritmos que utiliza Google en los dispositivos móviles. Para recomendarnos noticias de interés en nuestros dispositivos, utiliza un modelo matemático que tiene en cuenta la información de nuestros dispositivos móviles, como el histórico de navegación y, por otro lado, en la nube considera artículos a recomendarnos que hayan leído otras personas que puedan tener intereses similares.
¿Tiene sentido en mi dominio?
Está tecnología puede ser utilizada en números dominios, siendo prácticamente extrapolable a cualquier entorno digitalizado, pudiendo ser beneficioso en contextos tan diferentes como la agricultura, minería o la banca. Por ejemplo, en un entorno industrial, considérese una empresa con diferentes plantas y, a su vez, varias máquinas con sensores.
A nivel global, se pueden identificar en la nube patrones, que permitan decidir en qué rangos horarios es óptimo realizar mantenimientos, detener las máquinas o aumentar su velocidad. No obstante, si existe una avería en una máquina, lo ideal es identificarla lo antes posible para detener la máquina y evitar que esta se deteriore o incluso se rompa definitivamente implicando grandes gastos económicos. Para ello, tendremos que hacer uso del paradigma Edge Computing para realizar este procesamiento en los sensores de la maquina en la propia planta, minimizando la interacción con la nube lo que habilitara la latencia en tiempo real que estamos buscando
¿Cómo podemos ayudarte?
En TECNALIA dentro de la plataforma High Performance Architectures (HPA), al ser conscientes de la importancia de este paradigma, estamos trabajando, tanto en el ámbito de la investigación participando en proyectos locales, nacionales y europeos, como en proyectos con cliente final, para impulsar el uso el Edge Computing, con el fin de hacer una transferencia tecnológica a las empresas e instituciones y que, de esta manera, puedan optimizar sus procesos y su propuesta de valor.