En mi artículo anterior sobre la hoja de ruta hacia la transformación digital, presentamos el Modelo de Madurez de la Ciencia de Datos como una herramienta simple que evalúa cómo un equipo de ciencia de datos puede generar valor para su organización. Este modelo se basa en el concepto de niveles o etapas que atraviesa la organización a medida que madura en la gestión de datos.
Comprender dónde se encuentra la organización dentro de este modelo de madurez es crucial, por lo que definirá la estrategia para pasar a la siguiente etapa de la transformación digital.
Más allá de la transformación digital
Muchas organizaciones parecen centrarse excesivamente en el lado del análisis gráfico de los datos para comprender mejor qué tipo de procesos y habilidades de análisis son necesarias en función del estado general de la organización. Un elemento crítico a tener en cuenta en la Transformación Digital es que no se trata únicamente de habilidades y tecnología, sino que también requiere un cambio cultural.
Sin embargo, no podemos ignorar que los datos, que son el producto básico de la transformación digital, deben obtenerse, almacenarse, transformarse, organizarse y tratarse para su análisis, independientemente del estado de madurez de la empresa y sus profesionales. Esto se conoce como ciclo de ‘Administración de arquitectura de datos’. La gestión de datos exitosa requiere una arquitectura administrada y de un tamaño adecuado para el almacenamiento de datos.
Arquitectura de datos
Según Wikipedia, la arquitectura de datos es el conjunto de modelos, políticas, reglas y estándares que rigen qué datos se recopilan y cómo se almacenan, organizan, integran y utilizan en los sistemas de datos de las organizaciones.
La arquitectura de datos está determinada por la tecnología disponible, las restricciones financieras y presupuestarias y la madurez de la organización. Hace unos 15 o 20 años atrás, la arquitectura de datos se concentraba en sistemas monolíticos donde los datos se almacenaban en silos de datos; desde hojas de cálculo hasta bases de datos simples.
Esos sistemas monolíticos han estado funcionando bien, simplemente porque la tasa de crecimiento de los datos generados y almacenados era muy lineal y de alguna manera podía anticiparse. Por ello, también era posible anticipar todo tipo de recursos técnicos, financieros y humanos para su gestión. Sin embargo, las cosas cambiaron drásticamente desde principios de 2010.
La explosión del Big Data trajo un nuevo paradigma a la arquitectura de datos, que sintetizamos en las denominadas ‘Las 3 V’: Volumen, Velocidad y Variedad. El volumen de datos generados que debe almacenarse, la velocidad con la que se generan esos datos y la variedad de fuentes de datos obligaron al ingenio humano a mejorar y crear nuevas formas de diseñar arquitecturas de almacenamiento mas escalable, flexible y dinámica, así como mejorar la gobernanza de esos datos. Bienvenido a la arquitectura de datos moderna.
Arquitectura de datos moderna
La arquitectura de datos solía ocurrir dentro de las instalaciones de la organización, en almacenamiento local, centros de datos y equipos similares propiedad de la organización. La arquitectura de datos moderna ahora sucede dentro del entorno de la nube.
La arquitectura de datos moderna hoy en día debe abordar los siguientes requisitos:
- Datos compartibles
- Alta accesibilidad
- Infraestructura flexible
- Gobernanza fuerte en el lugar
Estos no son requisitos nuevos, seguro, pero el contexto actual es muy diferente al que solía ser hasta hace 1 década.
Contextualización de datos modernos
La forma en que entendemos y definimos los “datos compartibles” en la actualidad no es la misma que en el pasado. Ahora todos los profesionales necesitan contextualizar sus propios datos con otros datos no generados por el propio usuario o la organización. Es decir, un proceso que requiere acceso a otros ‘silos de datos’ de otros departamentos o incluso datos generados fuera de la organización o empresa (datos meteorológicos, infraestructura, etc). Esa recontextualización de los datos ha transformado los data warehouses en un componente -no en ‘el componente’- de los repositorios de datos. Un cambio que se ha traducido en la creación de lagos de datos -o data lakes-.
Brindar contexto procesable a los datos locales que interactúan con otras fuentes requiere un acceso confiable y rápido a todos los datos, tanto internos como externos. Un requisito que se vuelve más importante cuando el análisis en tiempo real se convierte en parte de la ecuación. Por lo tanto, la disponibilidad de datos, de todos los datos, deben ser muy alta. Esta alta disponibilidad involucra muchos aspectos técnicos como la redundancia, la velocidad de transmisión y muchos otros aspectos de seguridad.
Adicionalmente, los datos crecen a un ritmo alto, pero no siguen un patrón uniforme. No todas las fuentes de datos crecen al mismo ritmo y algunas incluso reducen su tamaño o dejan de crecer. Las arquitecturas monolíticas de la generación anterior tenían un alto costo de mantenimiento e infraestructura. La arquitectura moderna aborda esos escenarios volátiles al aprovechar la infraestructura que es altamente flexible y adaptable para usar la infraestructura para hacer frente al tamaño creciente de cada fuente.
La gobernanza y la seguridad dentro de este tumultuoso entorno son extremadamente importantes. Con un enfoque de infraestructura tradicional se ha centrado principalmente en el control de acceso de los usuarios y otros aspectos de seguridad como la redundancia. Hoy en día, además de estos controles de seguridad internos, las organizaciones de cualquier tipo y tamaño se enfrentan a desafíos externos cada vez mayores.
Tipos de nubes en la arquitectura de datos moderna
Profundicemos sobre los tipos de nubes (arquitectura de datos moderna) y cuándo usarlas
‘Nube’ es una palabra de moda que hoy en día ha sido normalizada y adoptada por el público. Sí, todos tenemos una idea de lo que es ‘la nube’ e interactuamos con las aplicaciones en la nube todo el tiempo en la mayoría de nuestros dispositivos inteligentes -por lo menos-, en nuestras computadoras personales y otras infraestructuras.
Sin embargo, ¿sabemos qué es la computación en la nube? ¿Cuáles son los diferentes tipos de computación en la nube y cuándo usarlos? Hagamos un resumen sobre esto con un lenguaje muy sencillo, sus características principales y cuándo usar cada tipo. Estos son los 3 tipos principales de nubes.
Nube pública
Los servicios informáticos se ofrecen por un proveedor externo a través de Internet. Una nube pública puede ofrecer algunos servicios o almacenamiento de forma gratuita o bajo demanda, lo que permite a los clientes pagar solo por el uso de CPU, almacenamiento de datos, aplicaciones y software o ancho de banda consumido. Gracias a este modelo, no es necesario realizar ninguna inversión inicial ni asumir ningún costo de propiedad.
Una pequeña aclaración aquí, ‘público’ no significa que todos puedan acceder a sus datos, significa que la infraestructura está disponible para ser compartida con muchos clientes. Similar en concepto a una propiedad inmobiliaria de tiempo compartido, donde el propietario del inmueble alquila el uso de sus propiedades a varios clientes. El propietario del inmueble es responsable del mantenimiento, impuestos, etc; el mismo concepto se aplica a una nube pública. Las nubes públicas son entornos seguros.
Nube privada
Una nube privada se puede definir fácilmente como una nube que ocurre dentro de las propias instalaciones de la organización o dentro de las instalaciones de terceros. Sin embargo, si está en instalaciones de terceros, será una infraestructura dedicada, no disponible para el público. Entonces, la nube privada brinda los beneficios de la nube pública, pero en un entorno privado o propietario.
Nube híbrida
Como sugiere el nombre, una nube híbrida combina un centro de datos local, o una nube privada, con una nube pública. Algunas partes de los datos y las aplicaciones se alojan en entornos propietarios o privados y otras partes de los datos y las aplicaciones se alojan en un dominio público, y tanto los datos como las aplicaciones se pueden compartir entre entornos.
Existe una variación de la nube híbrida llamada ‘nube múltiple’, donde diferentes nubes públicas convergen con nubes privadas. Algunas organizaciones utilizan esta configuración para separar entornos, aplicaciones o funciones.
Cuándo usar cada tipo de nube
Las nubes públicas son una excelente opción para ahorrar inversión en la compra, administración y mantenimiento de la infraestructura de aplicaciones y hardware. Las nubes públicas también se pueden implementar de forma instantánea, y es capaz de escalar hacia arriba o hacia abajo según las necesidades del usuario. Además, como entorno común para la organización, todos los usuarios utilizan las mismas aplicaciones, la misma versión para cada aplicación/software, los mismos datos -lo que facilita una única fuente de verdad- y con la configuración adecuada, es más robusto en términos de ciberseguridad, ataques de ransomware, detección de intrusos o incluso fuga de datos.
Por el contrario, configurar el conjunto correcto de funciones para una nube pública puede ser tedioso, según las necesidades del cliente y el perfil del proveedor de la nube. Además, el cliente debe examinar detenidamente el alcance de los servicios, las características de seguridad y las ofertas de servicios del proveedor. Por lo general, cada servicio o característica implica una tarifa o costo.
Las nubes privadas brindan una capa adicional de privacidad a través de los firewalls de la empresa y el alojamiento interno para garantizar que las operaciones y los datos confidenciales no sean accesibles por proveedores externos. Por lo tanto, en entornos que operan con datos sensibles, se puede recomendar esta configuración.
Sin embargo, una nube privada requiere un equipo de TI dedicado para mantener, actualizar y configurar toda la infraestructura de acuerdo con las necesidades comerciales. Además, la falta de flexibilidad de una nube privada o un entorno local puede agregar una carga financiera y operativa a la organización.
Las nubes híbridas son una excelente solución para organizaciones maduras donde pueden usar datos confidenciales y / o sensibles en nubes privadas o entornos locales y datos operativos en nubes públicas, optimizando la infraestructura y reaccionando rápidamente a los cambios potenciales.
Por otro lado, tener entornos separados puede causar ineficiencias operativas debido a actualizaciones asíncronas, diferentes versiones de las mismas aplicaciones y software y, en ocasiones, incluso incompatibilidades.