Presto ist eine verteilte Open-Source-SQL-Abfrage-Engine, optimiert für Ad-hoc-Datenanalysen mit geringer Latenz. Es unterstützt den ANSI-SQL-Standard, einschließlich komplexer Abfragen, Aggregationen, Verknüpfungen und Fensterfunktionen. Presto kann Daten aus mehreren Datenquellen verarbeiten, etwa Hadoop Distributed File System (HDFS) und Amazon S3. Weitere Informationen über Presto finden Sie hier.

Sie können verwaltete Presto-Cluster schnell und einfach von der AWS Management Console, AWS CLI oder der Amazon EMR API aus erstellen. Außerdem können Sie zusätzliche Funktionen von Amazon EMR nutzen, darunter die schnelle Amazon S3-Verbindung, Integration mit Amazon EC2 Spot Instances, die Wahl einer Reihe von Amazon EC2 Instances, darunter die speicheroptimierten Instances und Befehle zum Ändern der Instance-Größe für einfaches Hinzufügen oder Entfernen von Instances aus Ihrem Cluster. 

PrestoLogo_withText

Erste Schritte mit Presto in Amazon EMR

Erstellen eines kostenlosen Kontos

Hilfe erforderlich? Wenden Sie sich an uns.

Analyze Data with Presto and Airpal on Amazon EMR von Songzhi Liu, AWS Professional Services Consultant.

 


S3_Sketch_Available

Presto nutzt eine individuelle Abfrage-Ausführungs-Engine mit Operatoren, die für die Unterstützung von SQL-Semantik entwickelt wurden. Anders als Hive/MapReduce führt Presto In-Memory-Abfragen durch, die zwischen den Stufen im Pipelinesystem verarbeitet werden und vermeidet folglich unnötige E/A. Dieses Ausführungsmodell im Pipelinesystem läuft parallel über mehrere Stufen und streamt Daten von einer Stufe so wie sie verfügbar werden zu nächsten. 

S3_Sketch_HighPerformance

Sie können ein Amazon EMR-Cluster mit Presto in wenigen Minuten starten. Sie brauchen sich nicht um die Bereitstellung von Knoten, die Einrichtung von Clustern, die Konfiguration oder die Optimierung von Clustern zu kümmern. Diese Aufgaben werden von Amazon EMR ausgeführt, damit Sie sich auf die Analyse konzentrieren können. Sie können auch Tools wie Airpal verwenden, ein webbasiertes Open-Source-Abfrageausführungstool von Airbnb. Die Benutzeroberfläche von Airpal vereinfacht die Datenuntersuchung und Ad-hoc-Analyse und unterstützt Funktionen wie Syntaxmarkierungen, die Möglichkeit für den Export von Resultaten in CSV, das Speichern von Abfragen für später und die Möglichkeit, Tabellen zur Schemavisualisierung zu durchsuchen.

S3_Sketch_Simple

Interaktive Abfragen durchführen, die direkt auf Daten in Amazon S3 zugreifen, Kosten mithilfe der Amazon EC2 Spot Instance-Kapazität sparen, Auto Scaling nutzen, um Kapazitäten dynamisch hinzuzufügen und zu entfernen und lange andauernde oder flüchtige Cluster starten, um Ihrer Verarbeitungslast zu genügen. Sie können auch andere Hadoop Ecosystem-Anwendungen in Ihrem Cluster hinzufügen.

Benefit_Workflow_Green

Presto unterstützt den ANSI-SQL-Standard, der es Datenanalysten und -entwicklern leicht macht, sowohl strukturierte als auch unstrukturierte Daten den Anforderungen entsprechend abzufragen. Aktuell unterstützt Presto eine breite Palette an SQL-Funktionen, einschließlich komplexer Abfragen, Aggregationen, Verknüpfungen und Fensterfunktionen.


Bei Netflix hat man sich für Presto als interaktive Abfrage-Engine für Big Data entschieden, die den ANSI-SQL-Standard erfüllt. Presto skaliert gut, ist open-source und kann mit dem Hive Metastore und Amazon S3 integriert werden – dem Rückgrat der Big Data Warehouse-Umgebung von Netflix. Netflix führt Presto auf permanenten Amazon EMR Clustern aus, um schnell und flexibel Abfragen im ~25 PB Amazon S3 Datenspeicher durchführen zu können. Netflix leistet aktiv einen Beitrag zu Presto, und Amazon EMR bietet Netflix die Flexibilität, damit man dort eine eigene Version von Presto auf Amazon EMR Clustern ausführen kann. Durchschnittlich führt Netflix ~3 500 Abfragen pro Tag auf Presto Clustern durch. 

