4. “So etwas machen Sie hier also auch?!”

Kawahara:

Bei den „Contact Mode“-Kontaktpunkten für den Nintendo DS tauschten Sie über das System selbst Daten mit einer anderen Person aus. Jetzt bleiben Daten, die von Zugangspunkten wie den Nintendo-Zonen aus hochgeladen werden, aber schon eine Weile auf dem Server. Deshalb beschlossen wir, einen Server in der Firma aufzustellen, aber wir mussten ungefähr einen Monat auf die Lieferung warten.

Iwata Asks
Iwata:

Aber Sie mussten sich doch beeilen.

Kawahara:

Ja. Also beschlossen wir, einen Cloud20-Service zu nutzen, von dem ja heutzutage oft die Rede ist. Genauer gesagt, verwendeten wir AWS21. Dank dieser Entscheidung konnten wir, wenn wir eine bestimmte Anzahl von Servern brauchten, neue Server noch am gleichen Tag zusätzlich verwenden. Wir konnten nun einen recht angenehmen Service nutzen.20. Cloud: Eine Art von EDV, mit der Daten im Bedarfsfall über das Internet gespeichert und verarbeitet werden können.21. AWS = Amazon Web Services: Amazon.com bietet Remote-Computing-Services an, die weltweit von vielen größeren Gesellschaften genutzt werden.

Iwata:

Clouds eignen sich als Server insbesondere für solche Services, wie StreetPass-Kontaktpunkte, bei denen man nicht genau voraussagen kann, wie viele Treffen die 100.000 Zugangspunkte auf der ganzen Welt generieren werden. Auf diese Art und Weise kann man die Anzahl der Server leicht entsprechend den jeweiligen Gegebenheiten erhöhen oder aber auch wieder vermindern, wenn die Server nicht gebraucht werden.

Kawahara:

Das stimmt.

Iwata:

Übrigens hat Miiverse22 für Wii U eine ganz ähnliche Struktur. Viele große Web-Dienstleister da draußen verändern jetzt gerade ihre Server-Struktur hin zur Cloud. 22. Miiverse: Ein Netzwerk-Dienst, über den Leute aus der ganzen Welt über ihre Mii-Charaktere miteinander Verbindung aufnehmen können und so die in ihre Wii U-Konsole eingebauten Videospiele noch mehr auf Systemebene genießen können. Die Leute treten miteinander in Interaktion, indem sie innerhalb der Communities zu ihren Lieblingsspielen Gedanken austauschen. Außerdem können handschriftliche Zeichnungen und Kommentare angebracht werden.

Yamazaki:

Ja. Diese Art von Service innerhalb solch einer kurzen Zeit ohne eine Cloud zu starten, wäre undenkbar. Ein weiterer Grund bestand darin, die Reaktionszeit zu beschleunigen. Sobald ein Spieler einen Kontaktpunkt erreicht, müssen wir diese Personendaten hochladen und diese Person mit den Daten von jemand anderem versorgen.

Iwata:

Wenn es eine zeitliche Differenz gibt, werden sich die Spieler ganz schnell verabschieden.

Yamazaki:

Genau. Während der Entwicklung sprachen wir darüber, künftig die Server für Amerika auch in Amerika aufzustellen, während die Server für die anderen Regionen auch in den Zielregionen installiert werden sollten. Doch nachdem wir die Situation genauer analysiert hatten, entschlossen wir uns doch dazu, alle Server an einem einzigen Ort unterzubringen. Doch allein die Tatsache, dass wir alle diese Dinge zunächst überdenken und flexibel arbeiten konnten, wenn die Umstände es erforderten, war ein Vorteil des Service von AWS.

Iwata:

Wie lange dauert ein StreetPass-Datenaustausch an einem Kontaktpunkt?

Konno:

Diese Zeiten habe ich selbst gemessen: 20 bis 30 Sekunden, wenn der Datenaustausch schnell verläuft. Längere Transfers dauern ungefähr eine Minute.

Iwata Asks
Inoue:

