¿Qué es Presto?

Radar móvil frente a un tornado

¿Qué es Presto?

Presto, o base de datos Presto (PrestoDB), es un motor de consultas SQL distribuido y de código abierto que puede consultar grandes conjuntos de datos de diferentes fuentes de datos, lo que permite a las empresas abordar los problemas de datos a gran escala.

Presto ofrece a organizaciones de todos los tamaños una forma rápida y eficaz de analizar big data procedente de diversas fuentes, incluidos los sistemas en las instalaciones y la nube. También ayuda a las empresas a consultar petabytes de datos utilizando sus capacidades SQL actuales, sin tener que aprender un nuevo lenguaje.

En la actualidad, Presto se utiliza principalmente para ejecutar consultas en Hadoop y otros proveedores de almacenamiento de datos comunes, lo que permite a los usuarios gestionar varios lenguajes de consulta e interfaces a bases de datos y almacenamiento.

En la era digital, el análisis de big data se está convirtiendo rápidamente en una competencia fundamental para las empresas, independientemente de su tamaño o sector. 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 la analítica de datos es su capacidad para analizar los datos independientemente de dónde estén almacenados y sin tener que moverlos primero a un sistema más estructurado, como un almacén de datos o un data lake.

Diseño 3D de bolas rodando por un circuito

Las últimas noticias + conocimientos de IA 


Descubra ideas y noticias de expertos sobre IA, 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 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.

Mixture of Experts | 12 de diciembre, episodio 85

Descifrar 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 bullicio de la IA para ofrecerle las últimas noticias y conocimientos 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 importantes, 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.

Gestor de recursos: el gestor de recursos recopila datos de todos los nodos coordinadores y trabajadores y crea una vista global, o un "clúster Presto".

Cuando el servidor SQL coordinador Presto recibe una consulta SQL 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.

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 base de Linux y otras comunidades de código abierto ofrecen webinars y formación sobre Presto en inglés y otros idiomas para ingenieros y desarrolladores que buscan obtener 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 prácticos 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
  • Cloud Storage
  • SQL en la nube para MySQL
  • Apache Cassandra o Kafka
Implementaciones 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 local 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 implementaciones porque se puede iniciar en unos minutos sin necesidad de aprovisionamiento, configuración o ajustes adicionales.

Machine learning (ML)

Presto ayuda a los ingenieros a preparar los datos y a aplicar la ingeniería y extracción de características de una manera altamente eficiente que garantiza que estén listos para 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.

Informes

Presto permite que los datos se consulten desde múltiples fuentes generando un único informe o panel de control 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.

Herramientas de análisis

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 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 más importantes.

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 asesoramiento sobre datos y análisis

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

Descubra los servicios de análisis
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 a pie de página