草庐IT

priority_order

全部标签

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

我们知道hive在排序作业开始之前不做采样,它只是利用MapReduce的排序机制,在reduce端进行merge-sort,只使用一个reduce,因为reduce收集mapper输出的所有数据在这种情况下,假设一台运行reduce的机器只有100GB的磁盘,如果数据太大而无法放入磁盘怎么办? 最佳答案 Hive的并行排序机制还在开发中,见here.设计良好的数据仓库或数据库应用程序将避免这种全局排序。如果需要,请尝试使用Pig或Terasort(http://hadoop.apache.org/common/docs/curre

hadoop - 确定 Hive "order by"子句中的 reducer 数量

我有一个2.6MB大小的CSV文件。我创建了一个配置单元表并在其中加载了csv文件。现在,如果我将查询编写为“select*fromabcorderbya;”,mapreduce使用了1个reducer。它是如何识别reducer的数量为1的呢?它使用默认值“1”还是其他什么?一般来说,hive如何决定在“orderby”、“sortby”或“groupby”子句中使用多少个reducer? 最佳答案 它与数据大小有关,默认为每1GB1个,由此属性调节:hive.exec.reducers.bytes.per.reducer如果你想

hadoop - 本地主机 : ERROR: Cannot set priority of datanode process 2984

我设置并配置了一个多节点的Hadoop。启动时会出现我的Ubuntu是16.04,Hadoop是3.0.2Startingnamenodeson[master]Startingdatanodeslocalhost:ERROR:Cannotsetpriorityofdatanodeprocess2984Startingsecondarynamenodes[master]master:ERROR:Cannotsetpriorityofsecondarynamenodeprocess31752018-07-1702:19:39,470WARNutil.NativeCodeLoader:Una

mysql - Hive Order by 不工作

查询:没有函数的列:SELECTACCOUNTIDfromtableorderbyACCOUNTID;(以上查询在HIVE和MYSQL中都工作正常)具有功能的列:SELECTconcat('test_',ACCOUNTID)fromtableorderbyACCOUNTID;在mysql中,上述查询工作正常。在hive中,下面抛出异常失败:SemanticException[错误10004]:第1:59行无效的表别名或列引用“ACCOUNTID”:(可能的列名是:_c0)Mysql:Orderby可以很好地处理函数中涉及的列hive:Orderby不与函数中涉及的列一起工作临时解决方案

hadoop - 使用 Hive 'Order By' 查询时获取无序输出

我试过使用“Orderby”如下:selectfieldA,fieldB,fieldC,fieldDfromtestfilterwherefieldA='000009000002'orderbyfieldA,fieldB,fieldC,fieldD;但是,这会导致像这样的无序输出:00000900000272120236530000090000029999058159000009000002999905815900000900000299990581590000090000029999058159000009000002999905815900000900000299990582400

sql - HIVE SELECT 可以结合 GROUP BY 和 ORDER BY 吗?

我在Hive中做一些相对简单的查询,似乎无法在单个语句中组合GROUPBY和ORDERBY。我可以毫无问题地选择GROUPBY查询的临时表,然后使用ORDERBY在该表上进行选择,但我无法将它们组合起来在一起。例如,我有一个表a,可以执行这个查询:SELECTplace,count(*),sum(weight)fromagroupbyplace;我可以执行这个查询:createtemporarytableresult(placestring,countint,sumweightint);insertoverwritetableresultselectplace,count(*),sum

sql - Hive ORDER BY 查询结果出错

我有这个查询工作:SELECTmovieid,COUNT(movieid)FROMratingGROUPBYmovieid但是当我尝试添加订单时出现错误:SELECTmovieid,COUNT(movieid)FROMratingGROUPBYmovieidORDERBYcount(movieid)DESC;我知道SQL查询适用于sqldeveloper。因为我还需要子集,所以我创建了一个嵌套循环(使用desc限制不起作用),但这也不起作用:SELECT*FROM(SELECTmovieid,COUNT(movieid)FROMratingGROUPBYmovieidORDERBYco

date - hive cast string to date in 'dd/MMM/yyyy' format order by and group by issue

我将日期存储为[27/Feb/2016:00:24:31+0530]。我想要27/Feb/2016中的日期格式,并且还想按它排序。我试过了this解决方案,但它以2016-02-27形式返回,并且也正确排序。SELECTTO_DATE(FROM_UNIXTIME(UNIX_TIMESTAMP(SUBSTR(time,2,11),'dd/MMM/yyyy')))ASreal_date,urlFROMcleanned_logsORDERBYreal_dateASC;为了获得所需的格式,我尝试使用date_format()函数。它在1.2.1中不可用,所以我从1.0.1切换到它。SELECT

hadoop - yarn 中的 "Application priority"

我正在使用Hadoop2.9.0。是否可以在YARN中提交具有不同优先级的作业?根据一些JIRA票据,应用程序优先级似乎已经实现。我尝试使用YarnClient,并在提交作业之前为ApplicationSubmissionContext设置优先级。我还尝试使用CLI和updateApplicationPriority。但是,应用程序优先级似乎没有任何变化,它始终保持为0。我是否误解了YARN的ApplicationPriority概念?我看到了一些关于设置队列优先级的文档,但对于我的用例,我需要一个队列中的所有作业。将不胜感激任何对我的理解的澄清,或对我可能做错了什么的建议。谢谢。

hadoop - 带 ORDER BY 的 HIVE GROUP_CONCAT

我有一张table我期望这样的输出(将结果分组到一条记录中,group_concat应按值DESC对结果进行排序)。这是我试过的查询,SELECTid,CONCAT('{',CONCAT_WS(',',GROUP_CONCAT(CONCAT('"',key,'":"',value,'"'))),'}')ASvalueFROMtable_nameGROUPBYid我希望目标表中的值应该按源表值排序(降序)。为此,我尝试执行GROUP_CONCAT(...ORDERBYvalue)。看起来Hive不支持这个。有没有其他方法可以在配置单元中实现这一点? 最佳答案