share

The Fastest Engine in the West?

josh

01 August 2024

4 min

A cheetah running at full sprint.

Speed is not everything when it comes to search, but a slow search engine is problematic for many reasons. Slow-loading results pages can easily be the cause of much frustration, holding you back from a world of deep discovery, or simply delaying dinner plans during the act of finding somewhere to eat.

Proxies to search engines which use APIs from Google, Bing, and/or Mojeek will usually be slower as they are calling the API from a different data centre. When a user does a search on Mojeek, the response is generated at the same data centre as the Mojeek API so the latency is not increased by a remote API call.

Other problems can arise when results pages are loaded up with tracking content, running JavaScript in order to tag you with unique identifiers and capture elements of your behaviour, as well as the characteristics of your computer or mobile device. We don’t use Javascript in this way due to our no tracking stance, a core part of our philosophy on how search should be provided, and Mojeek will function just fine if you turn it off completely. This turns into a benefit as it means the frontend of Mojeek is lightning quick.

Who keeps a record of how quickly the many different options for search are able to return queries? You could ask search engines and their proxies directly, but then you are likely to get some kind of marketing-speak, figures that are selectively picked in order to make the navigator look the best it can be. Luckily we have an impartial observer of speeds that has been offering up these figures for a long time: eTools.ch. In their own words:

The metasearch engine eTools.ch has no own index or database – instead the information is retrieved from several data sources simultaneously (federated search, search several search engines at once) … eTools.ch is as fast as the slowest data source that currently is queried by eTools.ch. Therefore the search settings let you limit the maximum time to wait for a query (by default 2 seconds).

This metasearch engine maintains a table which gives you the current average response duration of the 13 data sources that it queries, these being: Mojeek, Wikipedia, Tiger, Bing, Base, Yandex, Yahoo, Search.ch, Qwant, DuckDuckGo, Lilo, Google, and Brave.

For a long time now Mojeek has been vying for the position of fastest independent search engine on this list, frequently popping up in the top three of the 13. Normally you should see us in third, behind Bing and Wikipedia (not a search engine, but a source nonetheless). This site can also provide some backup evidence if you suspect that a so-called search engine is actually relying upon someone else’s index, as independence will often help with request duration.

Mojeek has been built in order to provide results quickly, using technology built from the ground up. But there is always room for improvement, an opportunity to have a look at the ways in which you are underperforming and be even quicker, and a while back we did just that.

Over a weekend we pushed an update which drastically cut the aggregated response times to some of the worst-performing searches (in the 99th percentile), which before were answered in around 1200ms, and now are being answered in less than a second. You can see this in the graph below. This might not seem like much, but we’re talking about very small numbers here. As you can see the median response time is around 100ms, and 75% of queries have a response time of around 300ms or less.

Graph showing aggregated response times by day for Mojeek, the median response time is around 100ms, and 75% of queries have a response time of around 300ms or less.

As we said up top, speed isn’t everything, but it’s still a core part of providing people with a usable search engine; as Mojeek gets bigger and better, we’ll work hard to keep Mojeek as fast as it can be.

josh

01 August 2024

4 min

Get the latest

Subscribe to our newsletter and receive Mojeek news and articles by email.

Subscribe