Das hängt von der Verbindungsgeschwindigkeit ab. Da es jedoch eine Weile dauert, eine Verbindung zum Server aufzubauen, hat man das Gefühl, dass es lange dauert. Ist die Verbindung aber erst einmal aufgebaut, dauert die eigentliche Verarbeitung auf dem Server in den meisten Fällen weniger als eine Sekunde.

Kawahara:

Hmm… um den Service schnell zu starten, haben wir eine ganze Reihe an Methoden angewandt. Soll ich fortfahren?

Iwata:

Ja, bitte.

Kawahara:

Intern gibt es mehrere Entwicklungsteams, die alle proaktiv Open-Source-Software verwenden. Wir sind eines dieser Teams und haben eine Reihe an Open-Source-Software-Programmen verwendet.

Iwata:

Im Internet sind Programme, Handbücher und andere Informationen zu Open-Source-Software für jedermann zugänglich. Diese sind „offen“ und können von den Programmierern der ganzen Welt kontinuierlich aufpoliert werden. Ein repräsentatives und sehr bekanntes Beispiel ist das Betriebssystem Linux23.23. Linux: Ein Betriebssystem, das von einem Universitätsstudenten in Finnland entwickelt wurde. Später wurde es als Freeware veröffentlicht und von vielen Entwicklern weiterentwickelt.

Kawahara:

Das stimmt. Eine Open-Source-Software, die wir aufgenommen haben, ist die Datenmanagement-Software HBase24. HBase kann große Mengen an Daten verarbeiten. Die System-Performance lässt sich leicht durch zusätzliche Server erhöhen. Meiner Meinung nach, eignete sich diese Software gut für unsere Anforderungen, wobei kontinuierlich Daten verarbeitet werden. Zudem konnten wir leicht darauf aufbauen und die Infrastruktur erweitern, wenn das Arbeitsaufkommen dies erforderte. Da wir das schon seit Ende des letzten Jahres an einem anderen Projekt ausprobiert hatten, verfügten wir bereits über eine gewisse Erfahrung.24. HBase: Ein Produkt, das von einem Non-Profit-Unternehmen in Amerika entwickelt wurde und Open-Source-Software unterstützt. Es wird von größeren sozialen Netzwerkdiensten, wie LINE und Facebook verwendet.

Iwata:

Da es sich um Open-Source-Software handelt, wird diese – auch außerhalb von Nintendo – von allgemeinen Web-Unternehmen genutzt.

Kawahara:

Ja. Wir haben auch Puppet25, ein anderes Open-Source Programm verwendet. Hierbei handelt es sich um ein Programm für das Konfigurationsmanagement von Servern. Wir verwenden es übrigens schon seit drei Jahren und können die bestehenden Einstellungen immer wieder als Ausgangspunkt für neue Projekte verwenden.25. Puppet: Ein Tool für das Konfigurationsmanagement zur Automatisierung des Systemmanagements. Puppet ist in der Programmiersprache Ruby geschrieben.

Iwata:

Um einen Netzwerkdienst im größeren Umfang ins Leben zu rufen, gilt es verschiedene Server für die Zusammenarbeit zu konfigurieren. Das Managen dieser Konfiguration ist sehr arbeitsintensiv, so dass man für das Management eine bestimmte Software verwendet. Da Sie diese bereits im Vorfeld erstellt hatten, konnten wir jederzeit mit diesem Projekt beginnen.

Kawahara:

Ja. Wir konnten diesen Service bereits drei Monate nach der Projektaufnahme veröffentlichen, weil wir Puppet im Vorfeld verwendet hatten. Außerdem haben wir ein weiteres Open-Source Softwareprogramm namens Fluentd26 verwendet. Fluentd bietet einen Mechanismus zum Sammeln von Zugriffsprotokollen, die in Echtzeit auf dem Server einlaufen. Zudem erleichtert das Programm die Analyse der Zugriffsprotokolle.26. Fluentd: Ein Tool zum Sammeln großer Mengen an Protokollausgaben. Fluentd ermöglicht die Verarbeitung großer Datenmengen für bestimmte Zwecke.

Iwata:

Mithilfe von Fluentd kann man innerhalb kürzester Zeit ermitteln, welche Nutzer StreetPass-Begegnungen haben und wie viele Treffen es an welchen Kontaktpunkten gibt.

