liveBook · Manning

Full-text search engine

As explained in Elasticsearch in Action, Second Edition

A full-text search library is a software library that indexes and searches natural-language text.

A full-text search engine indexes and searches natural-language text. It is designed for search workloads that traditional databases handle poorly, especially large text collections, incomplete queries, spelling mistakes, synonyms, and language variation. section 1.2.3

Search engines differ from traditional databases in several practical ways:

  • Optimize indexing and near-real-time searching across large volumes of text rather than primarily storing structured records. section 1.2.3
  • Support search behavior such as fuzzy matching, stemming, and synonyms, instead of relying mainly on exact value matching. section 1.2.3
  • Handle unstructured and semi-structured data across fields without requiring every searchable value to remain normalized across relational tables. section 1.2.3

From search library to search service

Apache Lucene supplies high-performance indexing and searching as a Java library, so an application must integrate it through programming interfaces. Elasticsearch wraps Lucene in a distributed, scalable, programming-language-agnostic server. Solr and OpenSearch are other search-engine options built on Lucene. section 1.3.2 section 3.1

Full-text search engines can support application search, monitoring, log analytics, security-event capture, and other workloads where relevance, speed, scalability, availability, and fault tolerance matter. section 3.1

How Elasticsearch in Action, Second Edition covers it

How deep it goes
Explains indexing, language-aware matching, and Lucene-based architecture, but stops short of query syntax and index implementation details.
Examples
Uses application search, monitoring, log analytics, security-event capture, and large text collections as representative workloads.
What you can do after
Evaluate/understand when a search engine is more suitable than a traditional database and how Lucene-based services are organized.
How it connects
Connects databases, Apache Lucene, Elasticsearch, Solr, OpenSearch, fuzzy matching, stemming, synonyms, and analytics.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Elasticsearch in Action, Second Edition. The section links point to the parts of the book it draws on.