sorting - 排序(Order by)在Hive中是如何实现的?

标签 sorting hadoop sql-order-by mapreduce hive

我们知道hive在排序作业开始之前不做采样,它只是利用MapReduce的排序机制,在reduce端进行merge-sort,只使用一个reduce,因为reduce收集mapper输出的所有数据在这种情况下,假设一台运行 reduce 的机器只有 100GB 的磁盘,如果数据太大而无法放入磁盘怎么办?

最佳答案

Hive的并行排序机制还在开发中,见here .

设计良好的数据仓库或数据库应用程序将避免这种全局排序。如果需要,请尝试使用 Pig或 Terasort(http://hadoop.apache.org/common/docs/current/api/org/apache/hadoop/examples/terasort/package-summary.html)

关于sorting - 排序(Order by)在Hive中是如何实现的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9476568/

相关文章:

hadoop - 用户定义辅助 HBase 协处理器实现

mysql - Order By SQL request by time range period,然后是其他条件

sql - 如何按列和下一行排序并按另一列排序?

python - 如何使用列名列表对数据框进行排序

c++按字母顺序对名称进行排序

hadoop - 使用JobControl测量Hadoop作业时间

hadoop - HBase Hive 集成 - 错误

C#,按字母顺序对 LINQ 结果进行排序,然后根据搜索键对其进行排序

c++ - 什么样的优化会提高我的表现?

algorithm - 给定一台可以对 5 个对象进行分类的机器。我们能以多快的速度对其中的 25 个进行排序?