Apache Lucene is an open source and free text search engine library written in Java. It is a technology suitable for applications that requires full-text search, and is available cross-platform.
$0
per month
Azure AI Search
Score 8.3 out of 10
N/A
Azure AI Search (formerly Azure Cognitive Search) is enterprise search as a service, from Microsoft.
As I've mentioned, the biggest competitor to Azure Search is actually Azure SQL Database. It doesn't have as many features, but it's more economical and most .Net applications will have one already. As long as you can arrive at a schema and ranking strategy, it's a "good …
Apache Lucene is a perfect text search implementation where the heap space usage needs to be kept to its minimal. It also enables search based on various search fields and most importantly the search and index process can happen simultaneously. The only scenario where it might be less appropriate would be when the index size grows too big. We have witnessed few scalable issues where the search would take a while when the index size is too large.
Incredibly robust software for an enterprise organization to plug into their application. If you have a full development resource team at your disposal, this is great software and I highly recommend it. Largely, however, you won't be able to use this prior to the enterprise level. It's just too complicated and cumbersome of a product.
We found Apache Lucene to be extremely performant in querying large amounts of data and retrieving the correct files based on the metadata provided.
The online community offers great support for the product. Even though it is an open source tool, it is not difficult to find help online for it.
When we were creating a proof of concept application, we found that the software worked just as well, while being run locally on a resource-limited PC.
Azure Search provides a fully-managed service for loading, indexing, and querying content.
Azure Search has an easy C# SDK that allows you to implement loading and retrieving data from the service very easy. Any developer with some Microsoft experience should feel immediate familiarity.
Azure Search has a robust set of abilities around slicing and presenting the data during a search, such as narrowing by geospatial data and providing an auto-complete capabilities via "Suggesters".
Azure Search has one-of-a-kind "Cognitive Search" capabilities that enable running AI algorithms over data to enrich it before it is stored into the service. For example, one could automatically do a sentiment analysis when ingesting the data and store that as one of the searchable fields on the content.
The search and index performance of [Apache] Lucene is excellent and the quality of results is good, if not better. For implementing it with small scale applications it is a no brainer, Lucene is the best and most cost effective solution. Learning curve is not too steep either.
Azure Search is a competitor against Google's own AI autosuggest a feature. We went with Azure because our network security folks found it to be more robust from a security standpoint, which is incredibly important when you have proprietary manufacturing information. Additionally, we're a Microsoft shop so it plugged into our cloud hosting package and client facing OS.
Being an open source project we did not have to pay any licensing fees for using Apache Lucene. It has greatly improved our search functionality in our web apps.
Azure Search enabled us to stand up a robust search capability with very few developer hours.
The fully-managed service of Azure Search means we get low cost of management (EG, DevOps) going into the future, even though the cost of the service itself definitely reflects the time saved.
Azure Search counts as a "Cognitive Service" for Microsoft Azure consumption and aligns our products with Microsoft's interests of driving an AI-first approach in the enterprise. Microsoft Partners, service and product companies alike, should be looking to align with this AI vision as it means favorable treatment from the Microsoft sales teams.