Relevance Data Stores - BloomReach Experience - Open Source CMS

This article covers a Hippo CMS version 10. There's an updated version available that covers our most recent release.

29-08-2016

Relevance Data Stores

Introduction

Goal

Configure the data stores used for different classes of data collected by the Relevance Module.

Background

The Relevance Module collects and stores different classes of data. Each has specific requirements regarding performance, reliability and querying capabilities. To meet these requirements different backend systems are supported and required.

Data Stored by the Relevance Module

The Relevance Module stores four different classes of data:

  • Requests
    Raw request data. Used in the Real Time panel of the Audiences perspective as well as to derive other data such as Visits.
  • Visits
    Derived from aggregated request data. Queried by the Experiments charts and Trends panel of the Audiences perspective.
  • Visitors
    Data about individual visitors currently active on the site. Queried and possibly updated on every page request so its data store must be fast.
  • Statistics
    Statistical data about personas and characteristics. Used to determine which persona best matches a visitor.

Each class has its own data store, configured using the Console application at the following repository nodes:

/targeting:targeting/targeting:datastores
    + targeting:requestlog                (requests)
    + targeting:statistics                (statistics)
    + targeting:targetingdata             (visitors)
    + targeting:visits                    (visits)

Supported Data Stores

The backend systems that can be used as data stores for the different classes of data are listed below with a short description and a link to detailed configuration instructions:

  • Couchbase
    Couchbase can be used - and is required in production environments - to store Requests, Statistics and Visitors. Couchbase can not be used to store Visits because of requirements regarding querying capabilities (see Elasticsearch below).
  • Elasticsearch
    Elasticsearch must be used for Visits because of requirements regarding querying capabilities. Elasticsearch can be used for Requests and Visitors in a development or test environment, but this is currently not supported in production environments because Elasticsearch is not part of Hippo's reliability testing. Reliability is not an issue for the Visits store because it concerns derived data that can be regenerated at any time.
  • In-Memory
    In-Memory data stores are for development environments only and can be used to store Requests, Statistics and Visitors. Data in the in-memory store expires after 30 minutes. In-Memory data stores cannot be used to aggregate Requests data and store Visits data, therefore when using Experiments and/or Trends the In-Memory stores cannot be used even in a local development environment.
  • Repository
    The Repository data stores can be used to store Statistics and will store the statistics in the Hippo repository. Before considering this option, please read the notes in ***.

The table below summarizes which data stores are supported for which data:

 

  Couchbase Elasticsearch In-Memory * Repository
Requests
supported
dev/test only
dev/test only **
unsupported
Visits
unsupported
supported
unsupported
unsupported
Statistics
supported
unsupported
dev/test only **
supported ***
 
Visitors
supported
dev/test only
dev/test only **
unsupported

* We strongly advise you to store requests and visitors in Elasticsearch and statistics in the repository during development. In-memory stores can be accidentally pushed to test or acceptance environments, which causes lots of confusion to developers, testers and acceptants due to the data expiry of the in-memory stores. Therefore, the in-memory store will no longer be available in Hippo CMS 11. As a replacement, we will provide an Elasticsearch web-application in Hippo CMS 11 that you can use to store requests and visitors.

** In-Memory data stores cannot be used to aggregate Requests data and store Visits data, therefore when using Experiments and/or Trends the In-Memory stores cannot be used even in a local development environment.

*** When upgrading from Hippo 10 to 11, tooling is available to migrate data between store types. However, migration of statistics data stored in the repository is not supported. Therefore we strongly advise you to store visitor statistics in Couchbase.

 

Did you find this page helpful?
How could this documentation serve you better?
On this page
    Did you find this page helpful?
    How could this documentation serve you better?