This module provides a set of abstraction layers that integrate the Silverstripe CMS content with a search-as-a-service provider, such as Elastic or Algolia. The focus of this module is on indexing content only. It does not provide any frontend tooling for UI nor APIs for querying data.
Additional search-as-a-service integrations can be added using the IndexInterface
abstraction. Additional
non-dataobject content types can also be exposed to indexes. They must be class-backed and implement the
DocumentInterface
abstraction.
Indexing can be very resource intensive, and as such, using
QueuedJobs is required. Understanding that running asynchronous
tasks can be cumbersome in dev mode, there is a use_sync_jobs
configuration setting that runs the
jobs synchronously, but this is not recommended for production.