gpt4 book ai didi

hadoop - Parquet 上的 Spark 与 Hive 上的 Spark(Parquet 格式)

转载 作者:可可西里 更新时间:2023-11-01 14:43:34 25 4
gpt4 key购买 nike

我们的用例是一个窄表(15 个字段),但对整个数据集(数十亿行)进行大量处理。我想知道哪种组合可以提供更好的性能:

环境:CDH5.8/spark 2.0

  1. Hive 表上的 Spark( Parquet 格式)
  2. Spark 行文件(parquet)

最佳答案

如果没有您的特定产品和用例的其他上下文 - 我会投票支持 Hive 表上的 SparkSql,原因有两个:

  1. sparksql 通常优于核心 spark,因为 databricks 在 sparksql 中编写了不同的优化,它具有更高的抽象并提供优化代码的能力(阅读 Project Tungsten)。在某些情况下,手动编写 spark 核心代码会更好,但这需要程序员对内部结构有深入的了解。此外,sparksql 有时会受到限制,不允许您控制低级机制,但您始终可以回退以使用核心 rdd。

  2. 配置单元而不是文件 - 我假设配置单元具有外部元存储。 Metastore 保存“表”分区的定义(在文件中它可能是某个目录)。这是获得良好性能的最重要部分之一。 IE。在处理文件时,spark 需要加载此信息(这可能很耗时 - 例如 s3 列表操作非常慢)。因此 Metastore 允许 spark 以简单快速的方式获取这些信息

关于hadoop - Parquet 上的 Spark 与 Hive 上的 Spark(Parquet 格式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47207986/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com