Amazons Autovermietung gegen Googles Paketdienst
Aufregung in der Web-Entwickler-Szene: Google stellte gestern seinen neuen Dienst Google App Engine vor. Dank dieser neuen Plattform können Entwickler ihre Web-Applikationen auf Googles legendär skalierbarer Infrastruktur laufen lassen.
Auf den ersten Blick sieht das nach direkter Konkurrenz zu Amazons schon länger bestehenden Web Services aus, die ähnliche Funktionalität bieten.
Ist es aber nicht. Oder zumindest noch nicht.
Ich verwende in meinem eigenen aktuellen Startup-Projekt Amazons Dienste jeden Tag intensiv und habe mir heute natürlich gleich Googles neuste Plattform sehr genau angeschaut. Beide Firmen bieten beeindruckende Leistungen, die die IT-Welt revolutionieren werden, verfolgen aber einen grundlegend anderen Ansatz.
Um eine Metapher aus der Logistikwelt zu bemühen: Amazons Web Services sind sozusagen das Äquivalent zu einer Autovermietung.
Man mietet sich bei Amazon virtuelle Server, virtuellen Harddiskplatz oder virtuelle Datenbankinstanzen. Damit kann man machen, was man will, aber man muss alles selbst zusammenschrauben — oder, um in der Metapher zu bleiben, man muss selber fahren, kann sich dafür aber die Reiseroute beliebig aussuchen. Auf Amazon EC2 bekommt man virtuelle Linux-Instanzen, die man nach Herzenslust konfigurieren kann. Das ist extrem flexibel, aber auch recht aufwendig und kompliziert.
Google App Engine ist hingegen eher so was wie ein Paketdienst — Fedex, DHL oder UPS. Dieser neue Dienst ermöglicht die effiziente und sehr kostengünstige Lösung einer begrenzten Menge an Problemstellungen — wie eben z.B. Fedex das Befördern eines Pakets von A nach B löst, aber nicht viel mehr. Und zu Googles Angebot gehören auch Dinge, die man mit Amazons Infrastruktur nicht oder nur mit sehr viel Aufwand lösen könnte. Beispielsweise ist die Skalierung der Rechenleistung bei mehr Leistungsbedarf bei Google vollautomatisch (wird zumindest versprochen — in der aktuellen Version gibt es noch massive Einschränkungen), bei Amazon muss man hingegen manuell zusätzliche Server aktivieren.
Dafür ist man bei Google aber in vielen Dingen sehr eingeschränkt. Programmiert werden darf im Moment nur in der Spache Python (eine exzellente Wahl übrigens — diese simple und doch enorm flexible Sprache ist mir auch schon ans Herz gewachsen). Die zur Verfügung stehenden Programmbibliotheken sind stark reduziert, und Google legt einem nahe, die Google-eigenen APIs fleissig zu nutzen. Als Beispiel: Wer Daten speichern will, kann das nicht mit den üblichen relationalen Datenbanken wie MySQL oder in normalen Dateien tun, sondern muss Googles eigenen “Datastore” nutzen. Sinnvoll für die Skalierbarkeit, aber limitierend für den Programmierer.
Auch wer hofft, Googles Maschinenpark für aufwendige Berechnungen nutzen zu können, wird zumindest vorerst enttäuscht sein. Erlaubt sind nur ganz klassische Web-Anwendungen, die einen Request annehmen und innerhalb von Sekunden antworten. Das reduziert die Nützlichkeit doch erheblich.
Wer Anwendungen für Googles Plattform schreibt, ist mehr oder weniger an diese Infrastruktur gebunden, während viele für Amazons Web Services entwickelte Applikationen recht problemlos auf x-beliebigen Linux-Rechnern laufen können. Googles Konzept ist also so ähnlich wie, sagen wir mal, Microsoft Windows: Der Programmierer kriegt sehr viel Funktionalität von der Plattform angeboten, aber ist daran auch stark gebunden.
Aber wie gesagt, dafür ist der Einstieg bei Google deutlich leichter. Wer ein bisschen in einer gängigen Programmiersprache programmieren kann, dürfte mit Google App Engine relativ schnell in der Lage sein, eine brauchbare Web-Anwendung zu produzieren. Und dank Googles Infrastruktur muss man sich um die Kapazität im Erfolgsfall keine Gedanken machen.
Beide Plattformen haben ihre Stärken und Schwächen und ergänzen sich recht gut. Fortgeschrittene Entwickler werden mit Googles Einschränkungen kaum leben können und bei Amazon bleiben, aber Google App Engine wird es ermöglichen (wenn es dann mal fertig wird), dass buchstäblich jeder Hobbyprogrammierer zum Web-Mogul werden kann. So oder so ist das alles ein grosser Schritt in die Zukunft der IT: Cloud Computing, die jederzeitige Verfügbarkeit von Rechenleistung sozusagen aus der Steckdose.
» Mehr lesen: Cloud Computing (14)
» Nächster Artikel: Nette Idee: Gründerszene wird Quasi-Presseportal für das Web 2.0
» Älterer Artikel: Vorhang auf für Web 2.0 – Der Film
» Drucken
» Merken/E-Mail
3 Kommentare zu diesem Artikel
Diesen Artikel kommentieren
Wir sind sehr an einer offenen Diskussion interessiert, behalten uns aber vor, beleidigende Kommentare sowie solche, die offensichtlich zwecks Suchmaschinenoptimierung abgegeben werden, zu editieren oder zu löschen. Mehr dazu in unseren Kommentarregeln.

