customer_landing_page_graphics166x_pokemon_co

The Pokémon Company esegue la migrazione a database AWS appositamente progettati

2020

Lanciato in Giappone nel 1996, Pokémon è diventato uno dei marchi di intrattenimento più popolari al mondo. Centinaia di milioni di persone di tutte le età si divertono ad allenare e combattere le creature Pokémon attraverso il Gioco di Carte Collezionabili Pokémon e il gioco per cellulare Pokémon GO.

A Bellevue, Washington, gli ingegneri di The Pokémon Company International (TPCi) hanno la responsabilità di assicurarsi che i fan dei Pokémon al di fuori dell'Asia possano monitorare i loro risultati tramite account utente completi. Conosciuta come il Club Allenatori di Pokémon, la soluzione non solo deve offrire un'esperienza senza interruzioni ogni volta che un "allenatore" desidera registrarsi, ma deve anche rispettare la legge sulla protezione della privacy online dei bambini e il regolamento generale sulla protezione dei dati.

"Il nostro sistema di profili utente è composto principalmente da due set di dati: utenti di Pokémon GO e utenti del Gioco di Carte Collezionabili Pokémon", afferma Jeff Webb, responsabile dello sviluppo di TPCi. "I profili utente di diversi tipi di gioco richiedono processi e manutenzione diversi, ma risiedono tutti nel sistema del Club Allenatori di Pokémon. A causa della complessità e del volume di dati con cui abbiamo a che fare, la scalabilità e l'affidabilità del database sono assolutamente fondamentali per offrire un'ottima esperienza utente".

Dopo il lancio di Pokémon GO nel 2016, il numero di utenti che hanno richiesto l'accesso a questo sistema è aumentato a oltre 300 milioni in due anni. L'azienda ha deciso di migrare a una soluzione completamente gestita per risparmiare tempo e risorse che si potessero concentrare invece su iniziative strategiche.

avvia un tutorial su Python
CustomerReferences_QuoteMark

Grazie ad Amazon Aurora, siamo passati da 300 a 30 nodi e non paghiamo più le licenze di database. Il nostro costo mensile del database è diminuito di decine di migliaia di dollari ogni mese".

Jeff Webb
Development Manager, The Pokémon Company International

Battaglia dei database

In origine, il Club Allenatori di Pokémon era supportato da un database di documenti NoSQL di terze parti, che conteneva tutti i dati del profilo utente e i registri delle modifiche per oltre 300 milioni di utenti di Pokémon GO. I frammenti di database contenevano il database principale delle creature Pokémon, i dati degli utenti online del Gioco di Carte Collezionabili e i dati dei gruppi di "gioco organizzato" di persona. Memcached ha fornito un accesso rapido ai dati della sessione utente. L'azienda ha ospitato il proprio database e il sistema di memorizzazione nella cache su Amazon Elastic Compute Cloud (Amazon EC2), utilizzando Elastic Load Balancing per la gestione del traffico e Amazon Simple Storage Service (Amazon S3) per l'archiviazione di oggetti. "Abbiamo scelto il nostro database NoSQL precedente per le sue ricerche veloci", dichiara Webb. "Tuttavia, abbiamo scoperto che raggiungere la velocità che volevamo richiedeva il mantenimento di molti indici e la gestione di molti nodi complessi, più di 300 a un certo punto".

Mantenere i nodi in esecuzione senza problemi era una sfida. Quando i nodi dell'indice o del database non erano più disponibili, aumentava la latenza. Se un nodo Memcached si interrompeva, gli utenti non potevano accedere per niente. Quando i nodi di dati primari si interrompevano, il team doveva sospendere qualsiasi attività per ricostruirli mentre il sistema operava sui nodi di backup. Dopo anni di problemi di gestione quotidiana, aggravati dal massiccio afflusso di utenti di Pokémon GO, TPCi ha deciso di migrare ad Amazon Web Services (AWS) per i suoi servizi di database completamente gestiti.

"Eravamo soddisfatti delle prestazioni e dell'affidabilità di Amazon EC2, Elastic Load Balancing e Amazon S3", ricorda Webb. "Ecco perché abbiamo deciso di analizzare i servizi di database gestiti da AWS". Il team ha eseguito test approfonditi per trovare una soluzione che soddisfacesse le sue esigenze di sicurezza, scalabilità, prestazioni e resilienza, scegliendo infine Amazon Aurora compatibile con PostgreSQL. "Poiché le richieste di autenticazione costituiscono la maggior parte del traffico TPCi, abbiamo scelto Amazon Aurora compatibile con PostgreSQL per le sue funzionalità di sicurezza di livello aziendale, inclusa la crittografia dei dati a riposo e in transito, oltre alla sua affidabilità in un ambiente multi-regione".

Il team ha anche deciso di spostare la cache degli utenti su Amazon ElastiCache, sfruttando sia Redis che Memcached. Redis mette in coda le attività per i nuovi utenti, in modo che venga loro richiesto di completare le attività di post-autenticazione come l'accettazione di termini e condizioni. Memcached aiuta a mantenere i ticket attivi in modo che le sessioni degli utenti esistenti non vengano interrotte quando accedono nuovi utenti. Il team ha migrato la configurazione globale e i dati TTL (Time To Live) su Amazon DynamoDB, un database di valori-chiave che offre prestazioni di pochi millisecondi su larga scala. Inoltre, ha spostato i dati degli eventi, come la cronologia degli accessi e i record di controllo delle modifiche degli utenti, ad Amazon S3.

