当前位置: 首页 > news >正文

【spark】dataframe慎用limit

官方:limit通常和order by一起使用,保证结果是确定的

limit 会有两个步骤:

  1. LocalLimit ,发生在每个partition
  2. GlobalLimit,发生shuffle,聚合到一个parttion

当提取的n大时,第二步是比较耗时的

== Physical Plan ==
Execute InsertIntoHadoopFsRelationCommand (5)
+- * GlobalLimit (4)+- Exchange (3)+- * LocalLimit (2)+- Scan csv  (1)

如果对取样顺序没有要求,可用tablesample替代,使用详解。

== Physical Plan ==
Execute InsertIntoHadoopFsRelationCommand (3)
+- * Sample (2)+- Scan csv  (1)

参考

官方
Stop using the LIMIT clause wrong with Spark
DataFrame orderBy followed by limit in Spark

http://www.lryc.cn/news/150300.html

相关文章:

  • 基于OpenCV+LPR模型端对端智能车牌识别——深度学习和目标检测算法应用(含Python+Andriod全部工程源码)+CCPD数据集
  • C++学习6
  • bazel使用中存在的问题
  • svn软连接和文件忽略
  • 自动驾驶攻城战,华为小鹏先亮剑
  • 企业供应链数字化怎么做?企业数字化供应链流程落地方式
  • java八股文面试[多线程]——synchronized 和lock的区别
  • 实现一个简单的控制台版用户登陆程序, 程序启动提示用户输入用户名密码. 如果用户名密码出错, 使用自定义异常的方式来处理
  • Java 大厂八股文面试专题-设计模式 工厂方法模式、策略模式、责任链模式
  • Anaconda Prompt输入jupyter lab无反应
  • JavaScript Web APIs - 05 Window对象 、本地存储
  • Ansible学习笔记6
  • Linux挖矿程序清除
  • 使用Git和Github上传代码文件
  • OpenAI发布ChatGPT企业级版本
  • vue3中axios的使用方法
  • 【docker】容器的运行、停止、查看等基本操作
  • Python|OpenCV-鼠标自动绘制图像(4)
  • IDEA 设置提示信息
  • 清理docker镜像方法
  • windows 搭建 swoole开发环境(官网已支持)
  • matlab的基本使用
  • hznuoj---python查找最大字母
  • Leetcode---360周赛
  • CocosCreator3.8研究笔记(三)CocosCreator 项目结构说明及编辑器的简单使用
  • html5学习笔记18-web存储、web sql、web worker
  • 大数据专业毕业能从事什么工作
  • avalonia、WPF使用ScottPlot动态显示ECG心电图
  • 国内数学公式识别软件对比
  • SCOPE_IDENTITY什么意思