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.

Stellenmarkt
  1. Solution Engineer (m/f/d)
    Usercentrics GmbH, München
  2. Fachgruppenleitung Informations- und Kommunikationstechnologien (w/m/d)
    Bundesinstitut für Risikobewertung, Berlin
Detailsuche

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
Nextbox von Nitrokey im Test
Die eigene Cloud im Wohnzimmer

Mit der Nextbox hat Nitrokey eine Cloud für zu Hause entwickelt, um die man sich nicht kümmern muss. Dafür kann man sie auf der ganzen Welt erreichen.
Ein Test von Moritz Tremmel

Nextbox von Nitrokey im Test: Die eigene Cloud im Wohnzimmer
Artikel
  1. Pornografie: Hostprovider soll Xhamster sperren
    Pornografie
    Hostprovider soll Xhamster sperren

    Medienwächter haben den Hostprovider von Xhamster ausfindig gemacht. Dieser soll das Pornoportal für deutsche Nutzer sperren.

  2. KI: Gesichtserkennung verhindert Anträge auf Arbeitslosengeld
    KI
    Gesichtserkennung verhindert Anträge auf Arbeitslosengeld

    Um Betrug beim Arbeitslosengeld vorzubeugen, setzen US-Staaten auf eine Gesichtserkennung. Das führt zu zahlreichen Problemen.

  3. SSDs und Monitore zum Knallerpreis beim Amazon Prime Day
     
    SSDs und Monitore zum Knallerpreis beim Amazon Prime Day

    Wer auf der Suche nach neuer Hardware ist, sollte den Prime Day von Amazon nutzen. Hier warten Rabatte auf alle möglichen Artikel.
    Ausgewählte Angebote des E-Commerce-Teams

draftbreaker 12. Nov 2013

Übrigens http://en.wikipedia.org/wiki/Profile-guided_optimization Java ist schnell...

unveu 08. Nov 2013

Man muss ja die ganzen Researcher und Admins langsam umstellen, die kriegen ja nen Schock...


Folgen Sie uns
       


  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Schnäppchen • Amazon Prime Day • SSDs (u. a. Crucial MX500 1TB 75,04€) • Gaming-Monitore • RAM von Crucial • Fire TV Stick 4K 28,99€ • Bosch Professional • Dualsense + Pulse 3D Headset 139,99€ • Gaming-Chairs von Razer uvm. • HyperX Cloud II 51,29€ • iPhone 12 128GB 769€ • TV OLED & QLED [Werbung]
    •  /