The Basics of Search Engines

  • What kind of apps are particularly reliant on search?

    A good rule of thumb: If an app has a search box, it will need a search engine.

    This includes, but is not limited to:

    • eCommerce apps
    • Marketplaces
    • Websites
    • Mobile apps
    • Logging apps
    • Knowledge Bases
    • Productivity tools
    • Social networks
    • Analytics tools

    ECommerce, marketplaces, social networks, and analytics tools are often heavy search users.

  • Why shouldn’t my customers just rely on a database for search?

    ACID compliant databases are great at keeping records secure and reliably accessible at all times. That being said, they’re not built to make those records discoverable to end users. Search engines are built for one use case, which is to accommodate the myriad of different kinds of queries from users.

    Why shouldn’t an app just use a database for search?

    1. Databases are very literal, and aren’t built for “fuzzy” searches. They are not built to accommodate the range of different search criteria that your users could choose.
    2. Features like spellcheck suggest, auto suggest, and pattern matching are not default to databases.
    3. The architecture of a search engine is custom made to return helpful results as quickly as possible.
    4. Search engines give developers the freedom to tune search results in a variety of different ways, including by age, relevance, margin, etc.
  • My customer mentioned “the ELK stack.” What is that, and can customers set it up on Bonsai?

    The ELK stack is composed of:

    • Elasticsearch, which is the underlying search engine technology
    • Logstash, which collects, parses, and stores logs for future use
    • and Kibana, which is used for visualizing data.

    Bonsai customers can deploy Elasticsearch and Kibana in seconds. Since not all users need Logstash, it can be integrated with Bonsai, but is not a default feature within our platform.

  • Why would a customer choose Elasticsearch over Solr?

    Solr is an older search engine based on Apache Lucene. It is robust, but not as easy to use as Elasticsearch. It also doesn’t have the community support or momentum.

    In case you have a customer who actively requests Solr, we will support it as well. You can send them to

  • Why should my customers choose Elasticsearch over other commercial options?

    Elasticsearch is by far the world’s most popular search engine for web applications. There are proprietary competitors, but none offer the kind of flexibility that Elasticsearch provides out of the box.

    Learn more about Elasticsearch at