ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

(13)不支持的操作

2019-07-20 09:43:59  阅读:232  来源: 互联网

标签:13 Datasets join 支持 outer 操作 数据


不支持的操作

有些DataFrame / Dataset的操作是Streaming DataFrames / Datasets不支持的。 其中一些如下。

,流Datasets不支持多个流聚合(即流DF上的聚合链)。

,流数据集不支持Limit 和取前N行。

,不支持流dataset/dataframe的Distinct 操作。

,只有在有聚合操作且是Complete 输出模式,流数据集才支持排序操作。

,有条件地支持流和静态数据集之间的外连接。

不支持与流数据集Full outer join

不支持与右侧的流数据集Left outer join

不支持与左侧的流数据集Right outer join

F),两个流数据集之间的任何类型的join都不支持。

此外,还有一些Dataset方法将不适用于流数据集,这些操作立即执行查询并返回结果,这在流数据集上没有意义。相反,这些功能可以通过显式启动流式查询来完成。

,Count()- 无法从流数据集返回单个计数。 可以使用ds.groupBy().count()返回一个包含运行计数的流数据集。

,foreach() - 使用ds.writeStream.foreach(...) 代替

,show() -使用console sink 代替

如果尝试任何这些操作,将看到一个AnalysisException,如“操作XYZ不支streaming DataFrames/Datasets”。虽然一些操作在未来的Spark版本中或许会得到支持,但还有一些其它的操作很难在流数据上高效的实现。例如,不支持对输入流进行排序,因为它需要跟踪流中接收到的所有数据。因此,从根本上难以有效执行。

标签:13,Datasets,join,支持,outer,操作,数据
来源: https://blog.csdn.net/qq_18522601/article/details/96493580

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有