Abo
  • Services:
Anzeige
Nicht nur für Hadoop
Nicht nur für Hadoop (Bild: Presto)

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.

Anzeige

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.

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.

Nicht nur für Hadoop 

eye home zur Startseite
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...



Anzeige

Stellenmarkt
  1. ANITA Dr. Helbig GmbH, Brannenburg
  2. KNV Logistik GmbH, Erfurt
  3. Landratsamt Calw, Calw
  4. Deutsche Telekom AG, Bonn


Anzeige
Hardware-Angebote
  1. (u. a. Asus GTX 1070 Strix OC, MSI GTX 1070 Gaming X 8G und Aero 8G OC)
  2. 99,90€ statt 204,80€
  3. 308,95€ (Bestpreis)

Folgen Sie uns
       

Anzeige
Whitepaper
  1. Mehr dazu im aktuellen Whitepaper von Freudenberg IT
  2. Mehr dazu im aktuellen Whitepaper von SAS Institute
  3. Mehr dazu im aktuellen Whitepaper von SAS Institute


  1. China

    Dropbox-Alternative Seafile im Streit mit Mutterkonzern

  2. Verizon Communications

    Yahoo hat einen Käufer gefunden

  3. Deutschland

    Preiserhöhung bei Netflix jetzt auch für Bestandskunden

  4. Künstliche Intelligenz

    Softbank und Honda wollen sprechendes Auto bauen

  5. Alternatives Android

    Cyanogen soll zahlreiche Mitarbeiter entlassen

  6. Update

    Onedrive erstellt automatisierte Alben und erkennt Pokémon

  7. Die Woche im Video

    Ausgesperrt, ausprobiert, ausgetüftelt

  8. 100 MBit/s

    Zusagen der Bundesnetzagentur drücken Preis für Vectoring

  9. Insolvenz

    Unister Holding mit 39 Millionen Euro verschuldet

  10. Radeons RX 480

    Die Designs von AMDs Partnern takten höher - und konstanter



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Core i7-6820HK: Das bringt CPU-Overclocking im Notebook
Core i7-6820HK
Das bringt CPU-Overclocking im Notebook
  1. Stresstest Futuremarks 3DMark testet Hardware auf Throttling

Digitalisierung: Darf ich am Sabbat mit meinem Lautsprecher reden?
Digitalisierung
Darf ich am Sabbat mit meinem Lautsprecher reden?
  1. Smart City Der Bürger gestaltet mit
  2. Internetwirtschaft Das ist so was von 2006
  3. Das Internet der Menschen "Industrie 4.0 verbannt Menschen nicht aus Werkhallen"

Edward Snowden: Spezialhülle fürs iPhone warnt vor ungewollter Funkaktivität
Edward Snowden
Spezialhülle fürs iPhone warnt vor ungewollter Funkaktivität
  1. Qualcomm-Chips Android-Geräteverschlüsselung ist angreifbar
  2. Apple Nächstes iPhone soll keine Klinkenbuchse haben
  3. Smarte Hülle Android unter dem iPhone

  1. Re: Gut so, hoffentlich bald alle arbeitslos

    Pjörn | 02:08

  2. Re: Der Grund war eindeutig.

    zampata | 01:26

  3. Re: Immer noch kein HBM?

    ms (Golem.de) | 01:05

  4. Re: AMD ist nicht tot zu bekommen...und das ist...

    ms (Golem.de) | 01:04

  5. Re: 32Kerne? Sind das vCore oder echte Kerne?

    ms (Golem.de) | 01:03


  1. 15:30

  2. 14:13

  3. 12:52

  4. 15:17

  5. 14:19

  6. 13:08

  7. 09:01

  8. 18:26


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel