sql >> Base de Datos >  >> NoSQL >> HBase

Qué sigue para Impala después del lanzamiento 1.1

En diciembre de 2012, mientras Cloudera Impala aún estaba en su fase beta, proporcionamos una hoja de ruta para la funcionalidad planificada en la versión de producción. Con el mismo espíritu de mantener bien informados a los usuarios, clientes y entusiastas de Impala, esta publicación proporciona una hoja de ruta actualizada para los próximos lanzamientos a finales de este año y principios de 2014.

Pero primero, un agradecimiento:desde el lanzamiento de la versión beta inicial, hemos recibido una gran cantidad de comentarios y validación sobre Impala, abundantes en calidad y cantidad. Al menos una persona en aproximadamente 4500 organizaciones únicas en todo el mundo ha descargado el binario de Impala, hasta la fecha. E incluso después de solo unos meses de GA, hemos visto a los clientes de Cloudera Enterprise de múltiples industrias implementar Impala 1.x en entornos críticos para el negocio con soporte a través de una suscripción de Cloudera RTQ (Consulta en tiempo real), incluidas organizaciones líderes en seguros, banca, comercio minorista, atención médica, juegos, gobierno, telecomunicaciones y publicidad.

Además, con base en la reacción de otros proveedores en el espacio de gestión de datos, pocos observadores cuestionarían la noción de que Impala ha hecho que las consultas SQL interactivas de baja latencia para Hadoop sean un requisito del cliente tan importante como las consultas SQL orientadas a lotes y de alta latencia. habilitado por Apache Hive. ¡Es un gran avance para los usuarios de Hadoop en todas partes!

Lo que se entregó en Impala 1.0/1.1

Comencemos con una boleta de calificaciones sobre la hoja de ruta de Impala 1.0/1.1 publicada anteriormente. Aquí está la lista de características, agrupadas por estado de entrega:

Entregado:

  • Compatibilidad con formato Parquet, formato de archivo Apache Avro y archivos de texto comprimidos con LZO
  • Compatibilidad con las mismas plataformas de sistema operativo de 64 bits compatibles con CDH
  • Controlador JDBC
  • Compatibilidad con DDL
  • Uniones más rápidas, más grandes y más eficientes en memoria
  • Agregaciones más rápidas, más grandes y con mayor eficiencia de memoria
  • Más optimizaciones de rendimiento de SQL

Pospuesto según los comentarios de los clientes:

  • Manejo de rezagados
  • Actualización automática de metadatos

Además, gracias a la adición del módulo Apache Sentry (incubación), Impala 1.1 y versiones posteriores ahora también brindan autorización granular basada en roles, lo que garantiza que los usuarios y las aplicaciones correctos tengan acceso a los datos correctos. (Con la reciente contribución de Sentry a Apache Incubator y de HiveServer2 a Hive por Cloudera, Hive 0.11 y versiones posteriores también tienen esa funcionalidad).

Se ha trabajado mucho, pero aún queda mucho trabajo por hacer. Ahora, a la ola Impala 2.0.

Hoja de ruta a corto plazo

La siguiente funcionalidad nueva de Impala se lanzará de manera incremental en versiones futuras a corto plazo, comenzando con Impala 1.2 a fines de 2013 y finalizando con Impala 2.0 en el primer tercio de 2014. Además, verá más ganancias de rendimiento y mejoras en la funcionalidad de SQL en cada lanzamiento, con el objetivo de expandir el liderazgo de rendimiento de Impala sobre los enfoques alternativos de SQL-on-Hadoop de los proveedores de bases de datos relacionales heredados, así como de los proveedores de distribuciones de Hadoop.

Tenga en cuenta, como siempre ocurre con las hojas de ruta, que los cronogramas y las funciones siempre están sujetos a cambios. Sin embargo, lo que ve a continuación captura nuestro plan de registro actual.

Impala 1.2

  • UDF y extensibilidad:permite a los usuarios agregar su propia funcionalidad personalizada; Impala admitirá UDF de Hive Java existentes, así como UDF y UDAF nativos de alto rendimiento
  • Actualización automática de metadatos:permite que las nuevas tablas y datos estén disponibles sin problemas para las consultas de Impala a medida que se agregan sin tener que realizar una actualización manual en cada nodo de Impala
  • Almacenamiento en caché HDFS en memoria:permite el acceso a datos de Hadoop a los que se accede con frecuencia a velocidades en memoria
  • Optimización del orden de unión basada en costos:evita que el usuario tenga que adivinar el orden de unión correcto
  • Vista previa del administrador de recursos integrado con YARN:permite priorizar las cargas de trabajo con una granularidad más fina que el aislamiento de nivel de servicio que se proporciona actualmente en Cloudera Manager

Impala 2.0

La lista a continuación captura solo las funciones más grandes y solicitadas con más frecuencia; de ninguna manera está completo.

  • Funciones de ventana analítica compatibles con SQL 2003 (agregación SOBRE PARTICIÓN):para proporcionar capacidades analíticas de SQL más avanzadas
  • Mecanismos de autenticación adicionales, incluida la capacidad de especificar nombres de usuario/contraseñas además de la autenticación Kerberos ya admitida
  • UDTF (funciones de tabla definidas por el usuario):para funciones de usuario más avanzadas y extensibilidad
  • Agregaciones y uniones paralelizadas dentro del nodo:para proporcionar uniones y agregaciones aún más rápidas además de las ganancias de rendimiento de Impala
  • Datos anidados:permite realizar consultas sobre estructuras anidadas complejas, incluidos mapas, estructuras y matrices
  • Administrador de recursos mejorado, listo para producción e integrado con YARN
  • Mejoras de parquet:ganancias continuas de rendimiento, incluidas las páginas de índice
  • Tipos de datos adicionales, incluidos los tipos de fecha y decimal
  • ORDER BY sin cláusulas LIMIT

Más allá de Impala 2.0

La siguiente lista de características son aquellas que actualmente anticipamos que estarán presentes en 2.1 o en un lanzamiento poco después:

  • Funcionalidad SQL analítica adicional:ROLLUP, CUBE y GROUPING SET
  • Apache HBase CRUD:permite el uso de Impala para inserciones y actualizaciones en HBase
  • Uniones externas usando disco:permite que las uniones entre tablas se derramen en el disco para uniones que requieren tablas de unión más grandes que el tamaño de la memoria agregada
  • Subconsultas dentro de cláusulas WHERE

A medida que aprendamos más sobre los requisitos de los clientes y socios, esta lista se ampliará.

Conclusión

Como puede ver, Impala ha evolucionado considerablemente desde su versión beta y seguirá evolucionando a medida que obtengamos más comentarios de los usuarios, clientes y socios.

En última instancia, creemos que Impala ya ha permitido nuestro objetivo general de permitir que los usuarios almacenen todos sus datos en formatos de archivo nativos de Hadoop y ejecuten simultáneamente todas las cargas de trabajo por lotes, aprendizaje automático, SQL/BI interactivo, matemática, búsqueda y otras cargas de trabajo en esos datos. en su lugar. A partir de aquí, solo es cuestión de continuar construyendo sobre esa base muy sólida con una funcionalidad más rica y un rendimiento mejorado.

Justin Erickson es director de gestión de productos en Cloudera.