我目前正在解决一个工作问题,我需要根据用户定义的限制获取数据并修剪生成的场景。我已经尝试了很多东西,但似乎无法让任何东西像我想要的那样高效运行。我可能必须在数据库之外运行,以便可以扩展运行,但我认为如果可能的话,我应该尝试在数据库内部执行。因此,例如,如果我有 3 个实体:
Transportation Type:
Car
Boat
Plane
Color:
Blue
Green
Red
Purple
White
Accessories:
Trailer
Wheels
Propeller
Parachute
用户可以输入限制:
Transportation_Type=Boat, Accessories= Wheels
因此,任何有船和轮子场景的组合都会受到限制。
Example Valid Scenario with restriction: Boat/Red/Trailer
因此,这变得复杂的地方在于,您可以想象,如果我为这 3 个实体构建所有可能的场景,即使有用户定义的限制,也不会太糟糕。但是,如果有 22 个实体(实体基本上是一个有值的级别)怎么办。您可以想象这可能会变得巨大并且难以应用限制。尤其是当它是一组构成限制的级别/值(比如船和轮子)时。
有人有什么想法吗?
通过构建动态的类似语句,我能够通过大约 14-16 个级别使其真正发挥作用,我可以检查派生的场景。但在那之后,处理时间会爆炸(如果级别中有更多的值,它可能会在较低级别)。