Revisión de Qubole: análisis de macrodatos de autoservicio

Facturada como una plataforma de datos nativa de la nube para análisis, inteligencia artificial y aprendizaje automático, Qubole ofrece soluciones para la participación del cliente, la transformación digital, productos basados ​​en datos, marketing digital, modernización e inteligencia de seguridad. Reclama una rápida obtención de valor, soporte multinube, productividad del administrador 10 veces mayor, una proporción de operador a usuario de 1: 200 y menores costos de nube.

Lo que Qubole realmente hace, basado en mi breve experiencia con la plataforma, es integrar una serie de herramientas de código abierto y algunas herramientas propietarias, para crear una experiencia de big data de autoservicio basada en la nube para analistas de datos e ingenieros de datos. y científicos de datos.

Qubole lo lleva desde ETL a través del análisis de datos exploratorios y la construcción de modelos hasta la implementación de modelos a escala de producción. En el camino, automatiza una serie de operaciones en la nube, como el aprovisionamiento y el escalado de recursos, que de otro modo pueden requerir una cantidad significativa de tiempo de administrador. No está claro si esa automatización realmente permitirá un aumento de 10 veces en la productividad del administrador o una proporción de operador a usuario de 1: 200 para cualquier empresa o caso de uso específico.

Qubole tiende a insistir en el concepto de "datos activos". Básicamente, la mayoría de los lagos de datos, que son esencialmente almacenes de archivos llenos de datos de muchas fuentes, todos en un solo lugar pero no en una base de datos, tienen un porcentaje bajo de datos que se utilizan activamente para el análisis. Qubole estima que la mayoría de los lagos de datos están activos en un 10% y inactivos en un 90%, y predice que puede revertir esa proporción.

Los competidores de Qubole incluyen Databricks, AWS y Cloudera. Hay una serie de otros productos que solo compiten con algunas de las funciones de Qubole.

Databricks crea cuadernos, paneles y trabajos sobre un administrador de clústeres y Spark; Lo encontré como una plataforma útil para los científicos de datos cuando lo revisé en 2016. Databricks recientemente abrió su producto Delta Lake, que proporciona transacciones ACID, manejo de metadatos escalable y transmisión unificada y procesamiento de datos por lotes a los lagos de datos para hacerlos más confiables. y ayudarles a alimentar el análisis de Spark.

AWS tiene una amplia gama de productos de datos y, de hecho, Qubole admite la integración con muchos de ellos. Cloudera, que ahora incluye Hortonworks, proporciona almacenamiento de datos y servicios de aprendizaje automático, así como un servicio de centro de datos. Qubole afirma que tanto Databricks como Cloudera carecen de gobernanza financiera, pero puede implementar la gobernanza usted mismo en el nivel de una sola nube o mediante el uso de un producto de gestión de varias nubes.

Cómo funciona Qubole

Qubole integra todas sus herramientas en un entorno basado en la nube y en un navegador. Discutiré las partes del medio ambiente en la siguiente sección de este artículo; en esta sección me concentraré en las herramientas.

Qubole logra el control de costos como parte de la gestión de su clúster. Puede especificar que los clústeres utilicen una combinación específica de tipos de instancias, incluidas las instancias puntuales cuando estén disponibles, y la cantidad mínima y máxima de nodos para el ajuste de escala automático. También puede especificar la cantidad de tiempo que cualquier clúster continuará ejecutándose en ausencia de carga, para evitar instancias "zombies".

Chispa - chispear

En su artículo de agosto, "Cómo Qubole aborda los desafíos de Apache Spark", el director ejecutivo de Qubole, Ashish Thusoo, analiza los beneficios y las dificultades de Spark y cómo Qubole soluciona dificultades como la configuración, el rendimiento, los costos y la administración de recursos. Spark es un componente clave de Qubole para los científicos de datos, lo que permite una transformación de datos y un aprendizaje automático fáciles y rápidos.

Presto