Kawahara:

Ja. Dies ermöglichte es, die gesamte Situation mit einer Zeitverzögerung von nur einer Minute zu erfassen. Und noch etwas…

Iwata:

Ja, fahren Sie fort. (lacht)

Kawahara:

Viele Mitglieder unseres Teams kennen sich gut mit Ruby27 aus, so dass Ruby in vielen Bereichen dieses Systems verwendet wird.27. Ruby: Eine Programmiersprache, die für das stressfreie Programmieren entwickelt wurde.

Iwata:

Ruby ist eine bekannte Programmiersprache, die von dem Japaner, Yukihiro Matsumoto, entwickelt wurde.

Kawahara:

Ja. Andere Teams verwenden Programmiersprachen wie Java28 und Perl29. Doch da wir dieses Mal so schnell wie möglich mit dem Service beginnen mussten, haben wir uns für die leichte Programmiersprache Ruby entschieden.28. Java: Eine Programmiersprache, die in mehreren Bereichen von Versorgungseinrichtungen bis hin zu Videospielen und Geschäftsanwendungen Verwendung findet.29. Perl: Eine Programmiersprache, die sich zum Schreiben von Programmen für Webanwendungen, Systemmanagement, Textverarbeitung und andere Zwecke eignet.

Iwata:

Nintendo ist ja weltweit als Firma bekannt, in der viele Menschen an der Erstellung von Videospielen beteiligt sind. Doch viele Leser müssen jetzt annehmen, dass wir den Bau von Serversystemen sowie deren Management und Betrieb doch lieber externen Firmen anvertrauen und intern niemand diese Aufgaben übernimmt. Aber das ist nicht richtig.

Yamazaki:

Das stimmt. Die Abteilung Network Development & Operations allein hat über 100 Angestellte, wovon die meisten Ingenieure sind. Es gibt aber auch Ingenieure, die auf der Kundenseite tätig sind, so dass es sich nicht nur um Server-Ingenieure handelt.

Iwata:

Ich habe gehört, dass neue Mitarbeiter oft erstaunt fragen: „So etwas machen Sie hier also auch?!”

Iwata Asks
Konno:

Nichtsdestotrotz ist das ganz anders als zu Zeiten des Nintendo DS. Wir haben große Fortschritte gemacht. Zu Zeiten des DS verwendeten wir einen einfachen DS als Kontaktpunkt! (lacht)

Iwata:

Mr. Yamazaki und andere legten diese einfach in ein Münzschließfach! (lacht) -

Alle:

(lachen)

Iwata:

Aber dieses Mal verwenden wir die bereits in Geschäften bestehende Nintendo Zone-Infrastruktur und haben uns zum Ziel gesetzt, den Service allein durch Verändern der Nintendo 3DS-Software30 und der Server zu beginnen. Dabei trugen wir stets dafür Sorge, dass diese zusammen mit jedem existierenden Zugangspunkt funktionierten und konnten den Service so schnell beginnen.30. Verändern der Nintendo 3DS-Software: Nintendo 3DS Systemversionen 6.2.0-0U oder Nachfolgeversionen sind zur Verwendung von StreetPass-Kontaktpunkten erforderlich. Nintendo 3DS-Systeme, die mit Vorläuferversionen laufen, müssen aktualisiert werden.

Kawahara:

Das stimmt.

Konno:

Übrigens hatte ich zwei Ideen für den Start dieses Projekts. Eine bestand darin, die bestehenden Zugangspunkte zu nutzen, die andere war die Methode der physischen Platzierung wie seinerzeit beim Nintendo DS. Daher fragte ich zunächst: „Welche Idee ist realistischer?”

Iwata:

Ich nehme an, man sagte Ihnen, letztere sei nicht praktikabel. (lacht)

Konno:

Ja. Das stimmt! (lacht)

Yamazaki:

Ich sagte ungefähr: „Nun, hören Sie aber mal auf!“ Ich bunkere doch nicht DS-Systeme in den Münzschließfächern der ganzen Welt!” (lacht)

Alle:

(lachen)