Presto: Wie Facebook 300 Petabyte in Echtzeit analysiert

Facebook hat Presto als Open Source veröffentlicht, eine interaktive SQL-Engine für Hadoop, mit der sich große Datenmengen in kurzer Zeit analysieren lassen. Presto soll dabei zehnmal schneller sein als das Gespann aus Hive und Mapreduce.

Artikel veröffentlicht am ,
Nicht nur für Hadoop
Nicht nur für Hadoop (Bild: Presto)

Facebook speichert nach eigenen Angaben mehr als 300 Petabyte an Daten und nutzt diese für verschiedene Applikationen. Dabei greift Facebook auf unterschiedliche Ansätze zur Datenanalyse zurück, von der Batch-Verarbeitung, um Verknüpfungen zwischen Nutzern zu modellieren, bis zu maschinellem Lernen und interaktiven Analysen, die in Echtzeit ablaufen. Gerade Letzteres ist bei Daten in der Größenordnung von Facebook eine enorme Herausforderung, denn je schneller die Systeme auf die Abfragen der Analysten antworten, desto besser lassen sich die Daten auch untersuchen.

Inhalt:
  1. Presto: Wie Facebook 300 Petabyte in Echtzeit analysiert
  2. Nicht nur für Hadoop

Dazu hat Facebook ein Data-Warehouse aufgebaut, dessen Daten in einigen wenigen großen Hadoop-Clustern gespeichert sind und gewöhnlich mittels Mapreduce und Hive analysiert werden. Doch bei Datenmengen in Petabyte kommt dieser Ansatz an seine Grenzen, weshalb Facebook ein interaktives Analysesystem entwickelt hat, das für kurze Antwortzeiten optimiert ist: Presto.

Verteilte SQL-Query-Engine für Ad-hoc-Analysen

Bei Presto handelt es sich um eine verteilte SQL-Query-Engine, die für Ad-hoc-Analysen mit hoher Geschwindigkeit optimiert ist. Presto unterstützt Ansi SQL einschließlich komplexer Abfragen, Aggregationen, Joins und Fensterfunktionen. Dabei sendet der Client eine SQL-Abfrage an den Presto-Koordinator, der die Anfrage parst und analysiert und die Ausführung plant. Anschließend stellt ein Scheduler eine Ausführungspipeline zusammen, verteilt Aufgaben an die Nodes, die möglichst nah an den Daten liegen, und überwacht den Fortschritt. Der Client erhält dann Daten aus der Output-Stage, die wiederum von darunterliegenden Stages gefüllt wird.

Das Ausführungsmodell von Presto unterscheidet sich fundamental von Hive und Mapreduce: Hive übersetzt Abfragen in mehrere Stufen von Mapreduce-Tasks, die dann nacheinander ausgeführt werden. Dabei liest jede Task Daten von den Platten und schreibt Zwischenergebnisse zurück. Presto hingehen nutzt kein Mapreduce, sondern eine eigene Abfrage- und Ausführungsengine, die der SQL-Semantik folgt.

Um das Scheduling zu verbessern, werden alle Berechnungen im Speicher abgewickelt und zwischen verschiedenen Stages durchgereicht, um unnötiges I/O und die damit verbundenen Latenzen zu vermeiden. Dabei werden mehrere Stages parallel ausgeführt und Daten von einer Stage in die andere gestreamt, sobald sie zur Verfügung stehen. Das vermeidet Verzögerungen und sorgt für schnellere Antwortzeiten.

Umgesetzt wurde Presto in Java. Die Software kompiliert Teile des Query-Plans dynamisch in Byte-Code, aus dem die JavaVM optimierten nativen Maschinencode erzeugt.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Nicht nur für Hadoop 
  1. 1
  2. 2
  3.  


Aktuell auf der Startseite von Golem.de
Updates für GPT-3 und GPT-4
GPT im Geschwindigkeitsrausch

OpenAIs Updates für GPT-4 und GPT-3 machen die Modelle zuverlässiger, vor allem aber anpassungsfähiger. Die Änderungen und neuen Features im Detail.
Von Fabian Deitelhoff

Updates für GPT-3 und GPT-4: GPT im Geschwindigkeitsrausch
Artikel
  1. Candy Crushed: Royal Match wird profitabelstes Mobile Game
    Candy Crushed
    Royal Match wird profitabelstes Mobile Game

    Die langanhaltende Dominanz von Candy Crush Saga ist vorbei. Das meiste Geld verdient jetzt ein Start-up aus Istanbul mit einem Puzzlespiel.

  2. Datenschutz: ChatGPT-Exploit findet E-Mail-Adressen von Times-Reportern
    Datenschutz
    ChatGPT-Exploit findet E-Mail-Adressen von Times-Reportern

    Eigentlich sollte der Chatbot auf diese Anfrage gar nicht antworten. Tut er es dennoch, lauern womöglich noch viel brisantere Informationen.

  3. Donald E. Knuth: 30 Jahre Weihnachtsvorlesungen frei verfügbar
    Donald E. Knuth
    30 Jahre Weihnachtsvorlesungen frei verfügbar

    Ein bisschen theoretische Informatik, Algorithmen oder Mathematik zu Weihnachten? Wer das mag, kann nun sogar alle Vorlesungen hintereinander ansehen.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    • Daily Deals • TeamGroup Cardea Graphene A440 2 TB mit zwei Kühlkörpern 112,89€ • Logitech G915 TKL LIGHTSYNC RGB 125,11€ • AVM FRITZ!Repeater 3000 AX 129€ • Philips Ambilight 77OLED808 2.599€ • MindStar: Patriot Viper VENOM 64 GB DDR5-6000 159€, XFX RX 7900 XT Speedster MERC 310 Black 789€ [Werbung]
    •  /