apache-spark - Hive 分区到 Spark 分区
问题描述
出于效率原因,我们需要处理具有分区数据的大数据集。数据源位于 Hive 中,但具有不同的分区标准。换句话说,我们需要将数据从 Hive 检索到 Spark,并在 Spark 中重新分区。
但是 Spark 中存在一个问题,当数据被持久化(parquet 或 ORC)时,会导致重新排序/重新分配分区。因此,我们在 Spark 中的新分区丢失了。
作为替代方案,我们正在考虑在新的 Hive 表中构建新的分区。问题是:是否可以从 Hive 分区映射 Spark 分区(用于读取)?
解决方案
分区发现 --> 可能是您正在寻找的:
" 将 path/to/table 传递给 SparkSession.read.parquet 或 SparkSession.read.load,Spark SQL 将自动从路径中提取分区信息。"
推荐阅读
- julia - 在 Julia 1.0+ 中:如何使用 redirect_stdout 获取字符串
- clojure - 使用规范/合并与规范/多规范
- swift - UICollectionView 和 FlowLayout 的单元格间距不同
- arrays - 为什么在此代码中出现数组超出范围错误?
- java - 如何使用 Spring Boot 应用程序和 Spock 测试在运行时更改服务器端口
- php - Codeigniter MY_Controller 未将变量发送到视图
- java - 如何使用 Spring Boot 配置 Selenium WebDriver 以进行 UI 测试?
- django - Python 抛出的带有 TestCase 继承的警告 - “需要更多值来解包”
- c# - 在视野内生成,但始终低于特定高度
- swift - 如何向 Firebase 数组添加另一个键/值