title: Benefits of using a hosted search service over building your own
body: <p>I'm building a B2B Node app which has heavily related data models. We currently have our own search queries, but as we scale some of the queries appear to be becoming sluggish. </p>
  
  <p>We will need to support multilingual search as well as content-based searches (searching matching content within related data).</p>
  
  <p>The queries are growing more and more complicated (each has multiple joins on joins on joins) and I'm now considering a hosted search tool such as <a href="https://www.algolia.com/" rel="nofollow noreferrer">Algolia</a>.</p>
  
  <p>Given my concerns below, why should I use a hosted cloud search service rather than continue building my own queries?</p>
  
  <ul>
  <li>Data privacy is important</li>
  <li>Data is hosted in our own postgres DB - integrations with that are important (e.g.: will I now need to manually maintain our DB data and data in Algolia?)</li>
  <li>Speed will be important, but not so much now</li>
  <li>Must be able to do content-based searches across multiple languages</li>
  <li>We are a tiny team of devs now, so dev resource time is vital</li>
  </ul>
  
  <p>What other things should I be concerned about that can help make a decision in search capabilities?</p>
  
  <hr>
  
  <p>Regarding maintenance of both DB and Cloud data, it seems it's as simple as getting all data, caching it, and storing it in the cloud: </p>
  
  <pre><code>var index = Algolia.initIndex('contacts');
  var contactsJSON = require('./contacts.json');
  
  index.addObjects(contactsJSON, function(err, content) {
    if (err) {
      console.error(err);
    }
  });
  </code></pre>