[ 
https://issues.apache.org/jira/browse/UNOMI-724?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Francois Gerthoffert updated UNOMI-724:
---------------------------------------
    Description: 
A POC have been done to validate the usage of Rollover ES API that combine a 
lifecycle policy and aliases to replace the current monthly indices rotation.

The goal behind that is to apply current ElasticSearch recommandation on 
Index/Shards sizing to reduce costs related to monthly indices not being sized 
correctly due to unpredictable amount of events/sessions per months.

POC PR: [https://github.com/apache/unomi/pull/567]
h2. Prerequisite before starting this ticket:

Read carefully ES documentation regarding:
 * Rollover API: 
[https://www.elastic.co/guide/en/elasticsearch/reference/7.17/ilm-rollover.html]
 

h2. What remain to be done in current ticket ?
 * Cleanup the POC
 ** cleanup used old functions from previous implem
 ** deprecate old param not used like: *dateHint*
 ** global code review and cleanup of the new implem (if necessary contact me 
directly to discuss improvement point)
 * make the rollover configurable using configuration file ({*}max_age, 
max_size, max_primary_shard_size, max_docs.{*} See documentations regarding the 
rollover capabilities: 
[https://www.elastic.co/guide/en/elasticsearch/reference/7.17/ilm-rollover.html]
 )

Out of current ticket scope: 
 - check performance for session loaded using query: 
https://issues.apache.org/jira/browse/UNOMI-725
 - fixing the purge system: https://issues.apache.org/jira/browse/UNOMI-726
 - fixing the merge system: https://issues.apache.org/jira/browse/UNOMI-727
 - handle migration: https://issues.apache.org/jira/browse/UNOMI-728

h2. Automated test

Query Elasticsearch to verify lifecycle policy once the configuration has been 
applied in Unomi
h2. Test Case: 

 - Pick one of the configuration (such as max_docs), configure Unomi with a 
very low value

 - Create anonymous session

 - Verify rotation is happening when sessions are created and get above the 
configured threshold.

  was:
A POC have been done to validate the usage of Rollover ES API that combine a 
lifecycle policy and aliases to replace the current monthly indices rotation.

The goal behind that is to apply current ElasticSearch recommandation on 
Index/Shards sizing to reduce costs related to monthly indices not being sized 
correctly due to unpredictable amount of events/sessions per months.

POC PR: [https://github.com/apache/unomi/pull/567]
h2. Prerequisite before starting this ticket:

Read carefully ES documentation regarding:
 * Rollover API: 
[https://www.elastic.co/guide/en/elasticsearch/reference/7.17/ilm-rollover.html]
 

h2. What remain to be done in current ticket ?
 * Cleanup the POC
 ** cleanup used old functions from previous implem
 ** deprecate old param not used like: *dateHint*
 ** global code review and cleanup of the new implem (if necessary contact me 
directly to discuss improvement point)
 * make the rollover configurable using configuration file ({*}max_age, 
max_size, max_primary_shard_size, max_docs.{*} See documentations regarding the 
rollover capabilities: 
[https://www.elastic.co/guide/en/elasticsearch/reference/7.17/ilm-rollover.html]
 )

Out of current ticket scope: 
 - check performance for session loaded using query: 
https://issues.apache.org/jira/browse/UNOMI-725
 - fixing the purge system: https://issues.apache.org/jira/browse/UNOMI-726
 - fixing the merge system: https://issues.apache.org/jira/browse/UNOMI-727
 - handle migration: https://issues.apache.org/jira/browse/UNOMI-728

h2. Test Case: 

 - Pick one of the configuration (such as max_docs), configure Unomi with a 
very low value

 - Create anonymous session

 - Verify rotation is happening when sessions are created and get above the 
configured threshold.


> Session/Event index rollover: Implement ElasticSearch rollover recommandation 
> and system to manage current monthly indices
> --------------------------------------------------------------------------------------------------------------------------
>
>                 Key: UNOMI-724
>                 URL: https://issues.apache.org/jira/browse/UNOMI-724
>             Project: Apache Unomi
>          Issue Type: Improvement
>    Affects Versions: unomi-2.1.0
>            Reporter: Kevan Jahanshahi
>            Priority: Major
>             Fix For: unomi-2.2.0
>
>
> A POC have been done to validate the usage of Rollover ES API that combine a 
> lifecycle policy and aliases to replace the current monthly indices rotation.
> The goal behind that is to apply current ElasticSearch recommandation on 
> Index/Shards sizing to reduce costs related to monthly indices not being 
> sized correctly due to unpredictable amount of events/sessions per months.
> POC PR: [https://github.com/apache/unomi/pull/567]
> h2. Prerequisite before starting this ticket:
> Read carefully ES documentation regarding:
>  * Rollover API: 
> [https://www.elastic.co/guide/en/elasticsearch/reference/7.17/ilm-rollover.html]
>  
> h2. What remain to be done in current ticket ?
>  * Cleanup the POC
>  ** cleanup used old functions from previous implem
>  ** deprecate old param not used like: *dateHint*
>  ** global code review and cleanup of the new implem (if necessary contact me 
> directly to discuss improvement point)
>  * make the rollover configurable using configuration file ({*}max_age, 
> max_size, max_primary_shard_size, max_docs.{*} See documentations regarding 
> the rollover capabilities: 
> [https://www.elastic.co/guide/en/elasticsearch/reference/7.17/ilm-rollover.html]
>  )
> Out of current ticket scope: 
>  - check performance for session loaded using query: 
> https://issues.apache.org/jira/browse/UNOMI-725
>  - fixing the purge system: https://issues.apache.org/jira/browse/UNOMI-726
>  - fixing the merge system: https://issues.apache.org/jira/browse/UNOMI-727
>  - handle migration: https://issues.apache.org/jira/browse/UNOMI-728
> h2. Automated test
> Query Elasticsearch to verify lifecycle policy once the configuration has 
> been applied in Unomi
> h2. Test Case: 
>  - Pick one of the configuration (such as max_docs), configure Unomi with a 
> very low value
>  - Create anonymous session
>  - Verify rotation is happening when sessions are created and get above the 
> configured threshold.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to