草庐IT

test_hive

全部标签

hadoop - 执行错误,从 org.apache.hadoop.hive.ql.exec.mr.MapRedTask 返回代码 1 (state=08S01,code=1)

我已经启动了metastore和hiveserver2#./hive--servicemetastore#./hive--servicehiveserver2当我执行以下查询时#./beeline-ujdbc:hive2://192.168.0.10:10000-e'selectcount(*)fromtest_tb'--hiveconfhive.root.logger=DEBUG,console--verbose=true抛出以下错误Error:Errorwhileprocessingstatement:FAILED:ExecutionError,returncode1fromorg

hadoop - 在 spark SQL 中加载数据时获取 Hive 表中的空值

将数据从文件加载到配置单元表时,将插入空值。sqlCon.sql("createtablehive_6(idInt,nameString)partitionedby(dateString)rowformatdelimitedfieldsterminatedby','");sqlCon.sql("loaddatalocalinpath'/home/cloudera/file.txt'intotablehive_6partition(date='19July')");sqlCon.sql("select*fromhive_6").show()+----+----+------+|id|na

sql - 如何在 HIVE 中使用 "in"和 "having"子句?

我的数据是这样的:col1col2col3AB3AB1AB2CB1我想获取所有包含col3某些行的col1和col2的唯一组。比如,所有包含“2”的col1和col2组。我想做这样的事情:selectcol1,col2fromsometablegroupbycol1,col2havingcol3=1andcol3=2但我希望它只返回在col3中同时具有1和2实例的组。所以,查询后的结果应该是这样的:col1col2AB我如何在HIVE中表达它?谢谢。 最佳答案 我不知道为什么其他人删除了正确然后几乎正确的答案,但我会备份他们的答案。

regex - Hive:在字符的第一次出现和最后一次出现之间提取字符串

我有一个Hive表列,其中的字符串由“-”分隔,我需要提取第一次和最后一次出现的“-”之间的字符串+-----------------+|col1|+-----------------+|abc-123-na-00-sf||123-abc-01-sd||123-abcd-sd|+-----------------+Requiredoutput:+-----------+|col1|+-----------+|123-na-00||abc-01||abcd|+-----------+请建议一些正则表达式来提取所需的输出。谢谢 最佳答案

sorting - sort_array 按不同列排序,Hive

我有两列,一列是产品,一列是购买日期。我可以通过应用sort_array(dates)函数对日期进行排序,但我希望能够在购买日期之前对sort_array(products)进行排序。有没有办法在Hive中做到这一点?表名是ClientIDProductDate100Shampoo2016-01-02101Book2016-02-04100Conditioner2015-12-31101Bookmark2016-07-10100Cream2016-02-12101Book22016-01-03然后,为每个客户获取一行:selectclientID,COLLECT_LIST(Produc

sql - 多列和多行的 Hive/SQL 计数出现次数

我正在寻找一种计算出现次数的智能方法。这是一个例子:UserIDCityIDCountryIDTagID1000001305100001130610000022071000002408100001140610000214051000021206我想做什么:我想按列计算每个用户值的出现次数。最后,我想要一个表格来显示有多少用户具有不同的特征。结果应该看起来像这样-或多或少Different_CityIDDifferent_CountryIDsDifferent_TagIDs132解释:Different_CityIDs:仅UserID100000具有不同的CityIDDifferent_

hadoop - HIVE 数据透视和求和

我有一个表,我试图找出如何根据第二列中的值进行数据透视和求和。示例输入:|own|pet|qty||---|---|---||bob|dog|2||bob|dog|3||bob|dog|1||bob|cat|1||jon|dog|1||jon|cat|1||jon|cat|1||jon|cow|4||sam|dog|3||sam|cow|1||sam|cow|2|示例输出:|own|dog|cat|cow||---|---|---|---||bob|6|1|||jon|1|2|4||sam|1||3| 最佳答案 使用case和sum

sql - 获取 Hive 中所有列的 NULL 百分比

我想获取Hive表中NULL值的百分比。有没有一种简单的方法可以做到这一点而不必枚举查询中的所有列名?在这种情况下,大约有50k行和20列。提前致谢!类似于:SELECTcount(each_column)/count(*)FROMTABLE_1WHEREeach_column=NULL; 最佳答案 如果您使用代码执行此操作,则需要列出列。这是一种方法:selectavg(casewhencol1isnullthen1.0else0.0end)ascol1_null_p,avg(casewhencol2isnullthen1.0el

sql - 使用描述创建 Hive 表

Hive建表时应该在什么地方添加表描述?Tablename:"Orders"TableDescription:"OrdersfromVendorABC." 最佳答案 您应该在命令中使用[COMMENTtable_comment]关键字。例子:CREATETABLEIFNOTEXISTSorders(idString,nameString)COMMENT'OrdersfromVendorABC.'ROWFORMATDELIMITEDFIELDSTERMINATEDBY'\t'LINESTERMINATEDBY'\n'STOREDAST

sql - Hive 查询中的临时加入(时间上非常接近的事件)

我需要一个我很难搞清楚的配置单元查询。我有一个看起来像这样的时间序列:timesourceword1word2...etc2012-02-0123:43:16.998824300012B3BFAF02012-02-0123:43:16.999356100022326ABAA2012-02-0123:43:16.999887900022327ABAA我需要一个查询,如果一个源中的记录满足特定条件,除了该记录之外,它还应该及时返回一个或多个记录来自第二个source满足一组不同的条件。到目前为止,我的尝试是这样的:SELECTtimeFROMmessagesCJOINmessagesDon