En esta publicación, compartiré la diferencia en los objetivos de diseño. La implementación real de Presto versus Drill para su caso de uso es realmente un ejercicio que le queda a usted. No he jugado con Presto para poder hablar de su robustez, uso, etc., ¡así que supongo que todo es genial!
Facebook creó Hive y también crearon Presto. Según la página de ingeniería de Facebook -Presto: interactuando con petabytes de datos en Facebook
“Presto es un motor de consulta SQL distribuido optimizado para análisis ad-hoc a velocidad interactiva. Admite SQL ANSI estándar, que incluye consultas complejas, agregaciones, uniones y funciones de ventana”.
- ¿Cuál es el mejor software de recordatorio de citas, preferiblemente basado en la nube, que puede usar para enviar SMS, llamadas telefónicas automatizadas y correos electrónicos desde Internet?
- ¿Cuál es el mejor software para navegar por los datos?
- ¿Deben las compañías de software insistir en que los empleados no usen software externo para los datos de la compañía?
- ¿Qué software está disponible de forma gratuita para eliminar las voces de una canción?
- ¿Es legal extraer software de un CD con fines de copia de seguridad?
Las cosas que se destacan para mí son
- ANSI SQL en lugar de Hive QL
- Salida del clásico MapReduce a un motor más personalizado diseñado para admitir la semántica de SQL
- Está construido en Java – para un desarrollo más rápido
- Compilación dinámica para bytecode
- Construido con la idea de que HDFS es solo una fuente, se pueden consultar otros como HBase, etc. construyendo complementos de almacenamiento (conectores)
Ahora hablemos de Apache Drill.
Apache Drill tenía suposiciones similares al comenzar a construir un motor de consulta SQL. Por lo tanto, se aplican todos los puntos anteriores.
Hay un objetivo principal de diseño adicional con el que Apache Drill comenzó. La diferencia fundamental es que Apache Drill (en muchas circunstancias) no necesita un esquema para consultar y descubrir datos. Esto permite reducir la demora en obtener información de nuevos conjuntos de datos en su proceso de toma de decisiones.
La forma en que Apache Drill logra esto es modelando conceptualmente como un JSON. Esto le permite representar varios tipos de datos y consultarlos, incluidas las estructuras que evolucionan rápidamente y las estructuras no relacionales.
SQL sin esquema para Hadoop, NoSQL y Cloud Storage
Otro punto a tener en cuenta es que Drill está integrado con varias herramientas de BI de la industria (Presto también lo hace, según el comentario de Nezih a continuación)