0

不懂就问: Spark 处理业务逻辑写 SQL 还是 DataFrame?

 2 years ago
source link: https://www.v2ex.com/t/835277
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

V2EX  ›  程序员

不懂就问: Spark 处理业务逻辑写 SQL 还是 DataFrame?

  heyyyy · 1 天前 · 696 次点击

性能上的差异是微乎其微的,Spark 底层都是转换成 RDD 执行。对于习惯写 SQL 的人来说,似乎关注 SQL 层面的优化即可。大佬们生产上都怎么用?

5 条回复    2022-02-21 17:51:43 +08:00

picone

picone      1 天前

我觉得重点还是需要关注最终执行计划,怎么实现都不重要。看看 DAG 有没有可优化的地方,比如减少 shuffle 数据,把重复计算的地方 cahce 等等。

liprais

liprais      1 天前 via iPhone

写啥都一样

sl19981007

sl19981007      16 小时 56 分钟前

sql 能实现的用 DataFrame 的各种函数也都能实现,看个人习惯吧,用哪个都能用到 Spark SQL 的各种优化机制,Catalyst 、Tungsten 等,重要的还是减少 shuffle 吧

vincent7245

vincent7245      16 小时 31 分钟前

看具体业务啦,对于临时性的简单业务,一般公司大数据中台都可以直接把 sql 提交到 spark 运行,这样更灵活一些。对于复杂的业务,一条 sql 搞不定的,或者比较稳定的业务,就手撸 DataFrame

Aksura

Aksura      9 小时 16 分钟前

混合着用,有的逻辑 SQL 写清晰,有的逻辑调用方法清晰。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK