Hablar hoy de Big Data puede resultar un poco “viciado”, dado que el término se ha manipulado a tal punto que, incluso el tradicional mundo de bases de datos transaccionales, hoy es considerado por algunos como “Big Data”.
La verdad, es que no pasa sólo por grandes volúmenes de datos, sino que, además, por información muy variada y generada a diferentes “velocidades”. De ahí que se habla de las “3 V’s del Big Data”: Volumen, Velocidad y Variedad:
Variedad: puede ser por ejemplo la mezcla de datos estructurados (como datos ordenados en filas y columnas en una planilla Excel), con datos no-estructurados (como millones de tweets con texto libre, modismos, abreviaciones, hashtags e imágenes), que cuesta mucho “cruzar” para interpretar correctamente.
Velocidad: se refiere a “cuando” se genera el dato o en qué lapso de tiempo es útil. Por ejemplo, una detección de fraude de tarjetas de crédito, es mucho más útil en tiempo real que 3 meses después; por otro lado, una consulta a una base de datos para determinar el nivel de riesgo de un cliente en un banco, necesita generarse con la mayor cantidad de historia posible, generada hace varios años.
Volumen: Finalmente: ¿para qué sirve Big Data? Para sacar provecho a toda la información que hay disponible. Ejemplo de ello, es que mientras más datos de delincuencia tengan en una comuna, mejor será su plan de seguridad. Mientras más sepa lo que piensa la gente de un producto o servicio, mejor puedo atender a mis clientes o más eficaz puedo ser generando demanda.
Hasta ahí, todos concuerdan más o menos en lo que es Big Data, los desafíos que esto representa y las oportunidades que hay disponibles, pero ¿todas las empresas pueden implementar sistemas de Big Data?
Se sabe que con las 3 V’s también vienen costos muy elevados en adquisición de hardware, software y también en contar con expertos que puedan crear y operar estos sistemas, dado que se necesita “crecer y cambiar” en muchos aspectos. Es aquí donde el Cloud Computing llegó para convertirse en una herramienta muy útil para implementar estas modernas plataformas, en todo tipo de empresas.
Primero: el Cloud permite consumir servicios en modalidad “on-demand” sin tener que realizar una inversión inicial.
Segundo: permite “dejar de reinventar la rueda”, dado que tecnologías avanzadas hoy son ofrecidas como servicio y por lo tanto una empresa puede ahorrarse el tiempo y costo de desarrollo asociado.
Tercero: puedo crecer casi hasta el infinito. Si soy un retailer y de un mes para otro, mi sitio web con tecnología de Big Data multiplica por 1000 su demanda dado que comencé a ofrecer un producto muy atractivo, el Cloud permite que pueda crecer en recursos de cómputo, almacenamiento y ancho de banda en línea con la demanda y así evitar problemas en mi sitio.
En concreto, el Cloud o la Nube, es lo que ofrece Microsoft con Azure: en esta plataforma se conjuganmuchas alternativas de Big Data a cualquier tipo de empresa, sin importar su tamaño, ubicación o preferencia tecnológica:
- Bases de datos tradicionales. Esto es conocido por todos. Las clásicas bases de datos SQL Server, Oracle, MySQL, HANA, DB2 y más. Todas estas se pueden montar sobre una máquina virtual y el sistema operativo de preferencia,para luego hacerlas escalar cuando sea necesario. Más información de esas máquinas virtuales con bases de datos, las puedes encontrar acá.
- Base de datos “como servicio”. Azure SQL Database permite “consumir” una base de datos sin preocuparse de la instalación y configuración del sistema operativo o el motor de datos. Lo único que uno debe hacer, es pedir una base de datos con cierto tamaño, rendimiento mínimo requerido y luego cargo mis datos. Todos los problemas administrativos, son responsabilidad de un tercero (Microsoft en este caso) y así, yo sólo me preocupo de que mis datos estén bien cargados.
- Bases no-relacionales: Almacenar información no-estructurada, requiere de un repositorio muy distinto a nivel tecnológico. Esta problemática, hace algunos años, ha sido resuelta por plataformas como Hadoop o las bases de datos “No-SQL”. Esto permite almacenar datos de todo tipo, cargándolos en modo “batch” o en tiempo real o ambos, para luego organizarlos y “consumirlos” oportunamente. A modo de ejemplo, en Microsoft Azure, se puede crear una granja de servidores con Hadoop en 12 minutos mediante el servicio HDInsight. Además de Hadoop sobre Windows Server o Linux, existe soporte a ambientes No-SQL sobre MongoDB y otros. Incluso hoy es posible usar estos motores para almacenar y buscar documentos con AzureDocumentDB.
- “Search” as a service: ¿Te gustaría que tu sitio público o privado tenga un motor de búsqueda, que puedas personalizar o, simplemente,no”reinventar la rueda” con algo que ya existe? AzureSearch pone a disposición de todas las empresas un motor de búsqueda basado en tecnología No-SQL, para este propósito.
- Procesamiento en tiempo real: AzureStreamAnalytics permite procesar millones de eventos por segundo para analizarlos, correlacionarlos,monitorearlos y gatillar alguna acción automatizada en el momento que se detecta. Algunos ejemplos de ello, pueden ser detección de fraudes en línea u ofertas inteligentes en sitios de e-commerce.
- Almacenamiento híbrido: Algunas empresas todavía necesitan tener datos “locales” y no en un datacenter fuera de su país, pero a su vez,quieren aprovechar, parcialmente, los beneficios del Cloud. Para ello, Microsoft ofrece una solución híbrida de almacenamiento, que permite escalar hasta los Petabytes de información, llamado StorSimple. Esto permite que se instale un appliance con discos locales y que a su vez se conecte con la nube, cuando los discos locales se llenen. Además, permite que todo lo que se grabe en el appliance local, se respalde en la nube y que la restauración de esos datos, en caso de algún problema, se haga 100% en la nube desde cualquier parte del mundo.
- Análisis predictivo: Una de las formas más avanzadas de generar inteligencia a partir de los datos, es mediante técnicas de análisis predictivo o estadístico. Hace muchos años que existen soluciones en el mercado para este tipo de problemáticas, pero sus elevados costos y complejidad en la implementación, han hecho prohibitiva su masificación. Para que todo esto esté el alcance de todo tipo de empresas, Microsoft ha creado Azure Machine Learning, un motor de Analytics avanzado con más de 200 algoritmos y una plataforma con soporte al lenguaje R, para extender sus alcances a cualquier tipo de problemática.
Todo esto, demuestra la diversidad de alternativas que hay disponibles para abordar “Big Data” en el mercado. Lo más relevante es que, con más o menos entrenamiento, las opciones están disponibles al alcance de todos, partiendo por una prueba gratis de Microsoft Azure de 30 días, para luego llegar a pagar sólo por lo que se usa, gracias al Cloud Computing.