Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The module learns user preferences to offer better result ranking for subsequent searches. By default, search result rankings are stored per user. You can change the configuration as necessary. For example, you can enable an individual ranking for each user or for selected users only. Additionally, you can configure the memory size of networks to mitigate possible memory consumption issues in large setups.

Table of Contents

Installing with Maven

Maven is the easiest way to install the module. Add the following to your bundle:

Code Block
<dependency>
  <groupId>info.magnolia.periscope</groupId>
  <artifactId>magnolia-periscope-result-ranker</artifactId>
  <version>1.2.4</version>
</dependency>

Table of Contents

...

Source Code

The source for this module can be found here: 

Configuration

The module comes with the following default configuration:

periscope-result-ranker/src/main/resources/periscope-result-ranker/config.yaml

Code Block
outputUnits: 10000
rankingNetworkStorageStrategy:
  class: info.magnolia.periscope.rank.ml.jcr.JcrUsernameNetworkStorageStrategy

Properties

PropertyDescription
outputUnits

required, default is 10000

The memory size of neural networks.

The result-ranking system requires memory (heap space) and disk space per unit for each user (local ranking) or instance (global ranking). You can adjust the size of the memory used per unit to mitigate possible memory consumption issues (see Result Ranker memory size).

rankingNetworkStorageStrategy

required

The result-ranking memory strategy.

The default strategy stores result rankings per user. Other strategies are possible (see Result Ranker strategy).

To adjust the strategy, set the class property accordingly.

class

required, default is info.magnolia.periscope.rank.ml.jcr.JcrUsernameNetworkStorageStrategy

Other possible values must be a subtype of info.magnolia.periscope.rank.ml.RankingNetworkStorageStrategy.