Foodics Supercharges SaaS and Unifies Transactions + Analytics with SingleStore, Serving Up Real-Time Insights to 22K+ Customers
“With SingleStore, we can just plug and play and do everything we need to empower our customers. It allows us to focus on what we are really here to do: serve our customers.”
Mohammed Radwan
Head of Engineering, Foodics
100X performance; same cost
100X
From 200 concurrent users to infinite scalability
200 to ∞
Near-100% uptime
100%
Query performance improvement
60%
Processes more than 5 billion orders/year
5B+
Restaurants run on tight margins, so every data point counts for decision making. If business owners lack visibility into performance or take too long to generate reports, they could be in trouble. Foodics was founded in 2014 to steer them toward efficiency and profitability instead.
Foodics is revolutionizing the way companies and restaurants handle real-time reporting, inventory management, order submission, and employee operations. It offers a cloud-based point of sale (POS) and restaurant management system it describes as Restaurant Management Made Easy. The system is designed to help restaurants manage their businesses and grow seamlessly; it runs on mobile platforms in English and Arabic.
Headquartered in Riyadh, Foodics is growing rapidly and now serves 35 markets. More than 22,000 restaurants, food trucks, cafes, and fast-food chains use Foodics to improve their revenue and relationships with customers. The company processes more than five billion orders per year, has grown to more than 570 employees, and received $170 million in its latest Series C funding round in 2022.
Challenges/Goals
Foodics offers dashboard analytics for business owners and managers. Customers can get quick insights into how their business is performing per branch, payment method, product, and other criteria. They can analyze every aspect of their business and easily apply filters, group different metrics together, and change analysis dimensions to find the exact metrics they’re looking for.
Foodics at first used CitusDB for customer service and billing and MySQL to power the database. It later switched to a commercial version of PostgreSQL for the database. CitusDB handled the analytics side of the solution, while first MySQL and then PostgreSQL took care of transactions, separating the workloads between the technologies.
“Like many tech companies, we started with MySQL. It fulfilled its purpose for a while, but when we needed to expand, MySQL couldn’t enable that.”
Mohammed Radwan
Head of Engineering, Foodics
Foodics ran into reliability problems with CitusDB, experiencing outages that lasted three hours at a time up to four times per month. Only 200 users could concurrently use the existing system. Foodics had 5,000 customers, but downtime and a lack of fast data were accelerating churn, and Foodics itself was not getting the support it needed from its data providers to turn things around. The company had ambitious goals to grow its business, and if it was having this much data trouble at the 5,000-customer mark, it shuddered to think what would happen if it managed to double or triple that base. The trouble transcended operations: Foodics had just received $20 million in Series B funding in 2021, but the unreliable system limited growth and put future funding at risk.
“Like many tech companies, we started with MySQL. It was compatible with what we had and was easy to use. It fulfilled its purpose for a while, but when we needed to grow and expand, MySQL couldn’t enable that,” explained Mohammed Radwan, Head of Engineering, Foodics.
Foodics moved away from MySQL; it was easy to use but lacked real-time analytic capabilities.
PostgreSQL was its next choice for storing the analytics data for the reporting engine. The PostgreSQL implementation was a managed database service that made it easy to get started, supported parallelism and data replication, and offered features for single-tenant architecture.
“Scaling up and out was very challenging for us with PostgreSQL. Every time we thought about scaling, we started to worry about how much time re-balancing was going to take and how that would affect our customers.”
Mohammed Radwan
Head of Engineering, Foodics
However, said Radwan, “We had some challenges with PostgreSQL. We used a service provider and had some issues with them. Scaling up and out was very challenging for us with PostgreSQL. As you grow, you need to always make sure that you are seamlessly scaling.”
Foodics had built its own data integrity verification tool, as it was a mission-critical component of its SaaS application. Multiple nodes hosted the data, and the company had to buy more nodes to scale up. Re-balancing the data across multiple PostgreSQL nodes took a huge amount of time and effort as Foodics grew.
“Every time we thought about scaling, we started to worry about how much time re-balancing was going to take and how that would affect our customers,” Radwan explained.
On top of these difficulties, Foodics’ service provider removed AWS ecosystem support. The SaaS application was built on AWS, so this compounded the problem.
Technology Requirements
After all the challenges Foodics had weathered, it searched for a database that would offer:
- The ability to place all analytics related data in a single unified data store
- A performant analytics engine with columnstore to democratize data access
- Real-time and near real-time analytics with very fast reads and quick ingestion
- A multi-tenant architecture to use a single database for all customers
- Support for a large and growing customer base in the tens of thousands
- 100 concurrent queries per second, or approximately one percent of Foodics’ customer base at the time, to support the large number of reports being generated
- The capability to process billions of orders and five million transactions per month
- Scale up and out capabilities to support Foodics’ accelerated growth strategy
- High availability with almost zero downtime
“Foodics is a 24/7 resource for our customers. We can’t take time off or delay reports. The most important thing for us is concurrency. As we grow, we need to ensure that our customer base grows with us. We needed a database that allows for seamless reporting without worrying about how many customers are using it all at once,” said Radwan.
“We have a lot of different data stores, and we didn’t want users to have to connect to each of them. We wanted to pull all this data together for a unified story. It needs to be available as soon as possible, and everyone in the company needs to be able to slice and dice it. This will allow our customers to make data-driven decisions faster,” said Radwan.
“Foodics is a 24/7 resource for our customers. We can’t take time off or delay reports. The most important thing for us is concurrency. We needed a database that allows for seamless reporting without worrying about how many customers are using it all at once.”
Mohammed Radwan
Head of Engineering, Foodics
Why SingleStore
Foodics started to look for alternatives to PostgreSQL and found an excellent blog post written by Jack Ellis, Co-Founder, Fathom Analytics and a SingleStore customer, called Building the world’s fastest website analytics. “We looked for multiple service providers until we came upon an interesting article by Jack Ellis about SingleStore. It explained everything we were looking for and more,” Radwan recounted. Several SingleStore benefits and capabilities stood out to Foodics:
Ease of Use and Compatibility
“We are a small team, so we did not want to spend time tuning a database. We wanted something that just worked out of the box,” said Radwan. For this reason, we went with SingleStore Helios running on AWS. With SingleStore, we can just plug and play and do everything we need to empower our customers. It allows us to focus on what we are really here to do: serve our customers.”
SingleStore also uses the same wire protocol as MySQL and supports similar SQL syntax, so Foodics did not need to learn a completely new technology to get started.
Multi-Cloud Flexibility
Foodics is built on the AWS ecosystem, but with SingleStore it has the flexibility to move to other clouds or use a multi-cloud infrastructure.
Performance
“We needed the data warehouse to not just scale for reads, but also for other workloads like UPSERTS. We didn’t want anything that took longer than one second to execute,” said Radwan.
Solution
Foodics has been an active SingleStore customer since June 2021 and uses SingleStore Helios with an S-32 configuration on AWS. As part of the initial proof of concept, Foodics wanted to stress test the SingleStore platform to ensure that this was the future-proof database they could count on for years to come.
“We wanted to confirm that what we saw with SingleStore was real. It seemed almost impossible,” explained Radwan.
The stress testing included:
- Creating 10 billion rows.
- Running complex queries with conditional aggregation and sub-queries.
- Requesting reports with wide date ranges, such as over a period of five years.
- Simulating simultaneous reads and writes.
- Simulating heavy loads with concurrent connections.
“Foodics has been operating since 2014, so you can imagine how much data we have. We’re almost at the Big Data stage now. In order to move this data, we had to study how it was going to happen. SingleStore has been continuously supporting us step by step,” said Radwan.
“We wanted to confirm that what we saw with SingleStore was real. It seemed almost impossible.”
Mohammed Radwan
Head of Engineering, Foodics
Due to the complexity of Foodics’ infrastructure, it built an in-house migration versus using SingleStore’s migration options. The team spent time testing workloads on varying cluster sizes, eventually settling on S-32, with a 16:1 CPU-to-partition ratio. The biggest driver for this decision was supporting high concurrency with its growing customer base.
Outcomes
With SingleStore, Foodics has supercharged its cloud-based POS and restaurant management platform supporting its customers such as Buffalo Wild Wings, Cinnabon, Dunkin’, Galito’s, Little Caesars, Starbucks, and many more.
The system also offers customers a fast and secure checkout experience by integrating Foodics Pay with their Cashier App.
SingleStore’s sharding and parallelism allows for high throughput and fast response times for query execution, as well as the ability to scale workloads as needed. SingleStore dramatically speeds time-to-insight with real-time streaming ingest and blazing fast queries. Yet, service and support are as important to Foodics as the technology. “The best part about SingleStore is the customer and technical support. The support team will not stop until you get what you need. That’s very special about SingleStore, and gives us confidence we’ll be able to grow with them,” said Radwan.
“The best part about SingleStore is the customer and technical support. The support team will not stop until you get what you need. That’s very special about SingleStore, and gives us confidence we’ll be able to grow with them.”
Mohammed Radwan
Head of Engineering, Foodics
Infinite Scalability and Near-100% Uptime Enhance CX and Reduce Churn
By choosing SingleStore, Foodics went from a 200-concurrent-user limit to virtually limitless concurrency: SingleStore supports tens of thousands of concurrent users. Plus, Foodics now delivers 99.99% availability, so it is more reliable. Foodics now delivers an engaging customer experience. That reduces churn, helps it acquire new customers, and accelerates its growth. In fact, Foodics built its SingleStore deployment based on a 2X projected growth rate. Not only does this improve Foodics’ revenue, it also positions it to obtain additional funding as the platform and customer base grow.
Delivering Real-Time Customer Experiences on a Future-Proof Platform with 100X Better Price Performance
After adopting SingleStore, Foodics gained a 100X performance cluster at the same cost. It was supported by SingleStore’s technical and customer support team every step of the way, ensuring that Foodics is getting the most value out of its database investment.
60% Faster Query Performance Speeds Customer Time-to-Insight
With SingleStore, Foodics saw average query response time drop from 200 to 80 milliseconds, even on complex analytical queries. Its customer base is better able to make informed business decisions in the moment, allowing them to quickly react to changing market trends.
Watch this on demand webinar, Supercharging SaaS Applications: The Foodics Story, to hear Foodics discuss its innovative implementation of SingleStore.
SingleStore is helping companies compete and win across every vertical. Learn more →