The age old question of build vs buy. What are the alternatives to building with Solr? How does Solr compare with commercial search solutions?
The answer? It depends. Apache Solr is an impressive piece of technology. When it comes to providing users with the information they need, though, Solr may not be enough for today’s applications. Additional features are needed to meet modern user expectations, such as collaborative filtering, recommendations, type-ahead, and AI-based relevance tuning. More infrastructure is required to support a Solr-based installation, such as security, monitoring, tuning, and deployment tools.
A handy father of three got a copy of blueprints for a bungalow he envisioned. He and a few buddies spent three weeks laying the infrastructure down – and then used their free weekends to build it. It was comfortably habitable after three years, complete with running water, proper plumbing, and electricity.
Twenty years later, his daughter also wanted a new home, and she needed it complete as soon as possible. She had no idea where to start and was busy dealing with other things, so she hired a contractor instead. She moved into her new home within three months and found that her house was better quality than the one her father built, though she never told him that.
For this father-daughter duo, the choice to build or buy came down to four factors: dedicated time, expertise, workforce, and urgency. The father had time, expertise, his own dedicated workforce, and did not have a pressing deadline – so he built. The daughter had less time, little expertise, no dedicated workforce, and an instant need – so she bought.
Apache Solr is an impressive piece of technology. However, like building a bungalow yourself, it requires dedicated time, expertise, and workforce. And even if you have those components, if you want results in months instead of years, building might not be for you.
Planning Your Search Project
In planning the house, the father created a plan based on his expertise. The daughter hired an experienced architect. She decided how big the living-room should be and the floorplan’s non-structural components, but the architect decided where the support beam should go. The architect reused work from templates and other projects. That made the work more affordable than it might’ve been otherwise. It also means those elements were tested elsewhere.
To plan a search project, enterprises choose between in-house expertise and those of a vendor. The vendor has done this project many times for many customers and has the pieces ready-to-go, and they can also partner to craft the solution that meets the enterprise’s individual needs.
A Solr project is an “in-house” project. Solr provides an excellent core, but a search project involves a lot more work than what Solr provides. In effect, you are building the bungalow but also coming up with the blueprints. With Coveo, you still have choices, but much of the work is done for you by experts who have done it for many others.
The Foundation: Sourcing the Data
The father and his friends painstakingly laid out the bungalow’s foundation, buying the right blocks, mortar and putting it together. The daughter hired experts who poured a flat slab and used equipment to smooth it.
For Solr, a big part of the project is figuring out how to get data from your data sources into Solr. For Coveo, this is a primarily UI-driven activity that can automatically bring in data from over 10,000 sources of over 100 content types.
The Frame: Deploying the Infrastructure
The father and his friends framed the bungalow, measured each board, used a level to ensure they got it right, and put the bones of the place together. The daughter hired experts who did some of the same things and relied upon pre-fabricated parts and higher-end tools.
Most Solr projects are self-hosted. That means provisioning the servers, VMs or cloud, deciding how many Zookeeper nodes are needed, and deploying them. Your team must decide how many nodes of SolrCloud are needed, configure them, and then set up Kubernetes or whatever system you use to control it all.
The Coveo relevance platform is an enterprise-class cloud-native SaaS/PaaS solution that provides a unified and secure way to search for contextually relevant content across many enterprise systems. With a platform like this, you don’t have to worry about provisioning servers or deploying containers.
Plumbing is like a miniature house in and of itself. It has a structure and rules based on pressure and how water flows. (So too does a data import job, backups, and other vital processes that keep a Solr install running.)
The father had to learn all about plumbing and the tools and technology – otherwise, his homeowner’s insurance rate would be ugly. The daughter only needed to know what was requirred in order to fill out her homeowner’s insurance application.
Coveo includes the plumbing for you. The infrastructure is always up to date with the relevant tools and technologies. Finally, unlike both father and daughter – you never have to call the plumber if it leaks – Coveo takes care of it.
The frame, the foundation, and the roof don’t make a home on their own. The interior changes a building into a home. The shag carpet of the 1970s or the table-based layout and web form styles of 1990s web applications are one way to go with an interior – but they probably do not make modern users comfortable. A lot of work goes into a modern search experience, from auto-suggest to hover-over links and recommendations based on the user’s past clicks and searches.
With Solr, a team is entirely on its own here. Put up your drywall, find the right web frameworks, code things like autosuggest and hover-over from scratch.
With Coveo, you have multiple options from:
- In-Product Experiences is a totally “rooms to go” pre-designed UI.
- An Interface Editor that lets you drag and drop your interfaces together.
- A headless UI toolkit that lets you create custom components but does the scutwork of backend communication.
- Prepackaged purpose-built Machine Learning models that simply require a few clicks to configure
- A complete set of configuration tools for tuning relevance and testing results
From locks to the system, a lot of thought must go into security. Moreover, thieves put more time and thought into security than a homeowner ever will. If a server is on the internet, someone or some bot is attacking it right now.
Corporate security is more complicated than home security. You either have access to the home or not. You may have access to a building or search application in a company but not specific rooms or pieces of data. Essentially, Solr provides a basic front door lock. To secure anything more specific requires that you build a parallel system.
Coveo meets the latest security standards and certifications. Any data that was secure at the source is also encrypted and secured by role in Coveo. Users do not even see results they cannot access if an organization’s policy prohibits it.
Maintenance and Repair
That bungalow requires a lot of maintenance. It was well-built but not by people who regularly built houses. A lot of work goes into keeping it up. Solr is a solid piece of software engineering designed for people who know search engines well.
Coveo maintains and repairs the core infrastructure mostly invisible to the Enterprises that use our technology. But our service goes above and beyond that. Coveo provides customers with the expertise to make search experiences that empower and delight their users as a tool of choice rather than just necessity.
Time To Choose
Don’t get me wrong – the bungalow is an impressive feat and continues to serve its purpose. But for most of us, life and our day jobs don’t allow us the luxury of endless months (if not years) to create a home.
So when considering build vs buy, remember the four factors: time, expertise, workforce, and urgency. If you want to build your own bungalow – go for it. If you are missing any of the first three factors, or have them all but need results now, consider buying.
With Coveo, you can make an amazing search experience for all of your users or customers – without having to build everything from scratch. Plus you can take advantage of built-in machine learning. Then again, you could build your own modules, add in Apache Spark, some TensorFlow, create your own widgets, wire them in with React, create an admin console, a scheduler for your indexing tasks, deployment tools for your infrastructure, etc. – or you can just adopt a relevance platform and have all that in minutes.
Want an estimate? An idea of how much work goes into building your bungalow with Solr or your dream house with Coveo? Test drive the Coveo relevance platform today.