Presto es un motor de consultas SQL distribuido de código abierto para ejecutar consultas analíticas interactivas contra fuentes de datos de todos los tamaños, desde gigabytes hasta petabytes. Las consultas de Presto se ejecutan mucho más rápido que las consultas de Hive. Al mismo tiempo, Presto puede ver y usar metadatos y esquemas de datos de Hive.

Colmena

Apache Hive es un proyecto de código abierto popular en el ecosistema Hadoop que facilita la lectura, escritura y administración de grandes conjuntos de datos que residen en el almacenamiento distribuido mediante SQL. La estructura se puede proyectar sobre los datos que ya están almacenados. La ejecución de consultas de Hive se ejecuta a través de Apache Tez, Apache Spark o MapReduce. Hive en Qubole puede realizar escrituras directas y escalado automático consciente de la carga de trabajo; Hive de código abierto carece de estas optimizaciones orientadas a la nube.

Los fundadores de Qubole también fueron los creadores de Apache Hive. Comenzaron Hive en Facebook y lo abrieron en 2008.

Cuántico

Quantum es el motor de consultas SQL interactivo, de escalado automático y sin servidor de Qubole que admite tanto Hive DDL como Presto SQL. Quantum es un servicio de pago por uso que es rentable para patrones de consulta esporádicos que se extienden a lo largo de períodos prolongados y tiene un modo estricto para evitar gastos inesperados. Quantum usa Presto y complementa los clústeres de servidores de Presto. Las consultas cuánticas están limitadas a tiempos de ejecución de 45 minutos.

Flujo de aire

Airflow es una plataforma basada en Python para crear, programar y monitorear flujos de trabajo mediante programación. Los flujos de trabajo son gráficos acíclicos dirigidos (DAG) de tareas. Los DAG se configuran escribiendo canalizaciones en código Python. Qubole ofrece Airflow como uno de sus servicios; a menudo se usa para ETL.

El nuevo QuboleOperator se puede utilizar como cualquier otro operador de Airflow existente. Durante la ejecución del operador en el flujo de trabajo, enviará un comando a Qubole Data Service y esperará hasta que finalice el comando. Qubole admite sensores de archivos y tablas de Hive que Airflow puede utilizar para supervisar los flujos de trabajo mediante programación.

Para ver la interfaz de usuario de Airflow, primero debe iniciar un grupo de Airflow y luego abrir la página del grupo para ver el sitio web de Airflow.

RubiX

RubiX es el marco liviano de almacenamiento en caché de datos de Qubole que puede ser utilizado por un sistema de big data que usa una interfaz de sistema de archivos Hadoop. RubiX está diseñado para funcionar con sistemas de almacenamiento en la nube como Amazon S3 y Azure Blob Storage, y para almacenar en caché archivos remotos en un disco local. Qubole ha lanzado RubiX a código abierto. Habilitar RubiX en Qubole es cuestión de marcar una casilla.

¿Qué hace Qubole?

Qubole proporciona una plataforma integral para análisis y ciencia de datos. La funcionalidad se distribuye entre una docena de módulos.

El módulo Explorar le permite ver sus tablas de datos, agregar almacenes de datos y configurar el intercambio de datos. En AWS, puede ver sus conexiones de datos, sus buckets S3 y sus almacenes de datos de Qubole Hive.

Los módulos Analyze y Workbench le permiten ejecutar consultas ad hoc en sus conjuntos de datos. Analizar es la interfaz anterior y Workbench es la nueva interfaz, que aún estaba en versión beta cuando la probé. Ambas interfaces le permiten arrastrar y soltar campos de datos en sus consultas SQL y elegir el motor que usa para ejecutar las operaciones: Quantum, Hive, Presto, Spark, una base de datos, un shell o Hadoop.

Smart Query es un generador de consultas SQL basado en formularios para Hive y Presto. Las plantillas le permiten reutilizar consultas SQL parametrizadas.

