Changes for page eMagiz State Generation

Last modified by Erik Bakker on 2024/08/13 12:05

From version 1.1
edited by eMagiz
on 2022/06/13 09:29
Change comment: There is no comment for this version
To version 2.1
edited by eMagiz
on 2022/06/13 09:31
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,20 +1,12 @@
1 1  {{html wiki="true"}}
2 2  <div class="ez-academy">
3 3   <div class="ez-academy_body">
4 -
5 -
6 - <li class="doc-nav__item"><a href="../../docs/fundamental/index_academy_fundamental_all" class="doc-nav__link">Home</a></li>
7 -
8 -
9 -
10 -
11 -
12 12  <div class="doc">
13 13  
14 14  
15 15  
16 16  = eMagiz Stateful =
17 -
9 +
18 18  In this fundamental, we'll take a look at the capability of eMagiz around storing a state of a data packet of message send across the platform.
19 19  
20 20  Should you have any questions, please get in touch with academy@emagiz.com.
... ... @@ -26,12 +26,12 @@
26 26  
27 27  * Take a closer look at the Fundamentals for Messaging, API Gateway and Event Streaming
28 28  
29 -
30 30  == 2. Key concepts ==
22 +
31 31  All concepts are discussed in the section below..
32 32  
33 33  
34 -
26 +
35 35  == 3. Introducing Stateful ==
36 36  
37 37  Within eMagiz there is a capability to store pieces of data of a specific object that is transit between systems. The basis idea of messages that are processed by eMagiz is that all of these are in transit. However, in certain cases it is very helpful to preserve a state of an object. That state can help to influence the next data packets that are passing through or trigger a certain action for another system.
... ... @@ -40,7 +40,7 @@
40 40  
41 41  Another example might be a data stream that registers a click on a specific webpage. That data stream is connected to eMagiz, whereby the state of that specific webpage is updated with the number of clicks. Once the number of clicks in the last 30 minutes reaches for instance more than 50, a specific action might be triggered. If that page contains a product, the action might be to display the number of web users active on that product in order to influence the sales of that product. One needs a data stream, a way to count the number of click, and a way to store the state of that webpage.
42 42  
43 -The example are purely illustrative to understand the concept.
35 +The example are purely illustrative to understand the concept.
44 44  
45 45  ==== 3.1 State Store ====
46 46  
... ... @@ -48,7 +48,8 @@
48 48  
49 49  ==== 3.2 State Operations ====
50 50  
51 -Once the state store is defined, one needs different operations in order to update the state effectively.
43 +Once the state store is defined, one needs different operations in order to update the state effectively.
44 +
52 52  * Retrieve - get the values of an object and the attributes
53 53  * Aggregate - Increment a attribute in a state store to +1
54 54  * Enrich - add new attribute of an object in the state store based on joining several streams
... ... @@ -69,12 +69,10 @@
69 69  
70 70  At first hand it looks as if these concepts would only apply to Event Streaming. But capturing & storing a state of an object would also be handy in other patterns such as Messaging. For instance, when the order of the messages being send matters, or when there is dependency between messages that is needed to determine when a message needs to be send in time.
71 71  
72 -
73 73  ==== 3.6 eMagiz specifics ====
74 74  
75 -The state store is implemented inside the eMagiz runtime using the H2 database for now. For time related operations another technology is used (Esper), and the functionality is only available on Docker based runtimes (to be release end Q2 2022). You wil find the specific Stateful components inside the Flow Designer as we use in eMagiz to model the flow. Aligned with the general concept of low-code developnment in eMagiz. For State store models, the current data modeling capabilities will be used.
67 +The state store is implemented inside the eMagiz runtime using the H2 database for now. For time related operations another technology is used (Esper), and the functionality is only available on Docker based runtimes (to be release end Q2 2022). You wil find the specific Stateful components inside the Flow Designer as we use in eMagiz to model the flow. Aligned with the general concept of low-code developnment in eMagiz. For State store models, the current data modeling capabilities will be used.
76 76  
77 -
78 78  ===== Practice =====
79 79  
80 80  == 4. Key takeaways ==
... ... @@ -96,7 +96,7 @@
96 96  N/A
97 97  
98 98  </div>
99 -</main>
100 100  </div>
101 101  </div>
92 +
102 102  {{/html}}