neuerdings.com
medienlese.com
imgriff.com
fokussiert.com
netzwertig.com
gamgea.com




Artikel per RSS
fritz
Sehr interessanter Artikel und Vergleich. Eine andere Analogie:
- Google verkauft dir ein fertiges Auto, damit kann man jetzt fahren und bestimmte Taetigkeiten erledigen
- Amazon verkauft dir Einzelteile wie Motor, Sitze, Karosserie. Damit kann man auch ein Auto bauen oder vielleicht einen Wohnwagen zusammenbasteln. Braucht aber mehr Aufwand und Knowhow als bei Google.
ben_
Über den Google-Microsoft-Vergleich habe ich, sage wir mal, geschmunzelt. Und Schmunzeln - das lehrete uns der große Max Goldt - ist Vanille für die Seele.
Markus Breuer (Pham Neutra)
Schöner Vergleich Andreas, und anders als die meisten anderen Vergleiche, sogar mal zutreffend.
Auch ich bin ein großer Fan der AWS, seitdem ich die Ehre hatte, der ersten Präsentation von Meister Vogels zu diesem Thema beizuwohnen. Aber AWS (gerade die EC2 Seite und der Datenaustausch zwischen Server-Instanzen) ist in Summe schon von beeindruckender Komplexität und wirklich etwas für Profis.
Was Google - einmal mehr - tut, ist, die Idee massentauglich zu machen. Und das gewählte Framework ist ebenfalls eine ausgezeichnete Wahl. Ich bin mir sogar ziemlich sicher, dass Google’s Django-Derivat zusammen mit dem Datastore-Ansatz bald nicht nur auf Google-Servern zu finden sein wird. Spasseshalber könnte man ja sogar Google’s SDK nehmen und auf einer EC2-Instanz laufen lassen ;) (Google’s single threaded Web-Server zu nehmen und gegen einen multi-threaded Web-Server auszutauschen, dürfte nicht allzu schwer sein.)
Deswegen ist der einzige Punkt, wo ich Dir nicht zustimmen kann, “Wer Anwendungen für Googles Plattform schreibt, ist mehr oder weniger an diese Infrastruktur gebunden” Ich denke tatsächlich, dass die Portierung einer GAE-Anwendung auf Standard-Linux (oder Solaris) Server recht unaufwendig sein dürfte, wenn die Anwendungsarchitektur ordentlich aufgebaut ist.