Los cuadernos son cuadernos Zeppelin basados ​​en Spark o (en beta) Jupyter para ciencia de datos. Los paneles proporcionan una interfaz para compartir sus exploraciones, sin permitir el acceso a sus cuadernos.

El programador le permite ejecutar consultas, flujos de trabajo, importaciones y exportaciones de datos y comandos automáticamente a intervalos. Eso complementa las consultas ad-hoc que puede ejecutar en los módulos Analyze y Workbench.

El módulo Clústeres le permite administrar sus clústeres de servidores Hadoop / Hive, Spark, Presto, Airflow y de aprendizaje profundo (beta). El uso le permite rastrear su clúster y el uso de consultas. El Panel de control le permite configurar la plataforma, ya sea para usted mismo o para otros si tiene permisos de administración del sistema.

Recorrido de Qubole de extremo a extremo

Realicé un tutorial sobre cómo importar una base de datos, crear un esquema de Hive y analizar el resultado con Hive y Presto, y por separado en un cuaderno Spark. También miré un DAG de flujo de aire para el mismo proceso y un cuaderno para hacer aprendizaje automático con Spark en un conjunto de datos no relacionado.

Aprendizaje profundo en Qubole

Hemos visto la ciencia de datos en Qubole hasta el nivel del aprendizaje automático clásico, pero ¿qué pasa con el aprendizaje profundo? Una forma de lograr el aprendizaje profundo en Qubole es insertar pasos de Python en sus cuadernos que importan marcos de aprendizaje profundo como TensorFlow y usarlos en los conjuntos de datos ya diseñados con Spark. Otra es llamar a Amazon SageMaker desde computadoras portátiles o Airflow, asumiendo que su instalación de Qubole se ejecuta en AWS.

La mayor parte de lo que hace en Qubole no requiere ejecutarse en GPU, pero el aprendizaje profundo a menudo necesita GPU para permitir que el entrenamiento se complete en una cantidad de tiempo razonable. Amazon SageMaker se encarga de eso ejecutando los pasos de aprendizaje profundo en clústeres separados, que puede configurar con tantos nodos y GPU como sea necesario. Qubole también ofrece clústeres de aprendizaje automático (en versión beta); en AWS, estos permiten nodos trabajadores acelerados de tipo g y tipo p con GPU Nvidia, y en Google Cloud Platform y Microsoft Azure permiten nodos trabajadores acelerados equivalentes.

Kit de herramientas de big data en la nube

Qubole, una plataforma de datos nativa de la nube para análisis y aprendizaje automático, lo ayuda a importar conjuntos de datos a un lago de datos, crear esquemas con Hive y consultar los datos con Hive, Presto, Quantum y Spark. Utiliza tanto portátiles como Airflow para construir flujos de trabajo. También puede llamar a otros servicios y utilizar otras bibliotecas, por ejemplo, el servicio Amazon SageMaker y la biblioteca TensorFlow Python para el aprendizaje profundo.

Qubole lo ayuda a administrar su gasto en la nube al controlar la combinación de instancias en un clúster, iniciar y ajustar automáticamente los clústeres a pedido y cerrar los clústeres automáticamente cuando no están en uso. Se ejecuta en AWS, Microsoft Azure, Google Cloud Platform y Oracle Cloud.

En general, Qubole es una muy buena manera de aprovechar (o "activar") su lago de datos, bases de datos aisladas y big data. Puede probar Qubole gratis durante 14 días en su elección de AWS, Azure o GCP con datos de muestra. También puede organizar una prueba gratuita con todas las funciones para hasta cinco usuarios y un mes, utilizando su propia cuenta de infraestructura en la nube y sus propios datos.

-

Costo: Prueba y cuentas de prueba, gratis. Plataforma empresarial, $ 0.14 por QCU (Qubole Compute Unit) por hora. 

Plataforma: Amazon Web Services, Google Cloud Platform, Microsoft Azure, Oracle Cloud.