如何将 Spark 数据帧存储为 Parquet 格式的动态分区 Hive table?
How to store Spark data frame as a dynamic partitioned Hive table in Parquet format?
当前原始数据在Hive上。我想连接几个分区的 TB Hive tables,然后将结果输出为 Parquet 格式的分区 Hive table。
我正在考虑将 Hive table 的所有分区加载为 Spark 数据帧。然后进行加入、分组等等。这是正确的做法吗?
最后我需要保存数据,我们能否将 Spark 数据帧保存为 Parquet 格式的动态分区 Hive table?如何处理元数据?
如果多个数据集中的一个比另一个足够小,您可能需要考虑使用 Broadcast 以提高数据传输效率。
根据数据的性质,您可以尝试 group by,然后 join。这样每台机器只需要处理一组特定的数据,减少任务期间传输的数据量运行.
Hive支持直接将数据存储为Parquet格式。 https://cwiki.apache.org/confluence/display/Hive/Parquet。你试过了吗?
当前原始数据在Hive上。我想连接几个分区的 TB Hive tables,然后将结果输出为 Parquet 格式的分区 Hive table。
我正在考虑将 Hive table 的所有分区加载为 Spark 数据帧。然后进行加入、分组等等。这是正确的做法吗?
最后我需要保存数据,我们能否将 Spark 数据帧保存为 Parquet 格式的动态分区 Hive table?如何处理元数据?
如果多个数据集中的一个比另一个足够小,您可能需要考虑使用 Broadcast 以提高数据传输效率。
根据数据的性质,您可以尝试 group by,然后 join。这样每台机器只需要处理一组特定的数据,减少任务期间传输的数据量运行.
Hive支持直接将数据存储为Parquet格式。 https://cwiki.apache.org/confluence/display/Hive/Parquet。你试过了吗?