A Perspective on the various aspects of an comprehensive analytical solution¶
Purpose¶
Since this concept comes up in many different forms I felt it's important to document a perspective as a reference point. My focus here is purely conceptual to help illustrate a perspective.
Think of it this way... IF you had to explain this to your Mother... how would you do it?
Walkthrough ( see the picture below )¶
- At it’s core, the
Analytic Service
will operate on data coming from internal and external source systems AND - Events being generated in real time from external systems
- an Event is a message sent via a messaging or event management system.
- The data coming from source systems is obtained via Ingestion processing that provides three services:
- Calling source systems and getting data from pre configured “endpoints” [Pull]
- Accepting data sent into Ingestion processing by the Source System [ Push ]
- Performing processing on the data to make it useable. e.g. convert data, redact, etc….
- The “Memory Bank” is the data store where all data utilized by the
Analytic Service
will reside.- This is not necessarily on physical system. I could be a federation of “Memory Banks”.
- The Users who both consume information and take action relative to the
Analytic Service
. [ i.e. the Human Element ] - A key think people do is to see a picture ( aka visualization ) of data and the insights gained from the data…
- To do this the
Analytic Service
needs to provide visualization services to make aspects of the data in the “Memory Bank” understandable by people with different roles, skills, etc… - Simply presenting information is not enough. There is a need to execute analytical logic against data to “mine” the learnings or Insights from the data.
- The goal here is to help people understand the data.
- These Insights are themselves data/information that usually also needs to be stored in the “Memory Bank” for other uses.
- Having Insights alone doesn’t necessarily help people consuming the Insights. What is needed is to have Actions to take relative to the Insights be either automatically processed AND/OR
- sent to the right person so that they can take care of it. In other words, give them to tools, information, and guidance to perform the actions required.
- The reality is that a data ( think database) centric view is not enough. There is also a need to be able to “detect” ( aka listen for ) business and system events that are published from sources both internal and external to the organization. These Events are structured Messages that my themselves be a summary event from other processing systems.
- This Listening service can do several things with incoming events: a) It can send them to the Memory Bank to be stored and the processed by the Analytical Jobs, b) It can trigger a process or action based on the event, c) It could directly trigger an Analytical process to skip the latency of storing it in the memory bank.
- In terms of “Actionable Insights”, the reality is the actual Action to take could be more complicated than simply a “do X” action. Often, an Insight may require multi step processing where more analysis is required, more systems need to be checked and correlated, policies and rules need to be checked, and people may need to be included as gating or control steps.
- Thus, this is where the “Brain” leverages an orchestration element that performs a series of steps as part of an “Action”. AND….
- checks with the “Conscience” to ensure that the policies, rules, business controls are followed…
- Of course these sort of processes do not only have to be triggered by the “brain” alone. They can also be trigged by people OR
- by the “Clock” … ie based on a schedule.
Last update: November 3, 2024