Abo
  • Services:
Anzeige
Google verrät Details zum Bigtable-Nachfolger Spanner.
Google verrät Details zum Bigtable-Nachfolger Spanner. (Bild: Google)

Spanner: Googles globale Datenbank

Google verrät Details zum Bigtable-Nachfolger Spanner.
Google verrät Details zum Bigtable-Nachfolger Spanner. (Bild: Google)

Seit rund drei Jahren ist Spanner bei Google im Einsatz, in der vergangenen Woche veröffentlichte Google nun Details zu Spanner, das Google-Systeme wie Bigtable und Megastore ablösen soll. Dabei wird deutlich: Google ist seiner Konkurrenz einen Schritt voraus.

Mit Ansätzen wie Mapreduce und Bigtable hat Google die Art und Weise, wie große Datenmengen verarbeitet werden, maßgeblich beeinflusst. Mapreduce ist die Grundlage von Apache Hadoop, das heute von vielen Unternehmen eingesetzt wird, bei HBase wurde nach dem Vorbild von Bigtable entwickelt. Die Idee hinter Mapreduce und auch Bigtable hatte Google zuvor jeweils in Form von wissenschaftlichen Aufsätzen erläutert. Nun erläutert Google mit Spanner ein System, das bei Google Mapreduce und Bigtable ablöst und einige neue Ansätze enthält.

Anzeige

Google selbst setzt Spanner seit rund drei Jahren ein. Es ist die Grundlage für F1, der Datenbank hinter Googles Werbenetzwerk. Google hat dabei MySQL durch F1 ersetzt, denn F1 soll so ausfallsicher und skalierbar sein wie NoSQL-Datenbanken, dabei aber den Vorteil einer SQL-Datenbank bieten. Möglich macht dies Spanner.

Googles global verteilte Datenbank

Google beschreibt Spanner als global verteilte Datenbank, die skalierbar, multiversional und synchron repliziert wird. Dabei handle es sich um das erste System, das Daten im globalen Maßstab verteilt und dennoch aus externer Sicht konsistente, verteilte Transaktionen unterstützt. Dabei soll Spanner eine hohe Verfügbarkeit und minimale Latenzen beim Lesen und Schreiben von Daten bieten.

Der Schlüssel dazu sind Zeitstempel, partielles Locking und synchrone Replikation. Spanner basiert zwar auf Ideen aus Bigtable, ist aber ein deutlicher Schritt hin zu einem global verteilten relationalen Datenbankmanagementsystem. So soll Spanner das von Jeff Dean 2009 formulierte Ziel erreichen: ein System, das mehrere Exabyte (10^18 Byte) Daten in mehreren Billionen Verzeichnissen auf mehreren Millionen Maschinen in tausenden Rechenzentren und einem Namensraum auf der ganzen Welt verteilt.

Letztendlich soll Spanner so extern konsistente, globale Schreibtransaktionen mit synchroner Replikation, nicht blockierende Lesezugriffe auf Daten der Vergangenheit und lockfreie Nur-Lese-Transaktionen bieten. Die Daten werden dabei semirelational gespeichert, wobei kleine Schemaänderungen vorgenommen werden können, ohne dass dazu die gesamte Datenbank gesperrt werden muss. Die Abfrage erfolgt über ein SQL-ähnliches Interface, die Verteilung der Daten erledigt Spanner vollautomatisch, einschließlich Auto-Rebalancing. Die Kontrolle über die Datenreplikation und -verortung liegt aber bei der jeweiligen Applikation.

Wie Spanner funktioniert

Die große Neuerung an Spanner ist dessen Umgang mit Zeit. Sämtliche Einträge in der Datenbank werden mit einem Zeitstempel versehen, so dass Spanner jederzeit erkennen kann, welcher Eintrag neuer ist. Da dies aber über mehrere auf der ganzen Welt verteilte Rechenzentren funktionieren soll, muss das System aber damit umgehen können, dass die Zeit in den einzelnen Systemen voneinander abweicht.

Dazu setzt Google zum einen auf ein System aus GPS-Empfängern und Atomuhren in den Rechenzentren, um dafür zu sorgen, dass die Zeit überall möglichst synchron gehalten wird. Zum anderen führt Google aber einen Unsicherheitsfaktor ein, der die trotz GPS und Atomuhren auftretenden Zeitdifferenzen ausgleicht. Das sich daraus ergebende Zeitintervall nennt Google "TrueTime".

Truetime garantiert, dass eine Transaktion in dem angegebenen Intervall stattgefunden hat, ganz gleich, welches System in welchem Rechenzentrum an welchem Ort auf der Welt diese abgewickelt hat. Das Intervall wird ständig angepasst, wobei Spanner davon ausgeht, dass die Abweichung der Uhren in den einzelnen Systemen steigt, bis diese wieder mit einem Zeit-Master abgeglichen werden. Die angenommene Abweichung schwankt bei Google zwischen 1 und 7 ms. Sie liegt im Mittel bei 4 ms. Alle 30 Sekunden holt sich der Zeit-Deamon die aktuelle Zeit.

