A discussion about modern database challenges, how they constantly change over time, and how E-CARD overcame them by partnering with MariaDB.
Online gaming and consumer sites have some of the most demanding customers in the world. Companies providing the platforms for such sites need a database that delivers fast and consistent performance under heavy loads that keep growing.
RTInsights recently sat down with Rumen Palov, CTO of E-CARD Ltd., to talk about these database challenges, how they constantly change over time and the need for a technology partner that provides superior database technology and expert support to keep pace with changing market conditions.
Here is a brief summary of that conversation:
RTInsights: What does E-CARD do, and what’s your role at the company?
Palov: I’ve been with the company for over 22 years. My first position here was in the support team. After that, I began my journey as a back-end developer, and for the last 15 years, I have been the CTO of the company.
E-CARD Ltd. is a Bulgarian company that has been operating since 2000 as a software product company. Our tech stack is based entirely on open-source products. Our early success was defined by our unique Internet Access Service and a long list of TV show projects for which we provided web and SMS services. Some of those shows included Who Wants to Be a Millionaire?, Big Brother, Star Academy, and more.
Later on, we entered the online betting business as a B2B betting solutions provider. We have two major product verticals: one is a platform for complete online betting website solutions, and the other platform is for in-house casino games, as we are also a game provider. In just a few years, our betting platforms established a presence on four continents.
RTInsights: What database challenges did your business encounter while developing and running these platforms that led you to MariaDB?
Palov: In these kinds of businesses, it’s extremely crucial for a platform to have a very quick, fast response to the client. When the client opens the website, for example, a casino games page, we need to service this page in a matter of 100 to 200 milliseconds. And on the platform that delivers games, we have the same technical requirements. When a client starts a game, we need to initialize the game and provide the player with the ready-to-use interface in a matter of 100 milliseconds. After that, when the customer starts playing, we should respond to the gameplay in 50, 100, to a maximum of 150 milliseconds. This is a crucial aspect of modern entertainment websites.
RTInsights: What was used before, and what were the limitations or issues with that technology/solution?
Palov: To achieve such response times, we had to optimize our entire infrastructure. That included networking, firewalls, application servers, and, of course, databases. The first few were easier and more straightforward to optimize. But optimizing the database requires more, especially when we have thousands of clients using the service simultaneously. Thousands of clients performing parallel requests to our service and, respectively, to the database must be handled within a suitable response time.
One challenge in making this happen is the database size. In the online casino sector, you have a lot of actions performed per day. For example, on a single website market, we process millions of bets per day. So, you can imagine how much data we store in our database. And day after day, that volume continues to grow. Imagine that happening for a year or two. Even with that growth, the database must have the same fast responses.
In the process of achieving this, we were faced with many challenges. Some were internal issues, and others were due to bottlenecks or performance issues related to the database.
In early projects, we used MySQL, including versions 4.0 to 5.6. In 2020, with one of our clients, we hit performance issues with MySQL 5.7 in a very disruptive way. That’s when we migrated to MariaDB Server 10.5. A few months later, we migrated to MariaDB Enterprise Server 10.6 and established an enterprise subscription with MariaDB since this is critical to our business.
Our tech team, together with MariaDB specialists, has been working hard to address different issues, optimize our MariaDB setup, and provide useful data for further investigations and the foundation of new optimizations.
RTInsights: What does MariaDB do to address your issues?
Palov: MariaDB works alongside us to continuously optimize our performance for our betting applications. With more users being added on a daily basis, we see an increase in traffic and transactions, so it is very important that we are always optimizing for performance. Our infrastructure consists of a few MariaDB Galera Clusters, each with database nodes equipped with over 80 hardware cores, more than 3TB of RAM, and several 20TB SSD storage units. Our MariaDB database handles a high volume of operations, processing 80-100K queries per second and 20-30K transactions per second on a single node. During peak periods, we support more than 10K real-time clients.
Our infrastructure is very large, much larger than most, which is why we are able to share results and feedback with MariaDB. That helps to further improve the MariaDB Enterprise Server and enhance our services.
One of the benefits of an enterprise subscription with MariaDB is the ability to file support tickets when we encounter additional optimizations that could help us. The MariaDB team is extremely responsive and knowledgeable, and we are happy with our relationship with them. Together, working with MariaDB, we have made significant progress in improving database performance for our applications.
Another benefit of working with MariaDB is that it aligns with our open-source approach. We also used MariaDB’s support service to produce emergency patches when we needed them. Such a partnership between E-CARD Ltd and MariaDB is essential when an extensive business is based on open-source products.
Learn how MariaDB can help with your database performance. Contact now