En nuestra anterior (y extensa) entrada en este blog hablamos sobre el sector agrícola y destacamos los siguientes problemas de las soluciones de Cloud Computing:
- Hardware ya adquirido para sensorizar del que estamos desaprovechando sus inherentes capacidades de computación y/o almacenamiento (sensores, e infraestructura como hubs y routers para comunicar los sensores y actuadores principalmente).
- Pérdida de privacidad, pues al almacenar los datos en servidores externos podemos incluso tener problemas al no cumplir la legislación vigente sobre protección de datos, que si bien no afectarían al cultivo, si podrían tener connotaciones legales cuando almacenamos información de trabajadores p.ej., para geolocalizarles para evitar accidentes con medios autónomos dentro de la explotación o para medir sus constantes vitales para ver si les ha ocurrido algo mientras realizan labores manuales, muchas veces en condiciones de calor.
- Pérdida de control sobre los datos, en la que al usar medios hardware de terceros, estos conllevan el procesamiento y almacenamiento en su propia infraestructura y nos deja sin acceso a los datos históricos cuando dejamos de usar su hardware, etc. Esto crea dependencias en el tiempo que son importantes tener en cuenta.
- Pérdida de ajustes sobre la QoS, incluida la seguridad que ya hemos discutido, pero también de aumento de la latencia. Este parámetro de calidad de servicio es muy relevante en aplicaciones donde que la comunicación no se retrase es crítico. Si bien esto no es relevante para muchos cultivos, si lo es en los medios usados para el mantenimiento de estos, que pueden incluir sistemas de conducción autónoma, entre otros.
- Aumento de coste a largo plazo, siendo este uno de los problemas que el sector agrícola se va a encontrar tras las primeras prospecciones en la sensorización. Esto es algo que la industria agrícola ya ha vivido, pero que en los entornos que todavía no han alcanzado este nivel tecnológico está todavía por llegar. Esto tiene mucho que ver con la solución proporcionada con StoreOnMe, donde ya realizamos un estudio que puede verse publicado en https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=8819993 . En este estudio se observa el claro aumento de precio en el tiempo que conlleva el uso de infraestructuras Cloud, pues día a día tenemos que pagar no solo por el consumo de transferencia de datos y almacenamiento del día actual, sino también por todos los datos que tenemos almacenados en sus servicios de día anteriores.
- Aumento de consumo energético (comunicaciones, procesadores…) que, dada la situación mundial actual, sería deseable disminuir. En este sentido, se ha estudiado que las comunicaciones en IoT con computación en la nube requieren aproximadamente 18 saltos de media en comunicaciones intercontinentales para llegar desde el productor de datos hasta un destino. Esto aumenta la latencia, como ya hemos comentado, pero además es necesario que todos esos sistemas por los que se encaminan las comunicaciones estén conectados, por lo que consumen energía continuamente. Además, al llegar al destino, el sistema de computación usado para el procesamiento y/o almacenamiento suele ser un servidor de grandes prestaciones, que requiere refrigeración especial y todo ello aumenta el consumo energético total del sistema.
En esta entrada, veremos como la aplicación de soluciones en las capas de Fog y Edge (Fog y Edge Computing) pueden ayudar a solventar algunos de estos problemas, aunque también introducirán otros nuevos que iremos viendo cómo se podrían solucionar. Lógicamente, lo bien que se apliquen estas soluciones tiene que ver mucho con las empresas que implementen estas soluciones, su grado de optimización y madurez, pero también de innovación, sobre todo al hablar de Edge Computing.
Como ya nos pasaba cuando hablábamos en la anterior entrada sobre el sector agrícola en general y sectores íntimamente relacionados y el uso de Cloud Computing, lo que reflejamos aquí no cubre el 100% de los casos, debido a que las situaciones son realmente muy diversas. Nosotros aquí intentamos reflejar las ventajas e inconvenientes más habituales y genéricos al introducir este tipo de capas de procesamiento y almacenamiento de información como parte de nuestra solución.
Muchos definirían Fog Computing como una vuelta a los orígenes, cuando los servidores (infraestructura) no eran mantenidos por terceros, sino por la propia empresa, en sus propias instalaciones. La realidad es que el Fog Computing actual dista en ciertos aspectos de aquellos antiguos servidores que se manejaban con FTP,… con acceso a servidores físicos. Actualmente, una gran parte de los servidores en Fog Computing, al menos en las empresas que están al día en estas tecnologías, son una “réplica” en cuanto a servicios de los que existen en las grandes infraestructuras de terceros como Amazon o Google por citar los dos más usados hoy día. Esto quiere decir que usan virtualización, que no solo facilita el despliegue en múltiples servidores de manera común y su mantenimiento una vez perfectamente configurado, sino que añade nuevas capas de seguridad para evitar accesos indebidos entre el personal de la empresa a datos de otros departamentos, etc. Al fin y al cabo, una de las mayores brechas de seguridad proviene de los propios empleados de las empresas. Es habitual en estos entornos hoy día encontrar diferentes máquinas virtuales corriendo en paralelo, usando tecnologías como VMware o VirtualBox entre otras.
Pero la compartimentación no termina con las máquinas virtuales y existen diferentes alternativas tecnológicas como Docker o Kubernetes que permiten el encapsulado de sistemas software mediante el concepto de contenedores y facilitan la instalación, mantenimiento y migración entre diferentes localizaciones. Muchas tecnologías tradicionalmente usadas en Cloud Computing han ido pasando a ser de código abierto (open source) y el aumento en el uso de esta capa ha llevado a la creación de otros muchos proyectos software relacionados, acompañados de un aumento de capacidades computacionales y de almacenamiento, así como de una reducción de costes de los servidores.
PRINCIPALES VENTAJAS QUE CONLLEVA EL USO DE FOG COMPUTING
La incorporación de servidores propios como parte de la infraestructura conlleva una serie de ventajas sobre los sistemas cloud vistos. En concreto:
- Mejora la privacidad, pues al almacenar los datos en servidores propios de la empresa, es más sencillo asegurar cumplir con la legislación vigente sobre protección de datos, especialmente los referentes a información de personas en diferentes sectores relacionada¡os con la agricultura, principalmente trabajadores, pero también información de proveedores, etc.
- Aumento de control sobre los datos, pues no requieren ser transmitidos fuera de la empresa para su procesamiento ni para su almacenamiento, pues ahora se puede usar la propia infraestructura empresarial. Es habitual que cada vez más empresas que proporcionan hardware (p.ej., sensores para agricultura o maquinaria como tractores o recolectores) no se limiten a vender ese hardware, sino que ese hardware requiera ciertos servicios remotos (p.ej., almacenamiento remoto en los servidores del vendedor). Tendiendo a un modelo de negocio orientado a proveer servicios más que a procurar productos. Esos datos serán importantes en el futuro próximo para los agricultores y empresas relacionadas, para poder estudiar por ejemplo el comportamiento ante herbicidas, disminuciones de riego, etc. Estos datos serán necesarios, por lo que sería recomendable adquirir únicamente sensorización y maquinaria que permita el control sobre los datos que podamos almacenar como propios.
- Mayor control sobre los ajustes sobre la QoS, incluida la seguridad que ya hemos discutido, pero también de aumento de la latencia, ancho de banda… La empresa ya no está limitada por las opciones de almacenamiento (por ejemplo, número de réplicas en almacenamiento distribuido), procesamiento (por ejemplo, computación a tiempo real) y comunicación, como soporte a los dos recursos/servicios anteriores. Este parámetro de calidad de servicio es muy relevante en aplicaciones donde es crítico que la comunicación no se retrase. Si bien esto no es relevante para muchos cultivos, si lo es en los medios usados para el mantenimiento de estos, que pueden incluir sistemas de conducción autónoma, entre otros. Sin embargo, el procesamiento y almacenamiento de datos todavía suele estar geográficamente distante del elemento generador de datos (p.ej., sensores en las explotaciones, industria o maquinaria).
Sin embargo, no todo son ventajas y algunos problemas persisten y otros nuevos aparecen. Los problemas principales que persisten son:
- Seguimos teniendo hardware ya adquirido para sensorizar del que estamos desaprovechando sus inherentes capacidades de computación y/o almacenamiento (sensores, e infraestructura como hubs y routers para comunicar los sensores y actuadores principalmente).
- Aumento de consumo energético (comunicaciones, procesadores…) que tanto por costes como por respeto al planeta es deseable disminuir. Pese a que Fog Computing disminuye el consumo de todo el hardware intermedio requerido por las conexiones remotas, pues desaparece, el sistema de computación usado para el procesamiento y/o almacenamiento suele ser un servidor de grandes prestaciones y requiere refrigeración especial, aumenta este consumo. Además, para poder disponer de las mismas prestaciones que existen en Cloud Computing, como escalabilidad o almacenamiento distribuido por seguridad ante fallos, el número de servidores que hay que adquirir aumenta, con lo que el consumo aumenta también progresivamente en base a las necesidades a cubrir. Por otro lado, estos sistemas pueden estar en desuso parte del tiempo, lo que conlleva que están consumiendo sin proporcionar servicio.
- Por último, destacamos que el aumento de costes a medio plazo disminuye, ya que no tenemos facturas mensuales cada vez más abultadas por pagar. Se cobra no solo por el consumo de transferencia de datos y almacenamiento del día actual, sino también por todos los datos que tenemos almacenados del pasado a modo de histórico. A medio plazo, dependiendo de los datos y necesidades de procesamiento requeridos, este coste disminuye, especialmente cuando se ha completado la amortización de los servidores e infraestructura de red necesaria y su instalación inicial.
Pero surgen nuevas desventajas que no existían antes
- Aumento de coste a corto plazo, derivado de la necesidad de adquirir servidores, balanceadores de carga, infraestructura de red… para el control y/o almacenamiento de datos de la explotación o de la industria agrícola o para el procesamiento de datos provenientes de la maquinaria agrícola. A corto plazo es necesario el despliegue físico de los sistemas, lo que requiere personal especializado. A largo plazo esta infraestructura requiere renovaciones, lo que hará que se produzca un valle de costes a medio plazo, pero que según la infraestructura vaya envejeciendo se haga necesario ir renovándola, así como adaptándola a las nuevas necesidades de procesamiento y almacenamiento, teniendo en cuenta que cada vez necesitaremos almacenar y procesar más datos debido al almacenamiento de datos históricos.