• IT-Karriere:
  • Services:

Vitess: Google will MySQL beschleunigen

Google hat mit Vitess ein Projekt gestartet, das MySQL in typischen Webszenarien beschleunigen und so eine Alternative zu NoSQL-Systemen darstellen soll. Mit Vitess soll MySQL besser skalieren.

Artikel veröffentlicht am ,
Vitess nutzt MySQL als Backend.
Vitess nutzt MySQL als Backend. (Bild: MySQL)

Es muss nicht immer NoSQL sein, wenn sehr große Datenbanken in Webapplikationen zu verarbeiten sind, meint Google und macht sich mit dem Projekt Vitess (vitesse - französisch für Geschwindigkeit) daran, MySQL für den Einsatz in solchen Szenarien fit zu machen.

Stellenmarkt
  1. SENSIS GmbH, Viersen bei Mönchengladbach
  2. Merz Pharma GmbH & Co. KGaA, Frankfurt am Main

Vitess arbeitet wie eine Art Proxy, bildet aber nur ein vereinfachtes SQL-Interface ab und bündelt MySQL-Verbindungen. Selbst verzichtet Vitess auf Sessions, so dass sich Verbindungen schneller aufbauen lassen.

Vitess verzichtet auch auf die ACID-Kriterien Atomicity und Consistency. Atomarität werde für die meisten Webanwendungen nicht benötigt. Stattdessen garantiert Vitess die Atomarität nur für einzelne Entitäten anhand eines Schlüssels, was es beispielsweise ermöglicht, Daten anhand von User-IDs auf mehrere Server zu verteilen. Zudem ist Vitess nur "Eventually Consistent", wie man es von vielen NoSQL-Datenbanken kennt. Dadurch lassen sich Lesezugriffe leichter auf viele Systeme verteilen. Es ist aber möglich, Daten explizit vom Master-Server abzufragen, wenn es auf Konsistenz ankommt.

Für einen schnell Zugriff auf einzelne Zeilen soll ein Row-Cache sorgen. MySQLs Buffer-Cache ist hingegen eher für Situationen geeignet, in denen Indizes und Tabellen durchsucht werden sollen. Der Zeilencache von Vitess erlaubte es, bestimmte Tabellen für einen schnellen Random-Zugriff auszuwählen.

Sharding vereinfacht

Das Sharding, bei dem eine Datenbank anhand eines Schlüssel auf mehrere Server verteilt wird, soll Vitess vereinfachen. Dazu werden alle Tabellen anhand mehrerer Schlüssel indexiert und so entsteht eine logische Repräsentation der gesamten Datenbank. Die Shard-Map kann so durch einen einfachen In-Memory-Aufruf gelesen werden. Erhält ein Shard zu viele Anfragen, kann Vitess ihn in zwei Shards aufsplitten. Zudem kann Vitess Shards zusammenführen.

Administratoren können dabei einen Replikationsfaktor für einen Keyspace angeben. Vitess sorgt dann dafür, dass ausreichend viele Replikationen der Master-Datenbank vorliegen. Vitess unterstützt auch Setups, die sich über mehrere Rechenzentren erstrecken, wobei alle Master-Datenbanken in einem Rechenzentrum stehen müssen. Bei Ausfällen oder Wartungsarbeiten kann Vitess automatisch einen neuen Master bestimmen.

Vitess wurde in Googles Programmiersprache Go umgesetzt und steht unter der BSD-Lizenz. Der Code des Projekts findet sich auf Github.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Anzeige
Spiele-Angebote
  1. 23,99€
  2. 31,99€

Folgen Sie uns
       


Playstation 5: Sony macht das Rennen
Playstation 5
Sony macht das Rennen

Die Playstation 5 liegt preislich zwischen Xbox Series S und Xbox Series X. So schlägt Sony zwei Microsoft-Konsolen mit einer eigenen.
Ein IMHO von Marc Sauter

  1. Sony Weitere Playstation 5 für Vorbesteller angekündigt
  2. Spielekonsole Playstation 5 ist nicht zu älteren Spielen kompatibel
  3. Hogwarts Legacy Potter-Solo-RPG und Final Fantasy 16 angekündigt

Java 15: Sealed Classes - Code-Smell oder moderne Erweiterung?
Java 15
Sealed Classes - Code-Smell oder moderne Erweiterung?

Was bringt das Preview Feature aus Java 15, wie wird es benutzt und bricht das nicht das Prinzip der Kapselung?
Eine Analyse von Boris Mayer

  1. Java JDK 15 geht mit neuen Features in die General Availability
  2. Java Nicht die Bohne veraltet
  3. JDK Oracle will "Schmerzen" von Java beheben

Beoplay H95 im Test: Toller Klang, aber für 800 Euro zu schwache ANC-Leistung
Beoplay H95 im Test
Toller Klang, aber für 800 Euro zu schwache ANC-Leistung

Der Beoplay H95 ist ein ANC-Kopfhörer mit einem tollen Klang. Aber wer dafür viel Geld ausgibt, muss sich mit einigen Kompromissen abfinden.
Ein Test von Ingo Pakalski


      •  /