首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >方解石的ConverterRule和RelOptRule有什么区别?

方解石的ConverterRule和RelOptRule有什么区别?
EN

Stack Overflow用户
提问于 2019-05-21 16:46:15
回答 1查看 343关注 0票数 0

我正在学习方解石,但被ConverterRule和RelOptRule弄糊涂了。

我已经知道RelOptRule是将一个表达式转换为另一个表达式的规则,RelOptPlanner使用RelOptRule。

但我在ConverterRule的java文档中看到了这一点

代码语言:javascript
复制
/**
 * Abstract base class for a rule which converts from one calling convention to
 * another without changing semantics.
 */

ConverterRule和RelOptRule有什么不同?我该如何使用它们呢?

EN

回答 1

Stack Overflow用户

发布于 2019-05-22 03:17:39

ConverterRuleRelOptRule类的子类。这两个规则都是规划者用来转换关系代数表达式的规则。ConverterRule执行您引用的Javadoc状态,它在调用约定之间进行转换。例如,这用于允许通过分配特定的调用约定来实际执行逻辑表达式,该约定指示哪个系统将实际执行查询。

除了转换约定之外,规则还可以做许多其他的事情。例如,规则可以决定交换FilterProject节点的顺序。实际上,规则所做的全部工作就是匹配关系代数表达式的子树,并将其替换为不同的子树。

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

https://stackoverflow.com/questions/56234480

复制
相关文章

相似问题

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