在事务事实表中跟踪多个状态

Posted

技术标签:

【中文标题】在事务事实表中跟踪多个状态【英文标题】:Track multiple status in Transaction Fact Table 【发布时间】:2014-09-15 06:12:02 【问题描述】:

我必须跟踪我的业务流程的状态以进行分析。我看到一个帖子提到我们可以根据时间/交易类型/服务中心保持交易事实表中的状态,我们可以使用累积事实表来研究流程滞后,我想知道是否很少有交易有多个状态我应该在一天内将所有状态存储在事务事实表中吗?这里我假设我的 ETL 在工作日结束时完成。

其次,我应该将所有关键维度键保留在事务事实表中。本例中的键是 Transaction Type、Department id、Service_type、Service_id、Submission Channel 还是应该将它们分成多个事实表?

第三,如果我需要报告哪个部门满足其 SLA,那么最好的方法是什么,计算并跟踪事务事实表中的在 SLA 内和不在 SLA 内,或者我应该在运行时计算这个值?

提前感谢您的帮助和帮助。

【问题讨论】:

【参考方案1】:

对于状态跟踪,您应该:

    仅显示事件的事务表(但不提供事件跟踪)

    一个累积的快照表,其中每个进程的状态在发生时被跟踪/更新。

至于密钥,您应该尽可能多地保留细节。如果密钥将来可能包含有价值的信息,则无需删除它们。

【讨论】:

感谢您的回复。关于 SLA 报告问题的最后一部分呢?有什么建议么?这应该是累积快照表的一部分吗? 为此,您需要一个累积快照事实表,我想象:捕获开始事件和响应事件并为两者计时。添加事件时,它没有响应时间,当事件在事实表中更新时,“响应时间”度量变为不为空。如果您有大量数据,则可能需要避免更新事实表(我个人不喜欢更新事实表),并且可能将事实表一分为二,一个用于初始事件,一个用于初始事件回复。

以上是关于在事务事实表中跟踪多个状态的主要内容,如果未能解决你的问题,请参考以下文章

仓库设计:跟踪没有事件

NopCommerce添加事务机制

——事实表技术之无事实的事实表

ABAP的权限检查跟踪(Authorization trace)工具

ABAP的权限检查跟踪(Authorization trace)工具

使用 Flutter BLoC 模式跟踪多个状态