About Full Text Search

Full Text Search provides the capability to identify natural-language documents that satisfy a query, and optionally to sort them by relevance to the query.

Full Text Search will find all documents containing given query terms and return them in order of their similarity to the query. Notions of query and similarity are very flexible and depend on the specific application. The simplest search considers query as a set of words and similarity as the frequency of query words in the document.

In concert with the table interface, Oracle NoSQL Database integrates with the Elasticsearch third-party open-source search engine to enable Full Text Search capability against data stored in an Oracle NoSQL Database table. See Elasticsearch.

Full Text Search is an important aspect of any big data or database system. Users expect that when they input text into a box and click search, they will get the relevant search results they are looking for. Thus, besides providing high performance Full Text Search of data stored in Oracle NoSQL tables, the mechanism described in this document also allows users to explore a collection of information by applying multiple Elastisearch filters.

The feature described here provides a mechanism for marking fields from an Oracle NoSQL Database table schema as being text searchable. This so-called Oracle NoSQL Text Indexing mechanism allows one to create Elastisearch indexes on the data stored in Oracle NoSQL Database tables. It does this by causing the data in the indexed fields to automatically be stored in a corresponding index created in a given Elastisearch cluster. Once the data is stored (indexed) in Elastisearch, one can then use any native Elastisearch API to search and retrieve the data that matches the specified search criteria. References contained in the documents returned by Elasticsearch can then be used to retrieve the original Oracle NoSQL Database records that correspond to the indexed data.

Note:

So that the maintenance of indexes does not affect the performance of an Oracle NoSQL Database store, the text indexes that are used for Full Text Search will not be maintained locally by Oracle NoSQL Database components. Rather, they will instead be maintained by a remote Elasticsearch service hosted on other nodes.