Wiki source code of Retention Policy

Last modified by Danniar Firdausy on 2024/09/18 15:56

Hide last authors
Erik Bakker 2.1 1 {{container}}{{container layoutStyle="columns"}}(((
Danniar Firdausy 8.8 2 In this microlearning, we will explore how retention policies manage the lifecycle of messages in your streaming system. Specifically, we will focus on the factors that influence when messages are cleaned up and the actions taken when this occurs.
eMagiz 1.1 3
Erik Bakker 2.1 4 Should you have any questions, please get in touch with [[academy@emagiz.com>>mailto:academy@emagiz.com]].
eMagiz 1.1 5
6 == 1. Prerequisites ==
7
8 * Intermediate knowledge of the eMagiz platform
9
10 == 2. Key concepts ==
11
12 This microlearning centers on the retention policy for Event Streaming.
13
14 == 3. Event Streaming ==
15
16 In this microlearning, we will dive a little bit deeper into the concept of the retention policy concerning Event Streaming. Retention policy determines when a message needs to be cleaned up and, if so, what will happen to the message.
17
18 * The key aspects are:
Erik Bakker 4.1 19 ** Retention Hours
20 ** Retention Bytes
21 ** Cleanup Policy
22 ** These three items determine the retention policy
eMagiz 1.1 23
Danniar Firdausy 8.4 24 As we learned in the [[introductory microlearning>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Event Streaming.crashcourse-eventstreaming-event-streaming-introduction||target="blank"]], the topic holds a log with a sequence of messages. Based on several criteria, the broker decides when to remove messages from the back of the log to ensure that the topic stays within specific parameters. These parameters are the retention hours and the retention bytes. If you want to learn more about them specifically, please check out this [[microlearning>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Event Streaming.crashcourse-eventstreaming-topic-and-topic-properties||target="blank"]].
eMagiz 1.1 25
26 These parameters combined with the cleanup policy determine what happens with a message after it is expired. There are two options available:
Erik Bakker 4.1 27 * delete
28 * compact
29
eMagiz 1.1 30 The delete option is the default that eMagiz uses and advises. This option will, as the name suggests, delete all messages that are expired. There is an alternative approach called compact. This functionality will enable log compaction on the topic.
31
Danniar Firdausy 7.1 32 {{info}}The cleanup policy <compact> is not used in eMagiz.{{/info}}
33
Danniar Firdausy 8.5 34 These three aspects above combine to make up the retention policy. Defining the correct values for both the retention hours and the retention bytes is a science as a form of art. As you only have limited storage capacity available, the challenge becomes how much retention you reserve per topic. The more you assign, the less free storage capacity remains for other topics. As a consequence, you need to strive to optimize your retention policy per topic continually.
eMagiz 1.1 35
Eva Torken 6.1 36 == 4. Key takeaways ==
eMagiz 1.1 37
Danniar Firdausy 8.8 38 * Retention Hours: Defines how long messages are kept before they are eligible for cleanup.
39 * Retention Bytes: Specifies the maximum amount of storage space allocated for messages before older ones are removed.
40 * Cleanup Policy: Determines the method of message removal once the retention criteria are met. The default policy is to delete expired messages, though an alternative, compact, is not used in eMagiz.
eMagiz 1.1 41
Eva Torken 6.1 42 == 5. Suggested Additional Readings ==
eMagiz 1.1 43
Danniar Firdausy 7.2 44 If you are interested in this topic and want more information on it, please read the help text provided by eMagiz when executing these actions and browse through the following links:
Danniar Firdausy 8.7 45
Danniar Firdausy 7.2 46 * [[Crash Course (Menu)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.WebHome||target="blank"]]
47 ** [[Crash Course Event Streaming (Navigation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Event Streaming.WebHome||target="blank"]]
Danniar Firdausy 8.3 48 *** [[Event Streaming - Introduction (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Event Streaming.crashcourse-eventstreaming-event-streaming-introduction||target="blank"]]
Danniar Firdausy 7.2 49 *** [[Topic and Topic Properties (Explanation)>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course Event Streaming.crashcourse-eventstreaming-topic-and-topic-properties||target="blank"]]
Danniar Firdausy 8.2 50 * [[Retention Policy (Search Result)>>url:https://docs.emagiz.com/bin/view/Main/Search?sort=score&sortOrder=desc&highlight=true&facet=true&r=1&f_space_facet=0%2FMain.&f_type=DOCUMENT&f_locale=en&f_locale=&f_locale=en&text=%22retention+policy%22||target="blank"]]
Erik Bakker 2.1 51 )))((({{toc/}}))){{/container}}{{/container}}