customer_landing_page_graphics166x_pokemon_co

The Pokémon Company migriert zu speziell entwickelten AWS-Datenbanken

2020

Pokémon wurde 1996 in Japan gegründet und hat sich zu einer der weltweit populärsten Marken der Unterhaltungsbranche entwickelt. Millionen Menschen in jedem Alter spielen Pokémon GO auf Mobilgeräten und das Pokémon-Sammelkartenspiel, um ihre Kreaturen zu trainieren gegeneinander kämpfen zu lassen.

In Bellevue im US-Bundesstaat Washington sind die Entwickler von The Pokémon Company International (TPCi) dafür verantwortlich, dass Pokémon-Fans außerhalb Asiens ihre Errungenschaften in funktionsreichen Benutzerkonten abrufen können. Die Lösung, die als Pokémon Trainer Club bekannt ist, muss eine nahtlose Benutzererfahrung bieten, wenn sich ein "Trainer" anmeldet. Darüber hinaus muss aber auch gewährleistet sein, dass das US-Gesetz zum Schutz der Privatsphäre von Kindern im Internet (COPPA) und die DSGVO eingehalten werden.

"Unser Benutzerprofilsystem besteht hauptsächlich aus zwei verschiedenen Datensätzen: Pokémon GO-Benutzer und Benutzer des Pokémon-Sammelkartenspiels", so Jeff Webb, Development Manager bei TPCi. "Benutzerprofile aus verschiedenen Spieltypen erfordern unterschiedliche Verarbeitungs- und Verwaltungsprozesse, werden aber alle live im Pokémon-Trainer-Club-System geführt. Aufgrund der Komplexität und der Menge der Daten sind wir auf eine hohe Datenbankskalierbarkeit und -zuverlässigkeit angewiesen, um eine erstklassige Benutzererfahrung bereitstellen zu können."

Nach der Veröffentlichung von Pokémon GO im Jahr 2016 wuchs die Anzahl der Benutzer, die Zugriff auf das System benötigten, innerhalb von zwei Jahren auf mehr als 300 Millionen. Daraufhin führte das Unternehmen eine Migration zu einer vollständig verwalteten Lösung durch, um mehr Zeit und Ressourcen für strategische Initiativen aufwenden zu können.

Python-Tutorial starten
CustomerReferences_QuoteMark

Mit Amazon Aurora konnten wir die Anzahl der Knoten von 300 auf 30 reduzieren und müssen keine Datenbanklizenzen mehr erwerben. Wir sparen jeden Monat Zehntausende Dollar an Datenbankkosten."

Jeff Webb
Development Manager, The Pokémon Company International

Kampf der Datenbanken

Ursprünglich basierte der Pokémon Trainer Club auf einer NoSQL-Dokumentdatenbank eines Drittanbieters, in der sämtliche Benutzerprofildaten und Änderungsprotokolle von mehr als 300 Millionen Pokémon GO-Spielern gespeichert wurden. Die Masterdatenbank der Pokémon-Kreaturen, die Online-Benutzerdaten des Sammelkartenspiels und die Daten von persönlichen "Organized Play"-Gruppen befanden sich in Datenbank-Shards. Für den schnellen Zugriff auf Benutzersitzungsdaten sorgte Memcached. Das Unternehmen hostete die Datenbank und das Memory-Caching-System in Amazon Elastic Compute Cloud (Amazon EC2) und nutzte Elastic Load Balancing für das Datenverkehr-Management und Amazon Simple Storage Service (Amazon S3) als Objektspeicher. "Die Entscheidung für unsere vorherige NoSQL-Datenbank basierte auf den schnellen Suchvorgängen", erklärt Webb. "Dann stellte sich aber heraus, dass wir die gewünschte Geschwindigkeit nur durch die Verwaltung vieler Indexe und vieler komplexer Knoten erreichen konnten – zeitweise waren es mehr als 300."

