¿Qué es Presto?

Doppler sobre ruedas frente a un tornado

¿Qué es Presto?

Presto, o base de datos Presto (PrestoDB), es un motor de código abierto SQL Query distribuido que puede consultar grandes conjuntos de datos de diferentes fuentes, lo que permite a las compañías abordar problemas de datos a escala.

Presto ofrece a organizaciones de todos los tamaños una manera rápida y eficiente de analizar big data de diversas fuentes, incluidos los sistemas on-premise y la nube. También ayuda a las compañías a consultar petabytes de datos por medio de sus capacidades SQL actuales, sin tener que aprender un nuevo idioma.

En la actualidad, Presto se usa más para ejecutar consultas en Hadoop y otros proveedores de almacenamiento de datos comunes, lo que permite a los usuarios administrar varios lenguajes de consulta e interfaces para bases de datos y almacenamiento.

En la era digital, el analytics de big data se está convirtiendo rápidamente en una competencia fundamental para las empresas, independientemente de su tamaño o industria. La capacidad de recopilar, almacenar y analizar grandes cantidades de datos relacionados con los procesos empresariales, las preferencias de los clientes y las tendencias del mercado es extremadamente valiosa. La principal importancia de Presto para el analytics de datos es su capacidad de analizar los datos independientemente de dónde se almacenen los datos y sin tener que moverlos primero a un sistema más estructurado, como un almacén de datos o un lago de datos.

Diseño 3D de pelotas rodando en una pista

Las últimas novedades e insights sobre IA

Descubra insights y noticias de expertos sobre IA, la nube y mucho más en el boletín semanal Think. 

Los beneficios de Presto

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 reporte técnico de IBM, Presto, optimizado para cargas de trabajo de business intelligence (BI), puede ayudar a las compañías a optimizar los precios de sus almacenes de datos y reducir los costos hasta en un 50 por ciento.

Estos son algunos de los beneficios clave de utilizar un flujo de trabajo de Presto:

  • Costos más bajos
  • Mayor escalabilidad
  • Mejor rendimiento
  • Flexibilidad mejorada

Costos más bajos

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 despliegue no conlleva gastos, lo que puede suponer un ahorro considerable para las empresas que deseen procesar grandes volúmenes de datos.

Mayor escalabilidad


Es común que los ingenieros configuren varios motores e idiomas en un único sistema de almacenamiento de lagos de datos, lo que puede hacer necesario volver a 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 despliega múltiples motores de computación con dialectos y API SQL únicos, 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 plug-and-play para todas sus fuentes de datos, como Cassandra, Kafka, MySQL, el sistema de archivos distribuido Hadoop (HDFS), PostgreSQL y otros, lo que hace que las consultas en ellos sean más rápidas y fáciles 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.

Mixture of Experts | 28 de agosto, episodio 70

Decodificación de la IA: Resumen semanal de noticias

Únase a nuestro panel de ingenieros, investigadores, responsables de producto y otros profesionales de talla mundial que se abren paso entre el revuelo de la IA para ofrecerle las últimas noticias e insights al respecto.

¿Cómo funciona Presto?

Presto utiliza un sistema de administración de bases de datos MPP con un nodo coordinador que funciona en conjunto con otros nodos. Un ecosistema Presto se compone de tres tipos de servidores, un servidor coordinador, un servidor de trabajo y un servidor de administrador de recursos.

Coordinador


Un coordinador se considera el “cerebro” de una instalación de Presto. Es responsable de algunas de las tareas más críticas, como analizar declaraciones, planificar consultas y gestionar nodos de trabajo de Presto. En última instancia, es responsable de recuperar los datos de los nodos de trabajo y entregar los resultados al cliente.

Trabajador


El trabajador es responsable de recopilar datos de los nodos de trabajo y garantizar el intercambio fluido de datos entre él y los conectores.

Resource Manager


El Resource Manager recopila datos de todos los nodos de coordinador y trabajador y crea una vista global, o un “cluster Presto”.

Cuando el SQL Server coordinador Presto recibe una SQL Query de un usuario, lo primero que hace es utilizar una consulta personalizada para analizar, planificar y programar un plan distribuido en los otros nodos. La API REST de Presto se utiliza para enviar sentencias de consulta para su ejecución en un servidor y recuperar los resultados para el cliente. Presto admite significados ANSI SQL estándar, incluidas uniones, consultas, subconsultas y agregaciones. Una vez compilada la consulta, Presto analiza la solicitud en diferentes etapas entre los nodos de trabajo.

Dado que Presto se basó en el concepto de abstracción de datos, es extensible a cualquier fuente de datos y puede consultar fácilmente fuentes de datos, como lagos de datos, almacenes de datos y bases de datos relacionales. La abstracción de datos es un proceso de programación que permite almacenar y manipular los datos de manera más eficiente al separar su representación de su almacenamiento físico. Esta abstracción permite que el motor de consultas se centre exclusivamente en los aspectos de los datos que son relevantes para su consulta. Mediante el proceso de abstracción de datos, los datos se consultan dondequiera que se almacenen, en lugar de una vez que se hayan trasladado a otro sistema de análisis.

