ArangoSearch Views powered by IResearch

ArangoSearch is a natively integrated AQL extension making use of theIResearch library.

ArangoSearch allows one to:

  • join documents located in different collections to one result list
  • filter documents based on AQL boolean expressions and functions
  • sort the result set based on how closely each document matched the filterA concept of value “analysis” that is meant to break up a given value intoa set of sub-values internally tied together by metadata which influences boththe filter and sort stages to provide the most appropriate match for thespecified conditions, similar to queries to web search engines.

In plain terms this means a user can for example:

  • request documents where the body attribute best matches a quick brown fox
  • request documents where the dna attribute best matches a DNA sub sequence
  • request documents where the name attribute best matches gender
  • etc. (via custom analyzers)

The IResearch Library

IResearch is a cross-platform open source indexing and searching engine writtenin modern C++, optimized for speed and memory footprint, with source availablefrom https://github.com/iresearch-toolkit/iresearch

IResearch is the framework for indexing, filtering and sorting of data.The indexing stage can treat each data item as an atom or use custom “analyzers”to break the data item into sub-atomic pieces tied together with internallytracked metadata.

The IResearch framework in general can be further extended at runtime withcustom implementations of analyzers (used during the indexing and filteringstages) and scorers (used during the sorting stage) allowing full control overthe behavior of the engine.

Using ArangoSearch Views

To get more familiar with ArangoSearch usage, you may start withGetting Started simple guide and then explore details ofArangoSearch in Detailed Overview,Analyzers andScorers topics.