Germany: +49 89 143 01280
France: +33 1 57 60 83 57
Italy: +39 02 249 59 120
UK: +44 207 553 8447
The world's largest producer of casual games has selected MySQL Cluster to power its real-time recommendations platform. High velocity data ingestion, low latency reads, on-line scaling and the operational simplicity delivered by MySQL Cluster enables Big Fish to increase customer engagement and deliver targeted marketing, providing a more personalized experience to its users.
Founded in 2002, Big Fish is the world's largest producer of casual games; dedicated to bringing engaging entertainment to everyone, anywhere, on any device.
Through its data-driven platform, millions of consumers seeking engaging entertainment easily discover and play PC and mobile games created by Big Fish's network of more than 600 development partners and its in-house Big Fish Studios.
The company has distributed more than 2 billion games from a growing catalog of 3,000+ unique PC/Mac titles and 300+ unique mobile games, and offers cross-platform interactive game streaming via its cloud gaming service, Big Fish Unlimited.
Big Fish's games are played in more than 150 countries across 13 local language sites. The company is headquartered in Seattle, WA, with multiple regional offices in North America and Europe.
The global video gaming market is experiencing explosive growth with forecasts estimating revenues to reach $82bn by 20171. Competition is intense, and so to differentiate services and engage users, progressive gaming companies such as Big Fish are seeking solutions to more fully personalize the customer experience.
Using Business Intelligence (BI) and predictive analytics Big Fish can segment customers based on a range of demographic and behavioural indicators. This enables Big Fish to serve highly targeted recommendations and marketing, precisely personalized to a user's individual preferences.
The Marketing Management Service (MMS) is designed to serve real-time recommendations to Big Fish customers in real time. The project team established a set of success requirements for the database that would power the MMS recommendations engine:
Big Fish already has an extensive deployment of MySQL databases powering web applications, including the storefront. They knew MySQL could power the recommendations database, but would require additional engineering efforts to implement database sharding to support data ingest and future scaling needs, coupled with a Memcached layer for low-latency reads.
As a result, they began evaluations of MySQL Cluster, in addition to other database technologies. Using MySQL Cluster, the Engineering teams were able to leverage their existing MySQL skills, enabling them to reduce operational complexity when compared to introducing a new database to the Big Fish environment.
At the same time, they knew MySQL Cluster, backed by Oracle, provided the long-term investment protection they needed for the MMS platform.
Through their evaluation, the Big Fish engineering team identified MySQL Cluster was best able to meet their technical requirements.
Write Performance to Support High Velocity Data Ingest
MySQL Cluster's multi-master architecture, coupled with the ability to auto-shard (partition) tables across nodes, enables Big Fish to meet the data load demands of MMS.
During testing, MySQL Cluster was able to insert 187,000 records per second while simultaneously serving 3,000 SELECTs per second with just two data nodes and one MySQL Server.
They found MySQL Cluster scaled linearly as they tested the loading of 25m to 1bn records.
Low Latency Access
Using MySQL Cluster's in-memory tables, Big Fish are able to serve up personalized recommendations to their gamers with sub-millisecond responsiveness.
Adding nodes to a running cluster, without downtime, will enable Big Fish to scale the recommendations database to support the higher capacity and performance demanded by the MMS roadmap. MySQL Cluster's use of horizontal scalability across low-cost commodity nodes also reduces TCO of the project.
The shared-nothing, distributed design of MySQL Cluster coupled with integrated replication and self-healing recovery ensures high availability of the recommendations platform, all without DevOps intervention.
SQL and NoSQL APIs
Big Fish can select the best access method to meet their specific requirements. Data is inserted into the cluster using the NoSQL Java ClusterJ API, and accessed by the MMS recommendations engine using the full power of SQL.
As illustrated in the figure below:
"Gaming is a highly dynamic environment. It can be very difficult to predict performance demands. MySQL Cluster¹s on-line scalability provides the assurances we need to meet future requirements and we can use MySQL Cluster Manager to automate scaling and cluster administration - which makes DevOps very happy!"
Isaac Hawley, Software Developer, Big Fish
MySQL Cluster is distributed across commodity x86 hardware running the Linux operating system, in the following configuration:
Big Fish runs MySQL Cluster on Virtual Machines in their Development & Testing environment, and uses physical hardware in production. MySQL Cluster's flexibility enables them to move seamlessly between the virtual and physical environments.
Big Fish has subscribed to MySQL Cluster CGE providing the Engineering team with access to 24x7 Oracle Premier Support and MySQL Cluster Manager, which reduces operational overhead by providing:
It is expected that the initial deployment of MMS will be expanded to include all new web site developments, and to additional channels and gaming platforms. In addition, data volumes and loading frequencies are expected to increase, with the possibility of streaming real-time updates from the BI system to the recommendations platform. The on-line scalability of MySQL Cluster will enable Big Fish to meet these new requirements.
Big Fish also has the flexibility to support future projects that include complex queries on live, web-based data. Using MySQL Cluster's Adaptive Query Localization, JOIN operations are pushed down to the data nodes, where they execute on local copies of the data before aggregating results to the application - enabling real-time analytics.
In summary, MySQL Cluster has the performance, availability and operational ease-of-use to support Big Fish' requirements today, while also providing a future platform for scale and new application development in the future.