Es war eine Herausforderung, den reibungslosen Betrieb aller Knoten zu gewährleisten. Wenn Index- oder Datenbankknoten nicht verfügbar waren, stieg die Latenz. Wenn ein Memcached-Knoten ausfiel, konnten sich die Benutzer gar nicht mehr anmelden. Im Falle eines Ausfalls primärer Datenknoten musste das Team alles stehen und liegen lassen, um sie wiederherzustellen, während das System über Backup-Knoten weiter ausgeführt wurde. Nach Jahren täglicher Verwaltungsprobleme, die durch den riesigen Zuwachs an Pokémon GO-Benutzern zusätzlich verschlimmert wurden, entschied sich TPCi für einen Umstieg auf die vollständig verwalteten Datenbankservices von Amazon Web Services (AWS).

"Wir waren mit der Performance und Zuverlässigkeit von Amazon EC2, Elastic Load Balancing und Amazon S3 sehr zufrieden", erinnert sich Webb. "Deswegen wollten wir die verwalteten Datenbankservices von AWS unter die Lupe nehmen." Das Team führte umfassende Tests durch, um eine Lösung zu finden, die den Anforderungen in Bezug auf Sicherheit, Skalierung, Performance und Ausfallsicherheit entsprach. Am Ende fiel die Wahl auf Amazon Aurora mit PostgreSQL-Kompatibilität. "Da Authentifizierungsanfragen den Großteil des TPCi-Datenverkehrs ausmachen, entschieden wir uns für Amazon Aurora PostgreSQL, das Sicherheitsfunktionen der Enterprise-Klasse, wie die Verschlüsselung inaktiver und Übertragungsdaten, und eine hohe Zuverlässigkeit in einer multiregionalen Umgebung bietet."

Außerdem verlagerte das Team den Benutzer-Zwischenspeicher in Amazon ElastiCache, um die Vorteile von Redis und Memcached in Anspruch zu nehmen. Redis stellt Aufgaben für neue Benutzer in eine Warteschlange, damit sie aufgefordert werden können, Aufgaben nach der Authentifizierung abzuschließen, z. B. die Nutzungsbedingungen zu akzeptieren. Memcached sorgt dafür, dass Tickets live bleiben, damit bestehende Benutzersitzungen nicht unterbrochen werden, wenn neue Benutzer beitreten. Das Team migrierte globale Konfigurations- und TTL-Daten (Time-to-Live) zu Amazon DynamoDB, einer Schlüssel-Werte-Datenbank, die selbst unter Last Geschwindigkeiten im einstelligen Millisekundenbereich bietet. Auch Ereignisdaten wie der Anmeldeverlauf und Prüfdaten von Benutzeränderungen wurden verschoben, und zwar zu Amazon S3.

Niedrigere Kosten, höhere Kapazität und keine Ausfallzeiten

Die nicht relationalen Datenspeicher wurden als Erstes zu Amazon Aurora migriert, gefolgt von den Benutzerdaten und den Datenbank-Shards. Nach nur neun Monaten war das Projekt abgeschlossen. "In den ersten Monaten erstellten wir Anwendungsfälle und Belastungstests", so Webb. "Dann rationalisierten wir alle Daten und nahmen JSON-Daten auseinander. Es ist uns gelungen, die Migration ohne Ausfallzeiten für unser Authentifizierungsverfahren abzuschließen. Das ist bemerkenswert, da sich jede Sekunde 300 Benutzer aus aller Welt im Pokémon Trainer Club anmelden."

Seit der Migration investiert TPCi wesentlich weniger Zeit und Geld in Datenbanken. "Mit Amazon Aurora konnten wir die Anzahl der Knoten von 300 auf 30 reduzieren und müssen keine Datenbanklizenzen mehr erwerben", so Webb. "Wir sparen jeden Monat Zehntausende Dollar an Datenbankkosten. Vor allem hatten sich in den sechs Monaten vor der Migration 168 Stunden an Ausfallzeiten oder Leistungseinbußen angesammelt. Seitdem waren es null Stunden."

Die Migration hat noch andere Vorteile mit sich gebracht. "Mithilfe der integrierten TTL-Einstellungen in Amazon DynamoDB können wir ermitteln, wenn ein Benutzer die maximale Anzahl von Anmeldeversuchen überschreitet, und den Zugang sperren", erklärt Webb. "Dadurch konnte die Anzahl der Anmeldeversuche durch Bots um 90 Prozent reduziert werden, sodass mehr Systemressourcen für legitime Benutzer bereitstehen und wir weniger zusätzliche Ressourcen einplanen müssen."

