Anteriormente hemos hablado de Fortnite y su espectacular crecimiento en usuarios y, en “Annual revenue” por usuario comparativamente con Google, Facebook u otras empresas basadas en Social Media.
Con cerca de 200 millones de usuarios, Fortnite tiene un gran reto tecnológico, ya sea con la gestión de servidores, bases de datos o “Pipeline” de datos. En numerosas entrevistas o Techtalk, se comenta que gestionan cerca de 100 millones de eventos por minuto y, toda su plataforma, está basada en Amazon Web Services (AWS) para poder mantener a Fortnite funcionando las 24 horas del día, los 365 días del año.
Aquí en el Blog hemos hablado de muchas otras arquitecturas, “Big, Bigger, Biggest”, pero el caso de hoy: Fortnite, no es para menos ya que cuenta con una infraestructura sobre AWS inmensa. Desplegada sobre 12 centros de datos de AWS, abarcando así las 24 zonas de disponibilidad (AZ). La carga máxima de Fortnite es 10 veces mayor que la carga más pequeña, por lo que es totalmente estratégico el confiar en funciones de escalado y tenerla controlada en todo momento, económicamente hablando, sin duda alguna.
Como decíamos, se gestionan cerca de 100 millones eventos por minuto (o cerca de 54 mil millones de eventos por día) usando productos como Kinesis Streams. La característica principal es que muchas de éstas “pipeline” basadas en Kinesis Streams realizan análisis en tiempo real y por lotes, por ejemplo para éste último, Fortnite depende en gran medida de la versión de Elastic MapReduce (EMR), para su procesamiento. La compañía utiliza 22 clusters de producción EMR (que abarcan más de 4.000 instancias EC2) que realizan más de 8.000 trabajos ETL por lote al día. Estos trabajos de ETL resumen los datos en tablas Hive, que luego se proporcionan a los analistas para explorar a través de la herramienta de BI de Tableau.
La compañía utiliza su gran pipeline de análisis de datos para, por ejemplo, la detección de cualquier problema (pasado) o problema que pueda estar ocurriendo (presente). Algunos problemas sólo se pueden detectar analizando los datos de los clientes de Fortnite, incluyendo las interfaces de PC, Web y móviles. La compañía también analiza la interacción de los jugadores en las redes sociales para evaluar las decisiones de diseño, identificar el sentimiento del jugador y ajustar el juego.