Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hiveql 何时在配置单元QL中使用sort By子句_Hiveql - Fatal编程技术网

Hiveql 何时在配置单元QL中使用sort By子句

Hiveql 何时在配置单元QL中使用sort By子句,hiveql,Hiveql,我检查了hive中sort by和order by子句之间的差异。 当需要总排序时使用Order by,当有多个减速机时使用sort by,减速机的输入需要按排序顺序。因此,如果只有一个减速器,则排序方式可能导致总订单;如果有多个减速器,则可能导致偏序- 参考- 我的问题是什么时候我们需要在hiveQL中使用sort by子句?当对数据进行排序时,联接会更快,因为优化器知道数据是按特定顺序排序的&在该顺序之后,它需要停止查找所需的谓词选择(where子句条件) 案例1-订购人 现在,如果给定字段

我检查了hive中sort by和order by子句之间的差异。 当需要总排序时使用Order by,当有多个减速机时使用sort by,减速机的输入需要按排序顺序。因此,如果只有一个减速器,则排序方式可能导致总订单;如果有多个减速器,则可能导致偏序-

参考-


我的问题是什么时候我们需要在hiveQL中使用sort by子句?

当对数据进行排序时,联接会更快,因为优化器知道数据是按特定顺序排序的&在该顺序之后,它需要停止查找所需的谓词选择(where子句条件)

案例1-订购人

现在,如果给定字段中的数据具有特定顺序,或者select查询需要特定顺序的数据 例如 按工资排列的员工顺序(即按工资和级别排列的顺序) 或 根据加入日期订购员工(即按加入日期订购)

然后,您需要使用ORDERBY子句保存数据/结果(以获取总订单)&我们需要使用ORDERBY(薪资),以便无论何时查询目标数据,您都可以在默认情况下获取所需的订单数据

案例2-排序方式

若给定字段中的数据不是按特定顺序需要的,比如唯一生成的字母数字字段,比如Customer\u id

在这种情况下,逻辑上最终数据不需要根据客户id按特定顺序显示,但因为它是唯一的密钥&主要用于加入 因此,当我们在每个分区中存储客户事务细节的数据时,它需要以排序/有序的方式呈现,以加快连接。
因此,在这种情况下,我们在存储最终结果时使用sort by(customer_id)。

当对数据进行排序时,连接速度更快,因为优化器知道数据是按特定顺序排序的&在该顺序之后,它需要停止寻找所需的谓词选择(where子句条件)

案例1-订购人

现在,如果给定字段中的数据具有特定顺序,或者select查询需要特定顺序的数据 例如 按工资排列的员工顺序(即按工资和级别排列的顺序) 或 根据加入日期订购员工(即按加入日期订购)

然后,您需要使用ORDERBY子句保存数据/结果(以获取总订单)&我们需要使用ORDERBY(薪资),以便无论何时查询目标数据,您都可以在默认情况下获取所需的订单数据

案例2-排序方式

若给定字段中的数据不是按特定顺序需要的,比如唯一生成的字母数字字段,比如Customer\u id

在这种情况下,逻辑上最终数据不需要根据客户id按特定顺序显示,但因为它是唯一的密钥&主要用于加入 因此,当我们在每个分区中存储客户事务细节的数据时,它需要以排序/有序的方式呈现,以加快连接。 因此,在本例中,我们在存储最终结果时使用sort by(customer_id)