Knapp ein halbes Jahr nach der ersten Ankündigung hat Google die Datenbank-Analyse BigQuery für alle User veröffentlicht. Mit BigQuery lassen sich große Datenmengen in der Cloud mit Googles Server-Power analysieren und auswerten – und das bis zu einer Grenze von 100 GB Daten pro Monat gratis.
Der Zugriff auf BigQuery erfolgt entweder über die Command Line, via REST API oder mit einem simplen Web-Interface – auf letzteres gehen wir noch näher ein. Um große Datenmengen zu analysieren, müssen diese erst einmal im CSV-Format zu BigQuery hochgeladen und unter der gewünschten Tabelle gespeichert werden. Diese Daten bleiben dort dauerhaft gespeichert und können dann mit einer modifizierten SQL-Syntax ausgewertet werden.
Um BigQuery nutzen zu können, muss es erst einmal in der API Console aktiviert werden. Anfangs stehen zu Übungszwecken einige Beispieldatenbanken zur Verfügung, z.B. Informationen über _alle_ Wikipedia-Artikel. Die Anzahl der Querys ist nicht begrenzt, Google setzt das Limit bei 100 GB analysierter Daten. Wer mehr möchte muss die Brieftasche öffnen und kann diese Grenze auf bis zu 2 Terabyte erhöhen.
BigQuery Browser Tool
Das Browser-Tool ist sehr einfach aufgebaut: Auf der linken Seite befindet sich der Button zum erstellen eines neuen Querys, Links zu allen älteren Querys und Jobs (Natürlich speichert Google auch diese) und darunter eine Liste der verfügbaren Datenbanken. Die Datenbanken sind in beliebig vielen Datasets verteilt und können dadurch schon einmal grob sortiert werden. Das Hauptfenster besteht aus einem Eingabefeld welches die eigentliche Abfrage enthält. Darunter ist das Ausgabefenster, in welchem das Ergebnis zurückgegeben wird.
Wurde eine Abfrage ausgeführt, wird das Ergebnis in tabellarischer Form dargestellt. Direkt darüber wird noch die Menge der verarbeiteten Daten und die dafür benötigte Zeit angezeigt. Wie man auf dem Screenshot sieht hat BigQuery bei meiner Anfrage 6,79 GB Daten in 11,4 Sekunden verarbeitet – einerseits beeindruckender Wert, andererseits zeigt es dass man schon nach wenigen Abfragen an die 100 GB-Grenze stoßen kann.
Das Ergebnis kann dann wieder als CSV heruntergeladen oder als eine neue Tabelle gespeichert werden – was gerade bei großen Datenmengen praktisch sein kann, um nicht noch einmal wertvolle 7 GB Daten durchsuchen zu müssen.
BigQuery ist keine SQL-Datenbank
Google weist übrigens ausdrücklich darauf hin dass BigQuery keine SQL-Datenbank ist und verweist dafür auf Google Cloud SQL. Die Daten die einmal bei BigQuery hochgeladen wurden, können nämlich nicht mehr bearbeitet sondern nur noch abgerufen werden. Grob gesagt: Es steht nur SELECT, nicht aber UPDATE oder DELETE zur Verfügung. Als Datenbank-Backup taugt es aber allemal 😉
» Google BigQuery
» BigQuery Web-Interface
» Ankündigung im Enterprise-Blog