Abo
  • Services:
Anzeige
RocksDB als Open Source veröffentlicht
RocksDB als Open Source veröffentlicht (Bild: Facebook)

RocksDB: Weil Googles LevelDB für Facebook zu langsam ist

RocksDB als Open Source veröffentlicht
RocksDB als Open Source veröffentlicht (Bild: Facebook)

Facebook hat mit RocksDB eine einfache Embedded-Datenbank entwickelt. Sie basiert auf Googles LevelDB, die in ihrer Originalversion für Facebook zu langsam war, und soll für einen schnellen Zugriff auf lokale Daten sorgen, auch wenn diese nicht in den Arbeitsspeicher passen.

Jedem, der Facebook aufruft, wird eine persönliche Startseite angezeigt, die bei jedem Nutzer anders aussieht. Caching hilft dabei nicht weiter, so dass Facebook mit seinen mittlerweile 1,2 Milliarden Nutzern die Startseiten in Echtzeit aus einer großen Datenmenge von mehreren Petabyte zusammenstellen muss. Um das zu schaffen, versucht Facebook ständig, die dafür zur Verfügung stehenden Werkzeuge zu verbessern. Dabei ist RocksDB ein Embedded-Key-Value-Store, der seit einigen Tagen quelloffen zur Verfügung steht.

Anzeige

Zehnmal schneller als LevelDB

Ausgangspunkt für RocksDB war Googles Embedded-Datenbank LevelDB, die sich in Facebooks Tests aber als zu langsam erwies. RocksDB ist eine C++-Bibliothek, die sich in bestehende Applikationen einbetten lässt. Daten liegen dabei lokal auf dem gleichen System vor, auf dem auch die Applikation läuft. Das soll für schnellere Antwortzeiten sorgen, verglichen mit Systemen, bei denen die Applikation über das Netzwerk auf die Datenbank zugreift. Dabei setzt Facebook ganz bewusst auf schnellen Flash-Speicher und Systeme mit vielen CPU-Kernen, um auch Datenmengen auf einem System zu halten, die nicht in den Arbeitsspeicher passen.

Das Verhindern von Locks und die Vermeidung zu vieler Context-Wechsel soll darüber hinaus für hohe Geschwindigkeit sorgen, so dass RocksDB in der Lage ist, schnellen Flash-Speicher auszureizen, um auf einem System mehr als 1 Million IOPS zu erreichen. Im Vergleich zu LevelDB soll RocksDB beim Schreiben zufälliger Daten rund zehnmal schneller sein, bei zufälligen Lesezugriffen rund 30 Prozent schneller.

Maximale Leistung auf einer Maschine

Dabei setzt Facebook auf eine flexible Architektur, die es erlaubt, einzelne Komponenten auszutauschen, ohne an den übrigen Komponenten von RocksDB etwas zu verändern. So lassen sich beispielsweise verschiedene Kompressionsbibliotheken wie Snappy, zlib oder bzip verwenden und auch neue leicht testen. Auch lassen sich eigene Compaction-Filter einsetzen, was Facebook selbst nutzt, um Daten nach Ablauf einer bestimmten Frist zu löschen.

So soll sich RocksDB letztendlich für IO-limitierte Workloads ebenso eignen wie für In-Memory-Datenbanken als auch solche, bei denen Daten nur einmal geschrieben, aber oft gelesen werden. Unter IO-limitierten Workloads versteht Facebook solche, bei denen die Daten nicht in den Arbeitsspeicher passen und oft aus dem Storage gelesen werden müssen.

RocksDB ist ausdrücklich keine verteilte Datenbank, sondern darauf ausgerichtet, auf einer einzelnen Maschine maximale Leistung zu bringen.

Facebook hat RocksDB auf Github im Quellcode veröffentlicht. Weitere Details zu RocksDB finden sich unter rocksdb.org.


eye home zur Startseite
dabbes 27. Nov 2013

https://github.com/facebook/rocksdb/wiki/Rocksdb-Architecture-Guide#persistency



Anzeige

Stellenmarkt
  1. PUSCH WAHLIG LEGAL, Berlin
  2. FIEGE Logistik Stiftung & Co. KG, Hamburg, Greven
  3. Power Service GmbH, Köln
  4. Haldex Brake Products GmbH, Heidelberg


Anzeige
Spiele-Angebote
  1. + Prämie (u. a. Far Cry 5, Elex, Assassins Creed Origins) für 62€
  2. (-72%) 5,55€
  3. 1,29€

Folgen Sie uns
       


  1. Signal Foundation

    Whatsapp-Gründer investiert 50 Millionen US-Dollar in Signal

  2. Astronomie

    Amateur beobachtet erstmals die Geburt einer Supernova

  3. Internet der Dinge

    Bosch will die totale Vernetzung

  4. Bad News

    Browsergame soll Mechanismen von Fake News erklären

  5. Facebook

    Denn sie wissen nicht, worin sie einwilligen

  6. Opensignal

    Deutschland soll auch beim LTE-Ausbau abgehängt sein

  7. IBM Spectrum NAS

    NAS-Software ist klein gehalten und leicht installierbar

  8. Ryzen V1000 und Epyc 3000

    AMD bringt Zen-Architektur für den Embedded-Markt

  9. Dragon Ball FighterZ im Test

    Kame-hame-ha!

  10. Für 4G und 5G

    Ericsson und Swisscom demonstrieren Network Slicing



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
HP Omen X VR im Test: VR auf dem Rücken kann nur teils entzücken
HP Omen X VR im Test
VR auf dem Rücken kann nur teils entzücken
  1. 3D Rudder Blackhawk Mehr Frags mit Fußschlaufen
  2. Kreativ-Apps für VR-Headsets Austoben im VR-Atelier
  3. Apps und Games für VR-Headsets Der virtuelle Blade Runner und Sport mit Sparc

Entdeckertour angespielt: Assassin's Creed Origins und die Spur der Geschichte
Entdeckertour angespielt
Assassin's Creed Origins und die Spur der Geschichte
  1. Assassin's Creed Denuvo und VM Protect bei Origins ausgehebelt
  2. Sea of Thieves angespielt Zwischen bärbeißig und böse
  3. Rogue Remastered Assassin's Creed segelt noch mal zum Nordpol

Axel Voss: "Das Leistungsschutzrecht ist nicht die beste Idee"
Axel Voss
"Das Leistungsschutzrecht ist nicht die beste Idee"
  1. Leistungsschutzrecht EU-Ratspräsidentschaft schlägt deutsches Modell vor
  2. Fake News Murdoch fordert von Facebook Sendegebühr für Medien
  3. EU-Urheberrechtsreform Abmahnungen treffen "nur die Dummen"

  1. Re: ich bin für Klassisches

    Neuro-Chef | 01:53

  2. Good News

    Joker86 | 01:21

  3. Re: Kann ich nur bestätigen

    beaglow | 01:05

  4. Re: Die Praxis wird noch zunehmen

    User_x | 00:59

  5. Re: Wollt ihr den totalen ... ,äh, die totale...

    Gucky | 00:52


  1. 21:26

  2. 19:00

  3. 17:48

  4. 16:29

  5. 16:01

  6. 15:30

  7. 15:15

  8. 15:00


  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