Searching for Answers
When was the last time you thought about how “search” worked?
Thanks to Google, we look at searching as a fundamental part of our experience with any website or piece of software. Most of the time we take for granted this seemingly simple user interface. Creating a seamless search experience that returns the results that you wanted has a surprising amount of complexity behind it.
A leading logistics company came to us with a problem that they thought might be too big. The search functionality in their custom application was… let’s say... not a great user experience. The old system required the user to make many selections of fields to search against to eventually find the document they wanted. This involved a combination of dropdowns, checkboxes, and text search queries. This made for a frustrating user experience to say the least. To make things even more difficult on the back end, the search system was looking at multiple data types with each data type having a unique set of fields. The old search system was created years ago and was not keeping pace with the client’s growing business. At the time of this writing, their database had over 2.6 million records. The old system was starting to show its age and was not able to return results as quickly as needed.
Enter ElasticSearch. (Cue the choir) We’ve been excited about ElasticSearch and are now Verified ElasticSearch Partners. This problem felt like a great opportunity to supercharge our client’s search experience. We chose to move forward with Elastic for several reasons:
Scalability - A data set of a few million records is nothing compared to the size that ElasticSearch can handle. Elastic makes spinning up additional clusters easy to handle as volume grows, so they would be able to handle massive amounts of data as needed. This gives them a platform to grow into.
Speed - Not only would Elastic provide space to hold that data, it provides the speed to search that data almost instantly.
Customization - The typical out-of-the-box solutions were not going to work here. This needed fine tuning to work with the custom documents that were part of this system.
“I’ve really been liking how the new search is working and I would like to see it start searching other areas of our system as well. It’s really easy” - David
Beyond enhancing the search field, developing with ElasticSearch and ingesting all the data into one place will open doors into other potential functionality as well. Business Intelligence and Data Analysis would enable them to learn from the data in a whole new way. Giving a never before seen picture of their business. Another extension to their Elastic ecosystem would be using Application Performance Metrics to monitor all custom software applications that have been developed as part of their system, to oversee the health and statistics of their entire platform
The bottom line… The best search feels simple and intuitive. Every situation is different and doesn’t always require something as robust as ElasticSearch, but as we work alongside our partners, we customize our strategy to find the optimal resolution for our clients’ needs.
What problem are you avoiding because you feel like it’s too big?