Costo ridotto, maggiore capacità e zero tempi di inattività

Gli archivi di dati non relazionali sono stati migrati per primi, seguiti dalla migrazione dei dati degli utenti e dei frammenti di database ad Amazon Aurora. Il progetto è durato solo nove mesi. "Abbiamo trascorso i primi mesi a creare casi d'uso e test di pressione", afferma Webb. "Quindi abbiamo relazionalizzato tutti i dati e decostruito i dati JSON. Abbiamo completato la migrazione senza tempi di inattività per il processo di autenticazione, il che è notevole considerando che 300 persone accedono al Club Allenatori di Pokémon ogni secondo da tutto il mondo".

Da quando ha eseguito la migrazione, TPCi ha ridotto in modo significativo il tempo e il denaro utilizzati per i database. "Grazie ad Amazon Aurora, siamo passati da 300 a 30 nodi e non paghiamo più le licenze di database", afferma Webb. "Il nostro costo mensile del database è diminuito di decine di migliaia di dollari ogni mese. Ancora più importante, abbiamo avuto 168 ore di inattività o di riduzione delle prestazioni nei sei mesi precedenti la migrazione. Da allora, non ne abbiamo più avute".

La migrazione ha portato anche altri vantaggi. "Utilizzando le impostazioni TTL integrate in Amazon DynamoDB, possiamo tenere traccia di quando un utente supera la soglia massima di tentativi di accesso e negare l'accesso", afferma Webb. "Il risultato è stato una riduzione del 90% dei tentativi di accesso ai bot, liberando risorse di sistema per utenti legittimi e riducendo la nostra necessità di dimensionare eccessivamente le risorse".

Sfruttare il servizio Amazon ElastiCache completamente gestito riduce in modo significativo il sovraccarico di gestione dei nodi Memcached. I dati della sessione utente e gli stati dei ticket memorizzati nel cluster velocizzano il processo di autenticazione ed eliminano la necessità per un utente di mantenere una connessione a un singolo server.

Dedicare meno tempo alla gestione dei database consente di risparmiare tempo per l'innovazione. L'azienda prevede di utilizzare elaborazione serverless, container e microservizi per un'efficienza e prestazioni ancora maggiori. Mentre i suoi servizi continuano a migliorare, TPCi consente a milioni di persone in tutto il mondo di godersi l'universo Pokémon on demand.

Per ulteriori informazioni, visita la pagina aws.amazon.com/gametech/databases.


Informazioni su The Pokémon Company International

The Pokémon Company International, una sussidiaria di The Pokémon Company in Giappone, gestisce la proprietà intellettuale al di fuori dell'Asia ed è responsabile della gestione del marchio, del Gioco di Carte Collezionabili Pokémon, dell'intrattenimento domestico e del sito Web ufficiale di Pokémon.

Vantaggi di AWS

  • Riduce i costi mensili di decine di migliaia di dollari
  • Riduce il numero di nodi da 300 a 30
  • Riduce del 90% i tentativi di accesso ai bot
  • Elimina i costi di licenza del database
  • Registra zero ore di inattività o di riduzione delle prestazioni dopo la migrazione
  • Gestisce fino a 300 accessi al secondo

Servizi AWS utilizzati

Amazon Aurora

Amazon Aurora è un database relazionale compatibile con MySQL e PostgreSQL creato per il cloud che unisce le prestazioni e la disponibilità dei database aziendali tradizionali con la semplicità e l'economicità dei database open source.

Ulteriori informazioni »

Amazon ElastiCache

Amazon ElastiCache consente di impostare, eseguire e dimensionare in modo ottimale i più diffusi datastore in memoria open source compatibili nel cloud. Sviluppa applicazioni a intenso utilizzo di dati o migliora le prestazioni dei database esistenti recuperando i dati da datastore in memoria a bassa latenza e throughput elevato. Amazon ElastiCache è un servizio molto utilizzato per i casi d'uso in tempo reale come memorizzazione nella cache, archivi di sessioni, videogiochi, servizi geospaziali, analisi in tempo reale e accodamento.

Ulteriori informazioni »

Amazon DynamoDB

Amazon DynamoDB è un database che supporta i modelli di dati di tipo documento e di tipo chiave-valore che offre prestazioni di pochi millisecondi a qualsiasi scala. Si tratta di un database durevole, multimaster, multiregione e completamente gestito che offre sicurezza, backup e ripristino integrati e memorizzazione nella cache in memoria per applicazioni Internet.

Ulteriori informazioni »

Amazon S3

Amazon Simple Storage Service (Amazon S3) è un servizio di storage di oggetti che offre scalabilità, disponibilità dei dati, sicurezza e prestazioni all'avanguardia nel settore. Ciò significa che le aziende clienti di ogni dimensione e settore possono utilizzarlo per archiviare e proteggere una qualsiasi quantità di dati per una vasta gamma di casi d'uso, ad esempio per siti Web, applicazioni per dispositivi mobili, backup e ripristino, archiviazione, applicazioni enterprise, dispositivi IoT e analisi di Big Data.

Ulteriori informazioni »


Inizia subito

Organizzazioni di tutte le dimensioni in tutti i settori si trasformano e realizzano le loro missioni ogni giorno utilizzando AWS. Contatta i nostri esperti e inizia oggi stesso il tuo percorso verso AWS Cloud.