Durch den Einsatz des vollständig verwalteten Amazon ElastiCache-Service entsteht ein wesentlich geringerer Verwaltungsaufwand für Memcached-Knoten. Im Cluster gespeicherte Benutzersitzungsdaten und Ticket-Statusmeldungen beschleunigen die Authentifizierung und sorgen dafür, dass Benutzer nicht mehr dauerhaft mit einem einzigen Server verbunden bleiben müssen.

Weniger Aufwand bei der Datenbankverwaltung ermöglicht mehr Innovationsfreiheit. Das Unternehmen plant die Verwendung serverloser Computing-Ressourcen, Container und Microservices, um die Effizienz und die Performance noch weiter zu steigern. Durch die kontinuierliche Verbesserung seiner Services bietet TPCi Millionen Menschen weltweit On-Demand-Zugriff auf das Pokémon-Universum.

Weitere Informationen finden Sie unter aws.amazon.com/gametech/databases.


Über The Pokémon Company International

The Pokémon Company International, eine Tochterfirma des in Japan ansässigen Unternehmens The Pokémon Company, vertritt Pokémon außerhalb von Asien und ist für Markenmanagement, das Pokémon-Sammelkartenspiel, den Heimunterhaltungsbereich und die offizielle Pokémon-Website verantwortlich.

Vorteile von AWS

  • Senkung der monatlichen Kosten um Zehntausende Dollar
  • Reduzierung der Knotenanzahl von 300 auf 30
  • Reduzierung der Bot-Anmeldeversuche um 90 %
  • Keine Datenbanklizenzkosten
  • Keine Ausfallzeiten oder Leistungseinbußen nach der Migration
  • Unterstützung von bis zu 300 Anmeldungen pro Sekunde

Genutzte AWS-Services

Amazon Aurora

Amazon Aurora ist eine mit MySQL und PostgreSQL kompatible relationale Datenbank für die Cloud, die die Leistung und Verfügbarkeit herkömmlicher Unternehmensdatenbanken mit der Einfachheit und Kosteneffizienz von Open-Source-Datenbanken kombiniert.

Weitere Informationen »

Amazon ElastiCache

Amazon ElastiCache ermöglicht Ihnen die nahtlose Einrichtung, Ausführung und Skalierung beliebter Open-Source-kompatibler In-Memory-Datenspeicher in der Cloud. Erstellen Sie datenintensive Apps oder verbessern Sie die Leistung Ihrer vorhandenen Datenbanken, indem Sie Daten aus In-Memory-Datenspeichern mit einem hohen Durchsatz und einer geringen Latenz abrufen. Amazon ElastiCache ist eine beliebte Wahl für Echtzeit-Anwendungsfälle wie Caching, Session Stores, Gaming, Geodienste, Echtzeit-Analyse und Queuing.

Weitere Informationen »

Amazon DynamoDB

Amazon DynamoDB ist eine Schlüssel-Wert- und Dokumentdatenbank, die für beliebig große Datenmengen eine Leistung im einstelligen Millisekundenbereich bereitstellt. Es handelt sich um eine vollständig verwaltete, multiregionale, multimasterfähige, dauerhafte Datenbank mit integrierter Sicherheit, Sicherung und Wiederherstellung sowie In-Memory-Caching für Anwendungen im Internetmaßstab.

Weitere Informationen »

Amazon S3

Amazon Simple Storage Service (Amazon S3) ist ein Objektspeicherservice, der branchenführende Skalierbarkeit, Datenverfügbarkeit, Sicherheit und Leistung bietet. Kunden aller Größen und aus allen Branchen können also mit diesem Service beliebige Mengen an Daten speichern und sichern – für die unterschiedlichsten Anwendungsfälle wie Websites, mobile Anwendungen, Sicherung und Wiederherstellung, Archivierung, Unternehmensanwendungen, IoT-Geräte und Big-Data-Analysen.

Weitere Informationen »


Erste Schritte

Organisationen aller Größen aus verschiedenen Sektoren transformieren und erfüllen ihre Missionen täglich mithilfe von AWS. Kontaktieren Sie unsere Experten und begeben Sie sich noch heute auf Ihre eigene AWS Cloud-Reise.