Jampp ist eine Marketing-Plattform für mobile Apps, die erweiterte Werbe-/Retargeting-Techniken nutzt, um aktive Benutzer zu den Apps zu führen. Jampp erreicht dies durch den Kauf von mobilem Medienbestand über die eigene Real-Time Bidding-Engine (RTB, Bieten in Echtzeit), die dynamisch auf Inventar auf 18 RTB-Börsen und über 150 Mobil-Werbenetzwerken bietet. Jampp nutzt Presto ausgeführt auf Amazon EMR für erweiterte Ad-hoc-Protokollanalysen und kombiniert Daten von multiplen Quellen und komplexen Retargeting-Segment-Berechnungen. Mit einem um 600 % gewachsenen Benutzerstamm stiegen auch die Anforderungen für komplexe analytische Abfragen. Jampp wechselte von der Ausführung einer komplexen Python-Anwendung mit mehreren Kernen auf Pesto und erzielte damit eine 12-fache Leistungssteigerung. Jampp nutzt Presto aktuell in Amazon EMR für die Verarbeitung von 40 TB Daten pro Tag.

Als Zentrum für Firmengründungen betreibt das Unternehmen Cogo Labs eine Plattform für Marketinganalysen und Business Intelligence, die von den Unternehmen in seinem Portfolio sowie von internen Teams genutzt wird. Um eine OLAP-Umgebung mit hoher Innovationsrate zu unterstützen, entschied man sich für SQL, um mit Daten interagieren. Cogo Labs wählte Presto aufgrund seiner Echtzeit-Abfrageleistung, Unterstützung für ANSI-SQL und Möglichkeit für eine Datenverarbeitung direkt in Amazon S3. Das Ausführen von Presto in Amazon EMR ermöglicht den über 100 Entwicklern und Analysten das Ausführen von SQL-Abfragen in über 500 TB an in Amazon S3 für Suchen gespeicherten Daten, Ad-hoc-Analysen und Berichten. Cogo Labs nutzt eine Kombination aus kurzlebigen und permanenten Clustern und vertraut auf die Integration von Amazon EMR mit Spot-Instances, um die Kosten zu senken.

OpenSpan bietet Automatisierungs- und Intelligence-Lösungen, die eine Brücke zwischen Menschen, Prozessen und Technologie bilden sollen, um Einblicke in die Mitarbeiterproduktivität zu gewinnen und Mitarbeiter und Kunden miteinbeziehen. OpenSpan migrierte von HBase zu Presto in Amazon EMR mit Daten in Amazon S3. OpenSpan wählte Presto aufgrund seiner SQL-Schnittstelle und der Möglichkeit, Daten in Echtzeit direkt auf Amazon S3 abzufragen; Presto ermöglichte OpenSpan, rasch riesige Datenmengen zu durchsuchen und schneller auf anstehende Datenprodukte zu iterieren. OpenSpan nutzt das Parquet-Dateiformat und verwendet außerdem PrestogreSQL für die Verbindung mit Presto. OpenSpan entschied sich für Amazon EMR und Amazon S3 für die kosteneffiziente Verarbeitung der Daten in Gigabyte-Menge, die man dort täglich von Kunden erhält.

Kanmu ist ein japanisches Startup-Unternehmen in der Finanzdienstleistungsbranche und bietet kartenbezogene Angebote auf der Grundlage der Kreditkartennutzung des Kunden. Kanmu migrierte von Hive zu der Verwendung von Presto in Amazon EMR. Ausschlaggebend war die Möglichkeit für das Ausführen von explorativen und iterativen Analysen in interaktiver Geschwindigkeit, die gute Leistung in Verbindung mit Amazon S3 und Skalierbarkeit für das Abfragen großer Datensätze. Kanmu nutzt Fluentd-plugin-s3 für das Verschieben von Daten in Amazon S3 per Push-Verfahren, das Optimized Row Columnar-Format (ORC, optimiertes spaltenbasiertes Layout), um Daten zu speichern. Shib, ein node.js-basierter Webclient, wird für das Ausführen von Abfragen genutzt.



  1. Starten eines Amazon EMR-Cluster mit Presto und Airpal.
  2. Erfahren Sie, wie Presto in Amazon EMR konfiguriert wird.