首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >业务规则数据建模

业务规则数据建模
EN

Stack Overflow用户
提问于 2016-02-25 04:01:31
回答 1查看 117关注 0票数 0

我这里有个设计问题。我在试着模拟一个规则表。

我的示例规则是这样的:给定一个数据行,我将遍历所有已配置的规则,如果任何列名与值规则匹配,则将命中值规则。

e.g

现在,在传入数据行中,如果列countryUS作为值,我将按规则1003。

这样设计我的规则表可以帮助我轻松地将任何列(数据行的一部分)添加到规则中。我的用户可以查看规则并自己管理它。

现在这里的问题是优先级列。每当需要添加具有优先级的新规则时,我需要更新之后所有行的优先级。例如,在上面的示例中,我需要在优先级3处添加一些内容:下面我需要更新另外两个规则。

当表变得很大时,就无法继续更新所有行。这使我觉得必须有更好的解决办法。

我需要优先级列,就像需要定义规则需要选择的顺序一样。

有人能告诉我们用例更好的规则模型吗?

PS我不能使用drools或任何规则引擎,因为我的执行环境.

谢谢

EN

回答 1

Stack Overflow用户

发布于 2016-03-02 00:42:38

我有几个建议可以减少有更多必要更新的问题。

优先级列中的值必须是连续的吗?如果没有,则设置具有大量空白值的初始规则集(例如100、200、300.)这不会影响排序,任何新规则都可以添加到空格中。

任何排他性规则子集都可以共享相同的优先级值,例如,只有一条“国家”规则将永远匹配,因此没有必要依次对它们进行评估(当然,如果90%的国家规则与“US”匹配,那么首先评估这一项仍然是有意义的)。

目前的设计还有一些其他限制,超出了更新问题的范围。例如,如果将来你想把英国的股权和美国的股权区别对待,你会如何制定这些规则?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35618044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档