Presto se ha convertido en una herramienta popular para científicos e ingenieros de datos que trabajan con múltiples lenguajes de consulta, bases de datos aisladas y diferentes tipos de almacenamiento. Sus capacidades de alto rendimiento permiten a los usuarios consultar grandes volúmenes de datos en tiempo real, independientemente de dónde se encuentren los datos, utilizando una sencilla interfaz ANSI SQL. La velocidad y el rendimiento de Presto para ejecutar consultas en grandes volúmenes de datos lo han convertido en una herramienta indispensable para algunas de las empresas más grandes del mundo, como Facebook, Airbnb, Netflix, Microsoft, Apple (iOS) y AWS (Athena y Amazon 3).
La arquitectura Presto es única, ya que está diseñada para consultar datos sin importar dónde se almacenen los datos, lo que lo hace más escalable y eficiente que otras soluciones similares. Las consultas de Presto permiten a los ingenieros utilizar los datos sin tener que moverlos físicamente de una ubicación a otra. Se trata de una capacidad importante, ya que las organizaciones se enfrentan a una cantidad cada vez mayor de datos que necesitan almacenar y analizar.
Presto se creó para que los científicos e ingenieros de datos pudieran consultar de forma interactiva grandes cantidades de datos, independientemente de la fuente o el tipo de almacenamiento. Como Presto no almacena datos, sino que se comunica con una base de datos independiente para sus consultas, es más flexible que sus competidores y puede ampliar o reducir rápidamente las consultas en función de las necesidades cambiantes de la organización. Según un documento técnico de IBM, Presto, optimizado para las cargas de trabajo de inteligencia empresarial (BI), puede ayudar a las empresas a optimizar los precios de sus almacenes de datos y a reducir los costes hasta un 50 %.
Estas son algunas de las principales ventajas de utilizar un flujo de trabajo de Presto:
Menores costes: a medida que aumenta el tamaño de los almacenes de datos y la cantidad de usuarios que realizan consultas, no es raro que las empresas vean cómo sus costos aumentan rápidamente. Sin embargo, Presto está optimizado para grandes cantidades de consultas pequeñas, lo que facilita la consulta de cualquier cantidad de datos a la vez que mantiene los costes bajos. Además, como Presto es de código abierto, su implantación no conlleva gastos, lo que puede suponer un ahorro considerable para las empresas que deseen procesar grandes volúmenes de datos.
Mayor escalabilidad: es habitual que los ingenieros configuren varios motores y lenguajes en un único sistema de almacenamiento de data lake, lo que puede hacer necesario volver a implantar la plataforma en el futuro y limitar la escalabilidad de su solución. Con Presto, todas las consultas se realizan utilizando el lenguaje y la interfaz universal ANSI SQL, lo que hace que la redefinición de la plataforma sea redundante. Además, Presto se puede utilizar para cantidades pequeñas y grandes de datos y escalar fácilmente de uno o dos usuarios a miles. Presto implementa múltiples motores de computación con dialectos SQL únicos y API, lo que lo convierte en una herramienta ideal para escalar cargas de trabajo que podrían ser demasiado complejas y requerir mucho tiempo para que los equipos de ingenieros y científicos de datos se manejen.
Mejor rendimiento: aunque muchos motores de consulta que ejecutan SQL en Hadoop están restringidos en su rendimiento de computación porque están diseñados para escribir sus resultados en el disco, el modelo en memoria distribuido de Presto permite ejecutar grandes cantidades de consultas interactivas a la vez contra grandes conjuntos de datos. Tras un diseño clásico de procesamiento masivo paralelo (MPP), Presto programa tantas consultas como sea posible en un solo nodo de trabajo y utiliza la transmisión en secuencias en memoria para aumentar aún más sus velocidades de procesamiento. Ejecutar tareas en memoria hace que escribir y leer desde el disco entre etapas sea redundante y acorta el tiempo de cada ejecución de consulta, haciendo de Presto una opción de latencia inferior a la de sus competidores.
Flexibilidad mejorada: Presto utiliza un modelo listo para usar en todas sus fuentes de datos, incluidas Cassandra, Kafka, MySQL, el sistema de archivos distribuidos de Hadoop (HDFS), PostgreSQL y otras, lo que hace que consultarlas sea más rápido y fácil que con otras herramientas comparables que carecen de esta funcionalidad. Además, la arquitectura flexible de Presto significa que no está restringida a un único proveedor, pero se ejecuta en la mayoría de las distribuciones de Hadoop, lo que lo convierte en una de las herramientas más portátiles disponibles.
Aunque Presto no es la única opción de SQL en Hadoop disponible para desarrolladores e ingenieros de datos, su arquitectura única que mantiene la funcionalidad de consulta separada del almacenamiento de datos lo convierte en una de las más flexibles. A diferencia de otras herramientas, Presto separa el motor de consulta del almacenamiento de datos y utiliza conectores para comunicarse entre ellos. Esta funcionalidad añadida ofrece a los ingenieros más flexibilidad que otras herramientas a la hora de construir soluciones con Presto.