(Dieser Blogbeitrag gibt einen Überblick über die Architektur und die technischen Konzepte von Google Wave. Wenn Sie daran interessiert sind, wie Sie Google Wave in Ihren Anwendungen einsetzen können, lesen Sie bitte den Abschnitt Entwickeln mit Google Wave) Auf der Google I/O 2009 hat Google Wave vorgestellt. Wave ist eine neue Art, über Online-Unterhaltungen nachzudenken. Betrachten Sie die folgenden Situationen -
- Sie schreiben einen Blogbeitrag. Jemand kommt vorbei und postet einen wirklich aufschlussreichen Kommentar. Nun möchten Sie oder der Verfasser des Kommentars diesen Kommentar in einen eigenständigen Blogbeitrag umwandeln.
- Sie haben eine lange E-Mail-Diskussion mit einem Kollegen geführt. Nun möchten Sie einen anderen Kollegen dazu einladen. Sie muss den Kontext der Diskussion kennen und wissen, wie sie sich entwickelt hat.
- Sie mailen einigen Kollegen den Entwurf eines Artikels zur Überprüfung. Sie alle schicken Ihnen ihre Kommentare zurück. Viele von ihnen schlagen dieselben Änderungen vor, ohne zu merken, dass diese bereits angesprochen wurden.
Mit den Tools, die wir heute verwenden, wie z.B. E-Mail, Blogs, Instant Messaging usw., erfordert alles eine Art mühsames Kopieren und Einfügen sowie die manuelle Nachverfolgung der vorgenommenen Änderungen.
Gibt es einen besseren Weg?
Das Google Wave-Modell versucht, einen besseren Weg zu bieten , indem es die Unterscheidung zwischen E-Mail, Instant Messaging und anderen Formen von Online-Gesprächen aufhebt. In diesem Modell sind eine E-Mail-Konversation, ein Blog-Post mit seinen Kommentaren oder eine Auktion mit ihren Geboten einfach nur Online-Konversationen mit mehreren Teilnehmern. Auf der Ebene des Datenmodells ist alles, was Sie haben, eine Wave, und Sie können sie auf viele verschiedene Arten betrachten.
Mehrere Teilnehmer können eine Wave gleichzeitig bearbeiten, und der Wave-Client kann die Änderungen in Echtzeit anzeigen. Die an einer Wave vorgenommenen Änderungen werden als eine Reihe von Vorgängen gespeichert. Sie können die Änderungen wieder abspielen oder die Wave auf eine frühere Version zurücksetzen. Auf der Ebene des Datenmodells bilden die Bestandteile der Wave eine Baumstruktur. Sie können einen bestimmten Knoten in eine unabhängige Wave verwandeln.
Kredit: https://en.wikipedia.org/wiki/File:Basicot.png[/caption]
Aus dem Whitepaper Google Wave Operational Transformation -
Wave OT modifiziert die grundlegende Theorie von OT, indem der Client auf die Bestätigung des Servers warten muss, bevor er weitere Operationen senden kann. Wenn ein Server die Operation eines Clients bestätigt, bedeutet dies, dass der Server die Operation des Clients umgewandelt, auf die Wavelet-Kopie des Servers angewendet und die umgewandelte Operation an alle anderen verbundenen Clients gesendet hat. Während der Client auf die Bestätigung wartet, speichert er die lokal erzeugten Operationen und sendet sie später in großen Mengen.
Weitere technische Details zu diesen Themen finden Sie unter Operative Transformation und Google Wave Operative Transformation. Google Wave Datenmodell Eine Wave besteht aus Wavelets. Jedes Wavelet hat eine eindeutige ID innerhalb seiner Wave. Das Wavelet enthält eine Liste von Teilnehmern und eine Reihe von Dokumenten. Ein Dokument in einer Wavelet hat eine eindeutige ID innerhalb seiner Wavelet. Es besteht aus einem XML-Dokument und einer Reihe von Anmerkungen. Einige dieser Anmerkungen spezifizieren das Styling des Textinhalts des Dokuments. Gleichzeitigkeitskontrolle und operative Transformation werden auf der Ebene von Wavelets angewendet. Ein bestimmter Wave-Benutzer kann nur auf eine Teilmenge der Wavelets in dieser Wave zugreifen. Der Zustand eines Wavelets wird vollständig durch eine geordnete Abfolge von Operationen definiert, die auf ihn angewendet wurden. Wave-Clients senden diese Operationen an den Server, um Änderungen am zugrundeliegenden Dokument mitzuteilen, und der Server gibt diese Operationen (ggf. nach einer Transformation) an andere Clients und andere Server weiter, die an der Wave teilnehmen. Ressourcen - Google Wave Datenmodell und Client-Server-Protokoll Google Wave Federation Architektur Operative Umwandlung Wave Protokoll Forum Google Wave Developer Blog Im nächsten Blog-Beitrag zu diesem Thema werden wir uns mit verschiedenen Möglichkeiten der Entwicklung mit Google Wave beschäftigen.
Verfasst von

Sandeep Singh
Contact