8.2中Join操作符的向后兼容性被破坏
ChristianK
成员职位:3.贡献我
我们最近发现“Join”操作符的功能发生了变化。在8.2中,没有键的连接会突然抛出一个用户错误。在过去,我们使用这个功能来生成示例集的笛卡尔积(例如,将元数据连接到所有示例)。乐鱼官网手机版下载由于没有向操作符添加兼容性级别,所有使用此操作符的旧进程现在都会崩溃,这在部署场景中是一场灾难。
如果移除或更改任何操作符的某些基本行为,则高度赞赏兼容性级别。
有趣的事实:“Join”运算符仍然被标记为“cartesian”,并且在运算符列表中出现在“cartesian Product”之前。
标记:
0
评论
嗨@c-rex,
您是对的,Join操作符不应该再被标记为Cartesian,因为空键属性不受支持。我们将在即将发布的9.0版本中删除这个标记。
我们无法重现您的向后兼容性问题。你能附上一个进程,其中Join工作没有关键属性8.2之前,而不是之后?
只是出于好奇:当专用的笛卡尔积运算符更快时,为什么您更喜欢使用Join运算符来处理笛卡尔积呢?笛卡尔积算符有问题吗?
嘿@gmeier,
谢谢你的反馈。自从切换到7。X和8.2总是让我的rapidminer帐户被阻止(与所描述的问题相同)在这里),我今天才进一步调查。
似乎我错过了新Join操作符的更改操作符类。我使用旧Join操作符的示例过程在8.2中仍然可以工作,操作符本身被标记为已弃用。这使我的主要担忧无效,所以很抱歉大惊小怪。
不过,我真的希望能够像以前一样使用新的Join。在使用了大量数据库之后,我尝试做的操作总是更多地是一个完整的外部连接,而不是数学笛卡尔(或交叉连接)。它还与rapidminer的设计方式产生了共鸣,即向数据集“添加”信息:使用“带id的连接”添加专用信息,使用“不带id的连接”添加一般信息。使用不同的操作符会打破我的思维模式。出于同样的原因,我从来没有尝试过笛卡尔算子,所以我不能评论不同的速度。