Blog

Introducing Meilisearch As A Solspace Offering

Meilisearch is a relatively new entrant into the website search utility space. It was inspired by and is closely related to Algolia, the current market leader in such web services. Meilisearch is an open source product whereas Algolia is not. You can host your own Meilisearch server or use the commercial cloud base solutions offered by Meilisearch. With Algolia you can only use their paid cloud offering.

With Meilisearch, your web developer will configure your CMS or e-commerce system so that it is capable of building one or more search indexes inside Meilisearch. When users conduct searches on your site using the interface created by your web developer, they are hitting these special indexes to get reliable, relevant results at a very high speed.

Meilisearch makes available extremely powerful tools for things like faceted searching. Many websites have large data sets that users need to quickly sort and filter through. Meilisearch embraces this problem and makes a wide variety of tools available so that your developer can custom-tailor solutions for your different customer groups.

Reliability

Meilisearch depends on an indexing concept. Indices of documents are built in advance and available when users come to search. This architecture results in reliable search performance over time. As well, since you can host your own instance of Meilisearch you can have a hand in its up-time reliability. As a website owner, you are also free to use Meilisearch's enterprise-ready hosted offering. But if there are constraints on privacy or access controlled data, the reliable self-hosted option is advantageous.

Speed

Site owners adopting Meilisearch normally do so because of its incredible speed. We built a demo of Meilisearch that allows you to experience its incredible speed firsthand. Try it here. You will see a data set of 50,000+ businesses provided for educational and demonstration purposes by Yelp. The link you land on above is pre-filtered to business types. Meilisearch normally completes its part of the page load in close to 5 milliseconds. The fastest human blink is about 100 milliseconds.

Relevance

Fast search? Great. Are the results relevant or garbage? Results from Meilisearch are as relevant as the indexes you build for it and the user interface you put in front of it. The realm of search speed and search relevance is one for computer science PhDs. The field has advanced significantly in the last 5 years.

With Meilisearch, your web developer will configure one or more search indexes. These indexes will be composed of documents that represent individual items of content on your website. Meilisearch allows your web developer to apply rankings and weights to the different aspects of your data. For example, in our demo with Yelp businesses we wanted to have a pulldown to allow users to choose their own sort order, eg. star ranking, alphabetical and random. To provide this kind of search interface for users, we need a Meilisearch index where 'sort' is the top-level ranking rule. After that comes the 'featured' attribute which allows us to bubble paid, featured entries up to the top of search results - a must-have for some websites. You can learn more from the Meilisearch docs on ranking rules. Don't worry, Meilisearch docs are extremely user-friendly and approachable by web professionals and laypersons alike.

Power

Clients need Solspace when websites are complex. And Solspace needs powerful tools to meet complex client needs. Meilisearch is our search tool of choice a lot like Craft CMS is our web development platform of choice. They are both powerful tools that in the right hands can meet virtually any website need over time.

The architectural concepts with Meilisearch are simple alone but when combined are powerful. We've already discussed indexes. The fact that a given website can rely on multiple search indexes means each index can be custom configured and optimized for a specific purpose. Meilisearch saves data in JSON format, which means it is easy for web developers to manipulate and adapt functionality. Meilisearch's API is extremely easy to understand and work with. There are excellent SDKs to support working with Meilisearch across any number of web development languages such as PHP, Javascript, Ruby, Python, etc.

Possibilities

These are just a few of the website use cases that Meilisearch is optimized to support:

  • Keyword search. The most common use case for Meilisearch is a keyword search. Users just need to quickly ask your site if it has what they are looking for.
  • Faceted search. Among our clients, this is the most common and complex use case. Our e-commerce clients must allow customers to quickly filter across multiple product attributes or facets. Meilisearch excels here. Some clients need to allow their customers to filter big data sets of service offerings on multiple attributes. Some clients offer directories of businesses that each have highly complex faceted business attributes.
  • Configurators. We build product and service configurators at Solspace. These allow customers to explore the complexities of our client's product offerings, trying out different permutations and saving their favorite results to share with co-workers and purchase approvers.

Demo

We'll be blogging quite a bit about different use cases and aspects of Meilisearch. Most of those posts will refer to the demo we put together. Feel free to explore it to get a feel for what Meilisearch could do for your website. Give us a ping on our contact form if you want to talk a bit more about it.

Try our Meilisearch demo here