Lesende Zugriffe verwenden immer einen Zeitstempel: Entweder wird dieser explizit angegeben oder vom System automatisch zugewiesen. So kann sichergestellt werden, dass Antworten nur von einem replizierenden Server kommen, dessen Datenbestand aktuell genug ist.

Die Zeitstempel werden auch bei Schemaänderungen genutzt. Spanner verfügt dazu über eine spezielle Transaktion für atomare Schemaänderungen, die die Datenbank nicht blockieren. Einer solchen Schemaänderung wird ein in der Zukunft liegender Zeitstempel zugewiesen, ab dem dann alle Systeme das neue Schema nutzen.


eye home zur Startseite
Schattenwerk 25. Sep 2012

Gibts zu diesen Seiten Links? Würde mich persönlich mal interessieren!

Neuro-Chef 24. Sep 2012

Beides, wenn das Fenster im 1. Stock oder höher liegt ;-)

Neuro-Chef 24. Sep 2012

http://www.getdigital.de/images/produkte/t4/t4_sticker-trollface.jpg SCNR :D

Spaghetticode 24. Sep 2012

(k. T.)

BLi8819 24. Sep 2012

Wäre doch eine viel schönere Überschrift gewesen :-D :-D Aber guter Artikel. ;-)



Anzeige

Stellenmarkt
  1. ASI DATAMYTE GmbH, Lübeck oder Stuttgart
  2. ENERCON GmbH, Aurich
  3. regio iT gesellschaft für informationstechnologie mbh, Aachen, Gütersloh
  4. Fresenius Medical Care Deutschland GmbH, Bad Homburg


Anzeige
Top-Angebote
  1. 19,99€ inkl. Versand
  2. 19,99€ inkl. Versand
  3. bei Bezahlung per Paydirekt - 50€ Mindestbestellwert

Folgen Sie uns
       

Anzeige
Whitepaper
  1. Leitfaden für den gezielten Einsatz von SAP HANA
  2. Data Governance Framework für effektive Datenwertschöpfung
  3. SAP HANA Integration von der Planung bis zum Hosting


  1. Mobilfunkausrüster

    Welche Frequenzen für 5G in Deutschland diskutiert werden

  2. XMPP

    Bundesnetzagentur will hundert Jabber-Clients regulieren

  3. Synlight

    Wie der Wasserstoff aus dem Sonnenlicht kommen soll

  4. Pietsmiet

    "Alle Twitch-Kanäle sind kostenpflichtiger Rundfunk"

  5. Apache-Lizenz 2.0

    OpenSSL plant Lizenzwechsel an der Community vorbei

  6. 3DMark

    Overhead-Test ersetzt Mantle durch Vulkan

  7. Tastatur-App

    Nutzer ärgern sich über Verschlimmbesserungen bei Swiftkey

  8. Kurznachrichten

    Twitter erwägt Abomodell mit Zusatzfunktionen

  9. FTTH

    M-net-Glasfaserkunden nutzen 120 GByte pro Monat

  10. Smartphone

    Google behebt Bluetooth-Problem beim Pixel



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Airselfie im Hands on: Quadcopter statt Deppenzepter
Airselfie im Hands on
Quadcopter statt Deppenzepter
  1. Fiberglas und Magneten Wabbeliger Quadcopter übersteht Stürze
  2. Senkrechtstarter Solardrohne fliegt wie ein Harrier
  3. Mobiler Startplatz UPS-Lieferwagen liefert mit Drohne Pakete aus

Tuxedo Book XC1507 v2 im Test: Linux ist nur einmal besser
Tuxedo Book XC1507 v2 im Test
Linux ist nur einmal besser
  1. Gaming-Notebook Razer aktualisiert Blade 14 mit Kaby Lake und 4K-UHD
  2. MSI GS63VR und Gigabyte Aero 14 im Test Entscheidend ist der Akku

BSI: Schützt euer Owncloud vor Feuer und Wasser!
BSI
Schützt euer Owncloud vor Feuer und Wasser!
  1. VoIP Deutsche Telekom hatte Störung der IP-Telefonie
  2. Alte Owncloud und Nextcloud-Versionen Parteien und Ministerien nutzen unsichere Cloud-Dienste
  3. NFC Neuer Reisepass lässt sich per Handy auslesen

  1. Re: Marketprice Skimming ist einfach eine Frechheit!

    motzerator | 18:47

  2. Re: Komischer Vergleich

    Dragos | 18:47

  3. "Over-The-Top-Dienste"

    lumines | 18:45

  4. Re: Was will die Bundesnetzagentur denn machen?

    stiGGG | 18:45

  5. Re: Schafft Deutschland jetzt for-profit...

    Yeeeeeeeeha | 18:45


  1. 17:45

  2. 17:32

  3. 17:11

  4. 16:53

  5. 16:38

  6. 16:24

  7. 16:09

  8. 15:54


  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