Es gibt zwar jede Menge Patterns zum Thema Softwarentwicklung, aber wie sieht es mit dem Betrieb aus? Google wird nachgesagt, 10'000 Maschinen weltweit zu verwalten - es soll möglich sein, ganze Schränke auf Knopfdruck für eine Aufgabe zu aktivieren.
Die Hardware ist dabei "billig" (AMD Prozessoren, IDE Festplatten) und daher das Applikations-Design prinzipiell auf Ausfall ausgelegt - nicht als Ausnahmefall.
Frage:* Welche Techniken braucht es für eine solche Beherrschung?
* Wie kann es sein, dass ein solches reibungslos zusammen funktioniert?
Annahmen:* Jede Maschinengruppe erhält das selbe Initialsetup.
* Alle applikationspezifischen werden nachträglich hinzugefügt.
Patterns:* Servicekatalog: Die möglichen Kandidaten ("Worker") zur Abarbeitung einer Aufgabe müssen bekannt sein.
* Vollautomatische Installation: Neuinstallationen und Patches müssen mit Minimalem Aufwand einspielbar sein, ohne den Betrieb zu gefährden (Etappierung?).
* Laststeuerung: Die Last im System so verteilt werden, dass langfristig keine Überlastung zu Stande kommt.
....
OMC-Ks: Welche Muster sind einfach? Welche kompliziert? Wo könnte die Industrie allgemein gewinnen?
Nachwort: Hier ein NYT Artikel zum Thema
http://www.nytimes.com/2006/07/03/technology/03google.html?_r=1&pagewanted=all&oref=slogin