Una breve historia de Presto

Inicialmente desarrollado en Facebook para ejecutar consultas interactivas en un enorme almacén de datos Apache Hadoop, los desarrolladores de Presto siempre lo imaginaban como software de código abierto y buscaban que fuera gratuito para uso comercial, para que cualquiera pudiera utilizarlo para el análisis de datos y la gestión de datos. En 2013, fue de código abierto en GitHub para que cualquiera lo descargue con la licencia de Apache Software. En 2019, tres de los miembros originales del equipo de desarrollo de Presto abandonaron el proyecto y fundaron una “bifurcación” de Presto conocida como Presto Software Foundation, o más comúnmente, prestosql.

La fundación Linux y otras comunidades de código abierto ofrecen seminarios web y capacitación sobre Presto en inglés y otros idiomas para ingenieros y desarrolladores que buscan obtener la certificación. Estos foros también son un buen lugar para conocer las novedades de Presto.

Casos de uso de Presto

Presto permite a las organizaciones consultar repositorios de datos a gran escala y bases de datos NoSQL de forma rápida y eficiente para diversos fines empresariales. Estos son algunos de sus casos de uso más comunes:

Consultas específicas

Presto permite una exploración rápida de datos e informes sencillos para diversos fines empresariales. Mediante el uso de conectores populares Presto, como Hive, MongoDB o Cassandra, los usuarios pueden consultar los datos que les interesen y obtener resultados en segundos. Con su velocidad y flexibilidad, Presto permite a los usuarios iterar y seguir explorando conjuntos de datos, independientemente de dónde residan.

Estos son algunos de los repositorios de datos más utilizados a los que Presto puede conectarse:

  • BigQuery
  • HDFS
  • Almacenamiento en la nube
  • Cloud SQL para MySQL
  • Apache Cassandra o Kafka
Despliegues de nube y nube híbrida

Según una evaluación de rendimiento de 2021 realizada por RedHat, el uso cada vez mayor de entornos de nube híbrida por parte de las empresas está ejerciendo una mayor presión sobre el almacenamiento nativo de la nube, para lo cual Presto, “el motor de consultas distribuido más rápido disponible en la actualidad”, es ideal. 1 Mover cargas de trabajo de un entorno on-premises a una infraestructura de nube o de nube híbrida tiene muchos beneficios, incluido un mayor rendimiento y escalabilidad. La arquitectura de Presto lo convierte en una buena opción para este tipo de despliegues porque se puede iniciar en unos minutos sin aprovisionamiento, configuración o ajuste adicionales.

Aprendizaje automático (ML)

Presto ayuda a los ingenieros a preparar los datos y a realizar la ingeniería y extracción de características de una manera altamente eficiente que garantiza que estén listos para el machine learning (ML). Su número de conectores, motor SQL y capacidades de consulta lo hacen ideal para los ingenieros que buscan un acceso rápido y fácil a grandes volúmenes de datos. Además, Presto cuenta con herramientas diseñadas específicamente para funciones de aprendizaje automático, como la agregación, que permiten a los científicos de datos entrenar clasificadores y regresores de máquinas vectoriales de soporte (SVM) para abordar problemas de aprendizaje supervisado.

Presentación de informes

Presto permite que los datos se consulten desde múltiples fuentes generando un único informe o panel de fácil acceso para fines de BI. Presto es lo suficientemente sencillo y fácil de usar como para que los analistas puedan realizar consultas y crear informes sin ayuda de ingenieros.

Analytics

Presto permite a los analistas realizar consultas sobre datos estructurados y no estructurados directamente en un lago de datos sin pasar por un proceso de transformación de datos.

Preparación de los datos

El proceso de recopilación y preparación de datos puede ser costoso e ineficiente. Los científicos de datos pueden dedicar horas cada día a recopilar y preparar datos antes de que se puedan analizar. Presto automatiza este proceso con velocidad y precisión para que los científicos e ingenieros de datos puedan dedicar más tiempo a tareas de mayor valor.

Soluciones relacionadas
Software y soluciones de bases de datos

Utilice las soluciones de bases de datos de IBM para satisfacer las distintas necesidades de carga de trabajo en la nube híbrida.

Explore las soluciones de bases de datos
Base de datos nativa de la nube con IBM Db2

Explore IBM Db2, una base de datos relacional que ofrece alto rendimiento, escalabilidad y fiabilidad para almacenar y gestionar datos estructurados. Está disponible como SaaS en IBM Cloud o para autoalojamiento.

Descubra Db2
Servicios de consultoría en datos y analytics

Desbloquee el valor de los datos empresariales con IBM Consulting y cree una organización impulsada por insights que ofrezca ventajas empresariales.

Descubra los servicios de analytics
Dé el siguiente paso

Utilice las soluciones de bases de datos de IBM para satisfacer las distintas necesidades de carga de trabajo en la nube híbrida.

Explore las soluciones de bases de datos Descubra IBM Db2
Notas de pie de página