ETL, Esper or Drools?

Question environment refers to JavaEE, Spring

I am developing a system that can start and stop arbitrary TCP listeners (or others) for incoming messages. It may be necessary to authenticate these messages. These messages need to be analyzed and stored in some other objects. These objects model which fields they store.

So, for example, if I have property1, which can have two text fields FillLevel1 and FillLevel2, I could receive TCP messages that have fill levels specified in the text, like F1 = 100; F2 = 90

Later, I can add another FillLevel3 filed when I start receiving messages F1 = xx; F2 = xx; F3 = xx. But this is a conscious decision by the system designer.

My question is, what do you think is best used to parse and store a message. ETL (using Pantaho, which is used on a different system), where you store the raw message and use the task performer to consume them one by one and save the converted messages according to your rules.

You can use Espr or Drools to do the same, store the rules and execute them with a timer, but I'm not sure how the rules could be dynamically created (they should be made by the end user in the running system and preferably in the most user-friendly way , i.e. without scripts or code, only a GUI)

The end user should be able to change the analysis rules. It is also possible that the end user may also want to change the archived data (for example, in the example above, if a new FillLevel value is added, I would like to put FillLevel = -99 in the previous values โ€‹โ€‹to make the data consistent).

Please ask for an explanation, I have a feeling that I need to reconsider this issue a little.

thank

+3
source share
2 answers

@geoaxis is too late, but I will try. When requirements changes say that F4 is added to the system, that everyone expects changes 1) rule 2) entity 3) database table 4) .. anythig else?

, .

+1

Well Esper - CEP, Drools Fusion, jBpm. .

+1

Source: https://habr.com/ru/post/1745592/


All Articles