Changes for page Multi-Model Best Practice

Last modified by Erik Bakker on 2024/08/08 11:58

From version 11.1
edited by Erik Bakker
on 2023/04/13 14:15
Change comment: There is no comment for this version
To version 13.1
edited by Carlijn Kokkeler
on 2023/07/07 13:52
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -Multi-model Best Practice
1 +Multi-Model Best Practice
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.ebakker
1 +XWiki.CarlijnKokkeler
Content
... ... @@ -17,7 +17,7 @@
17 17  * Multi-model - several integration models of a single client
18 18  
19 19  
20 -== 3. Main multi-model integration patterns ==
20 +== 3. Main Multi-Model Integration Patterns ==
21 21  
22 22  At the moment, there are two most frequently used ways to provide communication between systems in a multi-model environment. These concern event streaming and webservices. The processes of sharing data across systems in a multi-model environment using these concepts will be discussed in this microlearning, including best practices.
23 23  In the figure below, both processes are illustrated. The process at the top illustrates event streaming, the process at the bottom webservices. Model A and model B are two different models, where a system in model B should have access to the same data as the system in model A. I.e., the systems in both models should be the same.
... ... @@ -24,7 +24,7 @@
24 24  
25 25  [[image:Main.Images.Fundamental.WebHome@fundamental-multi-model-best-practice--event-streaming-and-webservices.png]]
26 26  
27 -=== 3.1 Event streaming ===
27 +=== 3.1 Event Streaming ===
28 28  
29 29  To understand the following section, it is necessary to have some background information about event streaming, which can be found [[here>>doc:Main.eMagiz Academy.Fundamentals.fundamental-event-streaming-introduction||target="blank"]].
30 30  The first option is to decide the alignment of the data models between both models. Whenever data from the first model is transferred to the second model, and the topic is considered input for other systems and integrations in that other model, the data needs to be transformed to the common data model of that second model. THis way, the topic can be exposed to any system and any pattern in the second model. The picture below denotes this situation. These are the specific considerations when implementing this approach:
... ... @@ -42,11 +42,11 @@
42 42  Communication between systems in different models can also be achieved using web services. This means that model A has a webservice in place, and model B has a webservice in place, between which data can be exchanged.
43 43  An advantage of this pattern is that it is easy to keep an overview, there are not many unclarities in setting it up. A disadvantage of this pattern is that there is much dependency across models. If the webservice in model A crashes, the system in model B cannot receive data anymore.
44 44  
45 -=== 3.3 Naming conventions ===
45 +=== 3.3 Naming Conventions ===
46 46  
47 47  For clarity purposes, it is advised to give the systems that are the same across models the same name, as well as the name of the other model in which the system is present. So, as illustrated in the figure, the system names in model A and B are partly the same (‘SYS’), and indicate which model also holds the system (model B in model A, model A in model B). This way, it remains clear in which models the same systems are present, and systems can be found more easily.
48 48  
49 -== 4. Key takeaways ==
49 +== 4. Key Takeaways ==
50 50  
51 51  * Event streaming and webervices are mainly used to communicate between systems across models.
52 52  * To allow communication between systems in different models using event streaming, it is needed to transform topics.