Articulo de referencia

Presto (motor de consultas SQL)

Arquitectura de Presto. Presto (que incluye PrestoDB y PrestoSQL, que pasó a llamarse Trino ) es un motor de consulta distribuido para big data que utiliza el lenguaje de consul...

Arquitectura de Presto.
Arquitectura de Presto.

Presto (que incluye PrestoDB y PrestoSQL, que pasó a llamarse Trino ) es un motor de consulta distribuido para big data que utiliza el lenguaje de consulta SQL . Su arquitectura permite a los usuarios consultar fuentes de datos como Hadoop , Cassandra , Kafka , AWS S3 , Alluxio , MySQL , MongoDB y Teradata [ 1 ] , y permite el uso de múltiples fuentes de datos dentro de una misma consulta. Presto es un software de código abierto impulsado por la comunidad y publicado bajo la licencia Apache .

Historia

Presto fue diseñado y desarrollado originalmente en Facebook, Inc. (más tarde renombrada Meta) para que sus analistas de datos ejecutaran consultas interactivas en su gran almacén de datos en Apache Hadoop . Los primeros cuatro desarrolladores fueron Martin Traverso, Dain Sundstrom, David Phillips y Eric Hwang. Antes de Presto, los analistas de datos de Facebook dependían de Apache Hive para ejecutar análisis SQL en su almacén de datos de varios petabytes. [ 2 ] Hive se consideró demasiado lento para la escala de Facebook y Presto se inventó para cubrir la necesidad de ejecutar consultas rápidas. [ 3 ] El desarrollo original comenzó en 2012 y se implementó en Facebook ese mismo año. En noviembre de 2013, Facebook anunció su lanzamiento como código abierto. [ 3 ] [ 4 ]

En 2014, Netflix reveló que utilizaba Presto en 10 petabytes de datos almacenados en el Amazon Simple Storage Service (S3). [ 5 ] En noviembre de 2016, Amazon anunció un servicio llamado Athena que se basaba en Presto. [ 6 ] En 2017, Teradata creó una empresa llamada Starburst Data para dar soporte comercial a Presto, que incluía personal adquirido de Hadapt en 2014. [ 7 ] El software QueryGrid de Teradata permitía a Presto acceder a una base de datos relacional de Teradata. [ 8 ]

En enero de 2019, se anunció la Presto Software Foundation. La fundación es una organización sin fines de lucro para el avance del motor de consulta SQL distribuido de código abierto Presto. [ 9 ] [ 10 ] Al mismo tiempo, el desarrollo de Presto se bifurcó: PrestoDB, mantenido por Facebook, y PrestoSQL, mantenido por la Presto Software Foundation, con cierta polinización cruzada de código.

En septiembre de 2019, Facebook donó PrestoDB a la Linux Foundation , estableciendo así la Presto Foundation . [ 11 ] Ni los creadores de Presto, ni los principales colaboradores y desarrolladores, fueron invitados a unirse a esta fundación. [ 12 ]

Para 2020, los cuatro desarrolladores originales de Presto se habían unido a Starburst. [ 13 ] En diciembre de 2020, PrestoSQL pasó a llamarse Trino , ya que Facebook había obtenido una marca registrada sobre el nombre "Presto" (que también donó a la Linux Foundation). [ 14 ]

Otra empresa llamada Ahana fue anunciada en 2020 para comercializar la bifurcación de PrestoDB como un servicio en la nube y fue adquirida por IBM en 2023. [ 15 ]

Arquitectura

La arquitectura de Presto es muy similar a la de otros sistemas de gestión de bases de datos que utilizan computación en clúster , también conocida como procesamiento masivamente paralelo (MPP). Un coordinador trabaja en sincronía con varios nodos de trabajo. Los clientes envían sentencias SQL que se analizan y planifican, tras lo cual se asignan tareas paralelas a los nodos de trabajo. Estos procesan conjuntamente las filas de las fuentes de datos y generan resultados que se devuelven al cliente. En comparación con el modelo de ejecución original de Apache Hive , que utilizaba el mecanismo Hadoop MapReduce en cada consulta, Presto no escribe resultados intermedios en disco, lo que se traduce en una mejora significativa de la velocidad. Presto está escrito en Java .

