apache-spark - 将大数据从 Hadoop 导入 Spark 的有效方法
问题描述
由于我刚开始涉足大数据领域,我正在寻找有关如何将一些数据导入 Spark 以进行分析的最有效方法的建议。
SQL 查询相当大,有多个子查询,每个子查询都有自己的“何时”、“分组依据”等。最终数据将有 100 万到 2000 万行。
如果我运行 spark sql 查询并使用 pyspark 将其保存到数据帧中,或者如果我将每个子查询提取到不同的 spark 数据帧中并使用 spark 进行分组/过滤等,这是否相同(性能方面)?
例如,这两种方法在处理我的数据时使用的资源量/时间是否相等?
方法一:
df_final = spark.sql("""
With subquery 1 as(...),
subquery 2 as(...),
subquery 3 as(...),
...
select * from subquery n
"""
方法二:
df1 = spark.sql(subquery 1)
df2 = spark.sql(subquery 2)
...
df_final = *spark manipulation of dataframes here"
我会很感激任何建议。谢谢
解决方案
Spark 将创建一个在两种情况下都应该等效的 DAG。两种情况下的性能应该相同。
推荐阅读
- git - GitHub Pages 使用 Sapper 构建失败
- apache-kafka - Kafka 与 AWS GLUE 的集成
- php - 将 Select 选项的动态值传递给 php 中的数据库
- javascript - 根据文本框的输入显示/隐藏 div
- c# - 暂停 Parallel.Foreach 循环
- markdown - Asciidoc 和 Markdown 中类似于 wiki 的紧凑链接语法,例如 [[page-name]]?
- php - get_term() 返回先前帖子的值而不是当前帖子
- html - 我正在尝试将网站中的数据抓取到 R
- c# - C# Lambda 表达式 (LINQ) 生成的成员是基类而不是子类的一部分
- javascript - 如何在 .reduce 函数中返回数组而不是数组对象?