相关疑难解决方法(0)

Hive cluster by vs order by vs sort by

据我所理解;

  • 只在reducer中排序

  • 按订单排序全球,但将所有东西都推到一个减速器中

  • 通过密钥散列智能地将东西分配到reducers中并进行排序

所以我的问题是集群保证全球秩序?分配通过将相同的密钥放入相同的减速器但是相邻的密钥呢?

我能在这里找到的唯一文件就是这里,从示例中可以看出它是全局命令的.但从定义来看,我觉得并不总是如此.

hadoop hive hql

51
推荐指数
4
解决办法
7万
查看次数

在 hive 中的 collect_list() 中排序

假设我有一个看起来像这样的蜂巢表:

ID    event    order_num
------------------------
A      red         2
A      blue        1
A      yellow      3
B      yellow      2
B      green       1
...
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用 collect_list 为每个 ID 生成事件列表。所以类似于以下内容:

SELECT ID, 
collect_list(event) as events_list,
FROM table
GROUP BY ID;
Run Code Online (Sandbox Code Playgroud)

但是,在我分组所依据的每个 ID 中,我需要按 order_num 进行排序。这样我的结果表将如下所示:

ID    events_list
------------------------
A      ["blue","red","yellow"]
B      ["green","red"]
Run Code Online (Sandbox Code Playgroud)

我无法在 collect_list() 查询之前按 ID 和 order_num 进行全局排序,因为该表很大。有没有办法在 collect_list 中按 order_num 排序?

谢谢!

hive hiveql

5
推荐指数
1
解决办法
8283
查看次数

标签 统计

hive ×2

hadoop ×1

hiveql ×1

hql ×1