我正在开发一个数据仓库,作为我公司企业应用程序套件的一部分。所以我一直在学习很多关于 DW 概念的知识,但是规则引擎似乎很困难,而且我找不到很多关于各种实现方式的信息。规则的重点是验证数据质量,并在达到某些业务指标时发出警报(例如,当月销售额为 $xx.xx)
我们的应用程序需要为每个客户定制,所以我想让规则通用。实现规则引擎的方法有哪些?
- 现成的工具?(我将重新分配,所以这通常效果不佳)
- 框架/API
- 用于创建我们自己的设计模式
- 其他想法
谢谢。
我正在开发一个数据仓库,作为我公司企业应用程序套件的一部分。所以我一直在学习很多关于 DW 概念的知识,但是规则引擎似乎很困难,而且我找不到很多关于各种实现方式的信息。规则的重点是验证数据质量,并在达到某些业务指标时发出警报(例如,当月销售额为 $xx.xx)
我们的应用程序需要为每个客户定制,所以我想让规则通用。实现规则引擎的方法有哪些?
谢谢。
将其视为有几个单独的系统一起工作可能会有所帮助——而不是一个“大引擎”负责所有事情。
谈到“业务指标”,请查看KPI(关键绩效指标)。分析引擎(MS-SSAS、Pentaho-Mondrian等)允许对 KPI 进行简单定义和演示(仪表板)。如果您自己开发,您可能仍然对这个概念有所了解。
数据质量主要是“操作系统”的责任,这是收集数据的地方。如果垃圾到达 DW,那就太晚了。使用数据分析工具来了解源数据的外观——必须在源头强制执行数据质量。
在 DW 加载过程中,您可以使用逐步 ECCD(Extract、Clean、Conform、Deliver)的方法来实现某些“数据标准”。ETL 工具(MS-SSIS、Pentaho-Kettle、Oracle Data Itegrator等)旨在帮助解决此问题。
关于规则引擎,请查看inrule、ILOG、Fico、Corticon、Jboss Drools等。这些是“独立系统”,可用于在与操作系统协调时执行业务规则。执行业务规则通常会提高数据质量。您可以下载 Drools 并很快开始修改,其他供应商也允许免费下载。