Una consulta Presto puede combinar datos de múltiples fuentes. Presto ofrece conectores a fuentes de datos que incluyen archivos en Alluxio , Hadoop Distributed File System (a menudo llamado data lake ), Amazon S3 , MySQL , PostgreSQL , Microsoft SQL Server , Amazon Redshift , Apache Kudu , Apache Phoenix , Apache Kafka , Apache Cassandra , Apache Accumulo , MongoDB y Redis . A diferencia de otras herramientas específicas de la distribución Hadoop, como Apache Impala , Presto puede funcionar con cualquier variante de Hadoop o sin ella. Presto admite la separación de computación y almacenamiento y puede implementarse localmente o mediante computación en la nube .

Véase también

Referencias

  1. 1.1. Distribución de Presto en Teradata — Documentación de la distribución de Presto 0.167-t.0.2 en Teradata
  2. Mike Volpi (20 de noviembre de 2019). "Starburst and Presto: with Stellar Velocity" . Blog de Index Ventures . Consultado el 27 de enero de 2022 .
  3. 1 2 Joab Jackson (6 de noviembre de 2013). "Facebook se vuelve de código abierto con un motor de consultas para big data" . Computer World . Recuperado el 26 de abril de 2017 .
  4. Jordan Novet (6 de junio de 2013). "Facebook presenta el motor Presto para consultar un almacén de datos de 250 PB" . Giga Om . Archivado del original el 8 de junio de 2013. Recuperado el 26 de abril de 2017 .
  5. Eva Tse; Zhenxiao Luo; Nezih Yigitbasi (7 de octubre de 2014). "Uso de Presto en nuestra plataforma de Big Data en AWS" . Blog técnico de Netflix . Consultado el 26 de abril de 2017 .
  6. Jeff Barr (30 de noviembre de 2016). "Amazon Athena: consultas SQL interactivas para datos en Amazon S3" . Blog de noticias de AWS . Consultado el 27 de enero de 2022 .
  7. Philip Howard (21 de diciembre de 2017). "Teradata crea una filial de Starburst" . Bloor . Consultado el 26 de enero de 2022 .
  8. Lindsay Clark (17 de diciembre de 2020). "¡Hey Presto! Teradata admite que su visión está muerta al conectar la plataforma de análisis QueryGrid con almacenes de datos rivales" . The Register . Consultado el 26 de enero de 2022 .
  9. "Se lanza la Fundación Presto Software para impulsar la comunidad de código abierto de Presto" . Comunicado de prensa . 31 de enero de 2019. Consultado el 2 de enero de 2022 .
  10. "La nueva base de Presto señala el crecimiento del motor SQL de Big Data" . The New Stack . 31 de enero de 2019. Consultado el 1 de febrero de 2019 .
  11. "Facebook, Uber, Twitter y Alibaba forman la Fundación Presto para abordar el procesamiento distribuido de datos a gran escala" . 23 de septiembre de 2019. Consultado el 12 de noviembre de 2019 .
  12. Piotr Findeisen (22 de noviembre de 2019). "¿Cuál es la relación entre prestosql y prestodb?" . Comentario en el número 38 de Trino Github . Consultado el 27 de enero de 2022 .
  13. "Los co-creadores originales de Presto se reúnen en el equipo de liderazgo técnico de Starburst" . Comunicado de prensa . 22 de septiembre de 2020. Consultado el 26 de enero de 2022 .
  14. Martin Traverso, Dain Sundstrom, David Phillips (27 de diciembre de 2020). "Estamos cambiando la marca de PrestoSQL a Trino" . Blog de Trino . Consultado el 26 de enero de 2022 .{{cite web}}: CS1 maint: varios nombres: lista de autores ( enlace )
  15. Gillin, Paul (14 de abril de 2023). "IBM adquiere Ahana y se une a la Fundación Presto" . SiliconANGLE . Consultado el 20 de abril de 2023 .
  • Sitio web oficial de PrestoDB
  • Presto en GitHub
  • Sitio web oficial de Trino
  • Trino en GitHub