La gestión de datos empresariales ha sido históricamente como esa persona que conserva cuidadosamente los recibos de la compra al llegar a casa para que su sistema de seguimiento y archivo del presupuesto se mantenga activo. Del mismo modo, el comerciante en línea puede que sólo almacene un registro de los artículos finales comprados. Los datos estructurados y las bases de datos relacionales están diseñados para soportar exactamente estos casos de uso. Diseñamos el esquema de datos por adelantado para el caso de negocio actual, curamos y validamos los datos entrantes y almacenamos la información de forma coherente con nuestro diseño maestro.
En mi artículo anterior Pensar diferente sobre los datosanalizábamos el potencial de los datos para acelerar el crecimiento de su empresa. A medida que tanto las pequeñas como las grandes empresas cambian a datos a gran escala procedentes de fuentes dispares, el diseño por adelantado de un esquema de datos no es ni práctico ni deseable. Como si guardáramos los recibos de la compra en un montón para utilizarlos más tarde, queremos capturar datos ahora sin conocer todos los casos de uso, los requisitos de elaboración de informes o el mejor modelo relacional para esos datos.
En este artículo, analizaremos los conceptos de gestión y procesamiento de datos para profundizar en el conocimiento de los mismos.
Ingesta de datos
El término "datos no estructurados" es muy utilizado, aunque creo que no capta realmente el matiz de cómo está evolucionando el almacenamiento de datos. Datos desestructurados no significa un revoltijo de caracteres incomprensibles. Cada dato tiene una estructura. El flujo de datos de un sistema fuente o dispositivo IoT proporcionará datos con un formato coherente a lo largo del tiempo. Un término mejor podría ser "datos no interpretados" porque deja claro que no estamos interpretando ni transformando los datos antes de almacenarlos, y deja abierta la cuestión del nivel de estructura de los datos. Los datos entrantes se ajustarán al esquema inherente al sistema de origen. Sin embargo, no imponemos un esquema de destino o almacenamiento.
Pensemos en una pila de recibos de tienda. Tendrán formatos y disposiciones de texto diferentes, aunque contengan fundamentalmente la misma información sobre artículos, precios y formas de pago. El almacenamiento estructurado tradicional llevaría a un diseño en el que cada recibo se analiza y los datos individuales se almacenan en una base de datos relacional. Los metadatos de compra, como la hora de compra, el nombre del dependiente y la ubicación de la tienda, se descartarían. Para asegurarse de que puede aprovechar el valor potencial de los datos, debe almacenarlos en su forma original para evitar suposiciones sobre qué subconjunto de datos puede ser valioso o no.
Junto con los datos en sí, almacenar metadatos es importante para proporcionar un contexto más amplio a futuros usuarios. Los metadatos pueden incluir la fecha de recepción de la información, los identificadores del sistema de origen y el esquema de los datos recibidos. Estos metadatos proporcionarán la información necesaria para interpretar correctamente los datos cuando llegue el momento de procesarlos.
Conceptos de almacenamiento
Big Data es un término muy utilizado, pero no existe una definición clara de lo que se considera "grande". Para algunas organizaciones, unos pocos terabytes de datos pueden representar un aumento significativo de sus necesidades históricas de almacenamiento. Otras empresas reparten petabytes de almacenamiento a sus desarrolladores como si fueran caramelos en Halloween. El concepto de Big Data tiene menos que ver con el tamaño de los datos en sí, y más con el tipo de datos y cómo se almacenan. La planificación de la ingestión de datos debe centrarse en la selección de una solución escalable a sus necesidades previstas para varios años.
Aunque la mayoría de los motores de bases de datos y modelos relacionales tradicionales pueden escalar para organizaciones más pequeñas, alcanzan rápidamente su límite debido al motor de base de datos centralizado y a la necesidad de organizar e indexar los datos de forma estructurada. El almacenamiento subyacente puede soportar un crecimiento significativo, pero la tasa de ingestión y procesamiento es limitada.
Un almacén de datos es un enfoque popular para curar los datos para una base de usuarios más amplia con un caso de negocio específico en mente. Estos datos estructurados y curados son accesibles a muchos usuarios y fácilmente consumidos por las herramientas existentes para necesidades específicas de información. No está pensado para satisfacer necesidades futuras de forma flexible. La implantación de un almacén de datos conlleva unos elevados costes iniciales, con unos patrones de uso poco claros o potencialmente desalineados con las necesidades de los usuarios.
Aquí es donde entran en juego los lagos de datos. La escalabilidad de este almacenamiento puede considerarse casi ilimitada para la mayoría de las organizaciones. Los datos se almacenan en fragmentos más pequeños, similares a los archivos de un disco duro. Al no estar limitado por un motor de procesamiento centralizado o la actualización de un índice, el almacenamiento de nuevos datos conlleva muy poca sobrecarga. Los datos en sí pueden ser JSON, búferes de protocolo, documentos PDF o cualquier otro formato conveniente.
El procesamiento de los datos, es decir, la lectura de cada uno de los datos del lago, puede realizarse mediante algoritmos paralelos, ya que los propios datos están distribuidos en una amplia matriz de almacenamiento en el backend del lago de datos. Este paradigma de procesamiento de datos aplaza la compleja tarea de curación e interpretación hasta el momento en que exista una necesidad empresarial específica y clara, preservando al mismo tiempo una gran cantidad de datos valiosos.
Romper los silos
En nuestro ejemplo de un comerciante en línea, debe haber registros del servidor para que un desarrollador de software pueda solucionar problemas. Es probable que estos registros se roten cada pocos días y se almacenen en un formato basado en texto que no está pensado para soportar consultas complejas. ¿Qué pasaría si transmitiéramos estos registros a un lago de datos, almacenando un evento por cada vista de página o solicitud de usuario?
El sitio explícito incluye eventos con fecha y hora sobre productos vistos, productos añadidos a la cesta del comprador, productos retirados y transacciones completadas.
Los implícitos implícitos representan patrones de compra. Los datos agregados de todos los productos y transacciones pueden responder a preguntas como cuánto tiempo pasa un comprador en el sitio de comercio electrónico, la rotación en un carrito antes de que se complete una transacción, los productos similares que se comparan antes de la compra y las compras de productos correlacionados.
El silo de los registros del servidor se ha abierto para ofrecer valor empresarial. A partir de aquí, podemos seguir rompiendo los silos del negocio. La información sobre logística y entregas puede añadirse al lago de datos. También podría incorporarse información sobre la preparación de pedidos y el embalaje.
Desbloquee sus datos
Es esencial establecer una estrategia para la ingesta, el almacenamiento y el procesamiento de datos. Hay que centrarse en flexibilidad para soportar futuros casos de uso, y escalabilidad en los próximos años, a medida que aumenten los volúmenes de datos. No es necesaria una única plataforma común de almacenamiento, ni tampoco un esquema de datos bien definido que abarque todos los datos.
Almacene los datos en el formato más sencillo y lo más parecido posible a su formato original. A medida que desarrolle nuevos casos de uso empresarial para interpretar los datos, esos requisitos impulsarán y justificarán la inversión adicional en la construcción del canal de procesamiento de datos. La elaboración de informes y el análisis de datos que requieren datos estructurados se pueden habilitar cuando sea necesario conservando el subconjunto necesario de datos del lago y almacenándolos en un formato o base de datos adecuados.
Implementar la curación y el análisis de datos cuando se sabe que tienen valor para el negocio garantiza que el esfuerzo se invierte sólo cuando y donde es necesario. A medida que surjan casos de uso comunes, podrá encontrar eficiencias al compartir formatos intermedios semiestructurados y valores derivados. Siga un planteamiento ágil, aplazando las decisiones que no sea necesario tomar ahora.
Las empresas con más éxito aprovechan sus datos. Hacer crecer estratégicamente su negocio y diferenciarse significa liberar el potencial de su información latente. Póngase en contacto a nuestro equipo de Improving para asesoramiento estratégico y ejecución de proyectos.