【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

相关推荐
老贾专利烩几秒前
多技术融合难点:智能生发专利的协同稳定性研究
大数据·人工智能
泰迪智能科技8 分钟前
2026年大数据工程师证书报考指南
大数据
普信男_PuXin9 分钟前
Hadoop 伪分布式安装详解:定义、步骤与适用场景
大数据
a努力。38 分钟前
字节跳动Java面试被问:一致性哈希的虚拟节点和数据迁移
java·开发语言·分布式·算法·缓存·面试·哈希算法
CHrisFC40 分钟前
江苏硕晟LIMS:坚守合规底线,构建生态监测信息管理合规体系
大数据·人工智能
武子康1 小时前
大数据-213 Python 手写 K-Means 聚类实战(鸢尾花 Iris 数据集):从距离函数到迭代收敛与坑点
大数据·后端·机器学习
零售ERP菜鸟1 小时前
安全与合规的确定性保障:构建“内置安全”的弹性防线
大数据·人工智能·职场和发展·创业创新·学习方法·业界资讯
科创致远1 小时前
国内ESOP电子作业系统头部企业格局与科创致远技术发展历程
大数据·数据库·人工智能·嵌入式硬件·精益工程
tebukaopu1481 小时前
es searchSourceBuilder.trackTotalHits(true);的作用
大数据·elasticsearch·搜索引擎
福客AI智能客服2 小时前
图像识别落地:AI智能客服系统重塑电瓶车尾箱头盔电商服务
大数据·人工智能·机器人