arrow leftBack to Customer Stories
Customer Story

BigData Boutique Helps Notion Improve Search Performance and Functionality while Saving Hundreds of Thousands in Cost

In a pivotal hyper-growth period, Notion grappled with optimizing its Elasticsearch cluster for efficient search and cost management. Teaming up with BigData Boutique, they enhanced their Elasticsearch deployment, slashed costs, and incorporated advanced machine learning for heightened search relevance and user experience

Optimizing Elasticsearch performance
Optimizing Elasticsearch performance
Significant cost reduction
Significant cost reduction
machine learning
Search ML (optimizing relevance through Machine Learning)

Meet Notion

Notion is the world’s leading AI-powered productivity and task management tool for managing projects, ideas, and notes under one roof. Its intuitive interface is highly versatile and customizable, making it the go-to tool for many notable enterprise customers such as Uber, Nike, and Amazon and a broad individual user base.

Notion app

The Challenge

Optimization and Customization

Given that Notion is designed as a multifunctional and multi-use platform covering requirements from knowledge centers to web design, search functionality across the vast knowledge base each tenant keeps is key to its growth and scalability. The company’s recent hyper-growth phase meant new challenges, such as maintaining search performance at a reasonable cost.

“Our software engineering team is made up of brilliant and talented individuals, but we didn’t necessarily have the specific search or Elasticsearch experience,” says Avi Arfin, Notion’s search engineering manager. His team sought to improve their search functionality and performance while considering strategic company goals such as cost reduction. They also sought to optimize and customize their Elasticsearch cluster specific to their unique requirements, including writing their own plugins, having granular version control, and making full use of the Elasticsearch APIs for advanced cluster rollouts and management techniques.

The Solution

Finding the Right Partner

In search of a professional partner to assist them with their Elasticsearch challenges, it was critical to the management team that the partner of choice would have an unrivaled knowledge of Elasticsearch and its deployment in real-life scenarios. “We were looking for someone external, with extensive experience, to accelerate our efforts so we didn’t have to run through many trial and error scenarios,” Avi recalls.

After trying several different support and consulting services, Notion turned to the BigData Boutique team.

“We tried several different support services, which weren’t very useful to us. With BigData Boutique, we had the best experience.” - Avi Arfin, Search Engineering Manager, Notion

As the collaboration between the two was successful in helping Notion reach its initial goals, it was decided to review and expand these goals even further. Following a thorough analysis of the existing cluster and the various possible courses of action, BigData Boutique recommended migrating from a managed solution to an Elasticsearch deployment running on AWS EC2 instances. They explained how this change would expand the options for performance tuning and search relevance engineering while reducing costs.

Despite the significant size of the cluster, Notion, with the help of the BigData Boutique team, created a much more stable, performant, and economical deployment than the one they had with the managed service. And significantly better support, too.

Communication is Key

The engagement between the two teams continuously evolved as requirements and goals were strategically modified. With regular sync meetings and an “always-on” Slack channel, Avi’s team members could share code snippets and specific questions, and post scenarios to BigData Boutique’s experts. The fact that BigData Boutique could share its experience with similar use cases was especially helpful in helping Notion make informed decisions. Different courses of action were discussed and analyzed, allowing the teams to dive deeper into possible scenarios and their outcomes before decision-making.

Fine-tuning

The new Elasticsearch cluster, running on EC2, was the backbone of Notion’s entire search functionality. Critical architectural decisions for the cluster were defined and then continuously revisited to ensure the new deployment fit current and future needs. “BigData Boutique gave us several different options to try with our new cluster, each with different minute adjustments, to ensure it worked best for our needs,” says Edward Zhou, a senior software engineer at Notion.

“BigData Boutique was very knowledgeable when working out where and if we needed to make tradeoffs based on memory versus relevance,” notes Avi, “and particularly helpful with the more complex topics, such as implementing fuzzy-search and the associated stems and tunings.”

Modern Search with Machine Learning Methods

The collaborative work also focused on improving Notion’s search by applying machine learning techniques and models, significantly impacting search relevance for Notion’s cluster, and leading to a better user experience for Notion’s customers. After working with Notion for a while on text tokenization and analysis techniques, query strategies, multi-lingual concerns, and more, BigData Boutique recommended Notion try out Machine Learning methods, specifically Learning to Rank (LTR) to improve search relevance and the overall search experience for Notion’s end users. This complex concept was new to the team at Notion, and BigData Boutique delivered the support and expertise to bring it to life.

“BigData Boutique fundamentally helped us understand how we structure machine learning iteration, things we could improve, and what bespoke features we could be building.” - Avi Arfin, Search Engineering Manager, Notion

Saving Hundreds of Thousands of Dollars in Cost

One of Notion’s key strategic company goals when turning to BigData Boutique was cost reduction, as they bring years of experience in creating tailor-made solutions that help companies minimize cluster costs - all while maximizing search accuracy, speed, and stability. By surveying Notion’s clusters, index configurations, queries, and business requirements, BigData Boutique’s experts were able to determine the best course of action. In Notion’s case, this meant migrating from a managed solution to an Elasticsearch deployment running on AWS EC2. Adjustments were then made to ensure precisely the correct number of nodes and the right type of hardware, which led to significant resource optimization and allowed Notion to save hundreds of thousands of dollars in cost. This change positively affects the company without sacrificing performance - the new cluster successfully runs critical search workloads with improved search performance and functionality.

The Results

Maintaining Success

The new clusters are continuously monitored by Pulse, BigData Boutique’s automated platform for Elasticsearch support and maintenance, which ensures full optimization by proactively troubleshooting potential problems and providing ongoing insights and recommendations.

With Pulse, Notion can continuously monitor their production cluster performance, fine-tune the ideal sharding strategy and shard sizes, and ensure cluster hotspots are found in time and dissolved, using the correct bulk sizes. The presence of Pulse and the shared Slack channel results in peace of mind for the Notion team, as they have BigData Boutique experts within reach at any given time to answer questions, all while their mission-critical Elasticsearch cluster is kept at peak performance. This way, even though Notion no longer uses any managed service for running Elasticsearch, they can still maintain a managed-like feeling, knowing real experts have their back and are proactively monitoring their operations.

We use cookies to provide an optimized user experience and understand our traffic. To learn more, read our use of cookies; otherwise, please choose 'Accept Cookies' to continue using our website.