The hospitality industry is competitive at the best of times. During a global pandemic, which forced mass shutdowns, it has become even more so. That’s why restaurants need every tool at their disposal to keep their doors open.
Nesto is one such tool. It’s a platform that uses AI to forecast optimal staffing requirements, automating common tasks such as time management and tracking of employee records. Instead of trusting the gut decisions of an operations manager, Nesto leverages historical sales data and external factors, such as the weather and COVID-19 incidence rates, to forecast staffing requirements and make recommendations to optimize costs.
The Nesto team from left to right: Stefan Trauth, Clemens Krug, Alexander Gawrilow, Alexander Werling, Felix Kaiser, Martin Löper, Artur Kraft, Caroline Hemberger, Annika Kolembar; additional members not pictured due to COVID-19 restrictions.
Founded in 2017, the German-based start-up has tripled in size and is set to continue its growth, especially in light of the volatile staffing requirements restaurants are facing during the COVID-19 pandemic. With over hundreds of restaurants already using its solution, Nesto was determined to find a database that would allow it to scale without compromising on storage costs or the end user experience.
“We wanted to create an intuitive application that could be hosted on AWS and offered as a subscription service to local restaurants,” explains Martin Löper, Cloud Solutions Architect, Nesto Software GmbH. “We needed a robust, cost-effective and scalable database to underpin that application.”
Nesto began their journey briefly self-managing MongoDB before migrating to MongoDB Atlas, a true multi-cloud database service. The cloud-hosted MongoDB service has been built for agile development teams who would rather spend time building apps than managing databases, and this is exactly what Nesto needed in order to reduce its time to market.
Nesto chose to move to MongoDB Atlas because of its best-in-class automation and proven practices that guarantee availability, scalability, and compliance with the most demanding data security and privacy standards, such as EU GDPR regulations with which it must comply.
“We chose Atlas because it can host databases on multiple cloud platforms which gives us the flexibility to switch providers if needed, and it is fully managed which eliminates the error-prone nature of managing it ourselves,” says Löper. Nesto is using AWS to run its application today. The frontend is written in Vue.js and delivered via AWS CloudFront. On the backend, it has an application load balancer forwarding requests to an AWS Fargate container fleet which uses VPC peering to connect to the MongoDB Atlas cluster.
“Deploying MongoDB Atlas was simple – it’s impressive how quickly we provisioned a full cluster with replication. It doesn’t require maintenance so we can focus on more important tasks. For us, the database is the most critical component of all and we have been very satisfied with Atlas,” says Löper.
Architecture diagram
Navigating data protection regulations
Whilst getting up and running with Atlas was easy, navigating data protection regulations proved challenging. Nesto is required to adhere to strict GDPR regulations when handling employee data. The EU regulation has far-reaching effects on how PII data is accessed and what rights the subject of the data is granted. This adds an additional layer of complexity for Löper and team who must ensure all employee data in their system is properly retained, easily accessible, and that data access is traceable.
To fulfill these requirements, they built a read auditing solution in MongoDB Atlas. The solution consists of a dedicated database collection where each document maps to a read audit log. “This solution worked well for us at the start but as our application began to scale, a problem emerged,” says Löper.
Within a single year, the audit collection had reached over 50 million documents, making up nearly 80 percent of all storage and backup costs. While it was a requirement for Nesto to retain this data, the collection was insert-only and didn’t require millisecond processing according to GDPR regulations. Naturally, the team began exploring alternatives to reduce costs.
Martin Löper, Cloud Solutions Architect, Nesto Software GmbH
Their initial consideration was to build a data pipeline to offload data to cloud object storage. However, doing so would require additional development work to set up and maintain – resources Nesto couldn’t afford to lose.
“Running separate queries to retrieve live and archival data across systems then merging the results would be quite a pain for our developers,” Löper explains. “They are comfortable working with MongoDB and prefer using the tooling that comes with it.”
With pressure to get its database storage costs under control, Nesto once again turned to MongoDB. This time discovering a feature in MongoDB Atlas called Atlas Online Archive. With Online Archive, users can create rules to automatically archive infrequently accessed data to fully managed cloud object storage, all while retaining the ability to query it through a single endpoint. It was the perfect solution.
Today, Nesto has an active archiving rule on data that is older than 14 days. This translates to approximately six million documents archived per month, and accessed through the Online Archive endpoint.
“It was simple to deploy Online Archive and create a low-cost cold storage environment for data, which automates archiving and tiering from live clusters into fully managed storage,” continues Löper. “It is an affordable, reliable and scalable way to manage our growing data needs.”
Architecture diagram
With Online Archive enabled on its read audit collection, Nesto saved an astounding 60 percent in data storage costs and 70 percent in cloud backup costs. This represents a reduction of 35 percent on overall database spend.
“We are thrilled to have achieved our goal of cost reduction in a short period of time, and are confident that Atlas can handle the load of our growing business,” says Löper.
Data volumes are set to grow even further for Nesto. The company has developed a plug-and-play IoT device that connects to a customer’s POS system to gather revenue data, which it ingests to power its AI model. The data is parsed upon ingestion and directed across Atlas clusters and AWS S3 storage.
“The IoT devices give us an additional way to gather data automatically without disturbing our customers,” says Löper. “Knowing we have Online Archive to sort and tier that data flexibly provides a great opportunity and peace of mind.”
It’s that peace of mind which has proven most valuable to the Nesto team and its customers. MongoDB provides the backbone that supports the automation of hospitality tasks and helps them operate more efficiently.
Martin Löper, Cloud Solutions Architect, Nesto Software GmbH