草庐IT

hadoop - 由于 UTC 时间, hive 中的日期转换问题

我有时间2017-05-04T23:25:23.234Z我想使用HIVE获取2017-05-0423:25:23.234。如何实现这一目标?实际数据-2017-05-04T23:25:23.234Z预期-2017-05-0423:25:23.234实际数据-2016-05-04T02:29:23.231234Z预期-2016-05-0402:29:23.231234请帮帮我 最佳答案 selecttranslate('2017-05-04T23:25:23.234Z','TZ','')2017-05-0423:25:23.234

Apache hive 服务器 2 配置

我正在尝试配置apachehiveserver2我的配置文件在hive-site.xmlhive.server2.thrift.min.worker.threads5Minimumnumberofworkerthreadshive.server2.thrift.max.worker.threads500Maximumnumberofworkerthreadshive.server2.thrift.port10000TCPportnumbertolistenonhiver.server2.thrift.bind.host10.89.20.22TCPinterfacetobindtohiv

sql - 如何在 Hive 中删除 External_Table 以及元数据和数据

我的数据库中有很多表,其中一些是External_Tables,每次我删除External_Table时,我需要找到External_Table的位置,我需要-rm-r数据。所以,有没有hive中的任何方式,同时删除包含元数据和数据的External_Table,如果我们删除managed_table,数据和元数据都将被删除。 最佳答案 在删除之前将外部表转换为托管表altertablemytablesettblproperties('EXTERNAL'='FALSE'); 关于sql-

scala - 使用 Spark 和 Scala 将数据插入 Hive 表时出现问题

我是Spark的新手。这是我想做的事情。我创建了两个数据流;第一个从文本文件中读取数据并使用hivecontext将其注册为temptable。另一个不断从Kafka获取RDD,对于每个RDD,它创建数据流并将内容注册为temptable。最后,我将这两个临时表连接到一个键上以获得最终结果集。我想将该结果集插入配置单元表中。但我没有想法。试图遵循一些示例,但只在配置单元中创建一个包含一列的表,而且该表也不可读。你能告诉我如何在特定的数据库和配置单元表中插入结果吗?请注意,我可以使用show函数看到连接的结果,因此真正的挑战在于插入配置单元表。下面是我使用的代码。imports.....

hadoop - Hive 分区/分桶表的实际结构是什么?

我无法在虚拟框中配置多数据节点集群不考虑复制因子取1。假设我有一个10GB的文件和一个具有2个不同值的列城市,并且我有2个数据节点。想按城市划分数据。我还将在每个分区的2个桶中存储邮政编码。我的问题是每个分区是否会出现在每个数据节点中,或者每个节点将只有不同的分区。我的理解是每个节点都有所有分区,但在某些节点中,由于数据文件中的值不足,分区可能不存在。每个数据节点中的每个分区都将按邮政编码分桶,并且某些分桶可能没有值。 最佳答案 分区是使用目录实现的。目录包含文件。可能是一个,也可能是很多。桶是使用文件实现的。一个桶可能与一个文件相

hadoop - hive 中的 wordcount 问题

使用hive进行字数统计时出现问题。我的配置单元命令是这样的selectword,count(1)ascountfrom(selectexplode(split(word,''))aswordfromnote)wgroupbywordorderbycountdesclimit5;结果:the20583of103889479and7611in52269479是行数。我该如何摆脱它? 最佳答案 将split函数改成-split(word,'\\s+')(而不是单个空格,一个严肃的白色字符[\t\n\x0B\f\r])

excel - 制表符分隔的 Hive 表 : Tabs are being removed

我已经开始在工作中使用hive,但我遇到了从中提取数据的woo制表符分隔数据库的问题。将数据导入Excel(适用于Mac)后,我注意到有些列在它们应该分开的时候合并了。我在没有某些列的情况下运行了查询,它似乎与包含长数据的单元格有关。有时数字会被其他单元格的字母吞噬。有什么办法可以避免这种情况吗? 最佳答案 我会推荐使用下面的方法insertoverwritelocaldirectory'/...path.../my_directory'rowformatdelimitedfieldsterminatedby'\t'storedas

sql - 如何使用分组依据从表中查找最大值

我有下面的表(播放器)列playerIdscoreteamId此表包含所有球队的所有球员信息。PlayerID是主列。每个团队包括多名球员,因此teamId上有很多重复值。分数是每个玩家的分数。我想写一个hive-sql来查询每支球队的最高得分球员。下面是我试过的查询:selectmax(score)score,teamIdfromplayergroupbyteamId这个查询工作正常,但它只显示teamId和最高分数。我也想查询playerId。如果我在选择列中添加playerId,我会遇到以下错误:org.apache.hive.service.cli.HiveSQLExcepti

shell 脚本 "syntax error: ` 意外完成。”

我是linuxshell脚本的新手,这里是我想使用的片段:whileIFS=''read-rline||[[-n"$line"]];doecho""echo""echo""echo"Countingthetable:$line"eval"hive-e'selectcount(*)from$line'"done我将其命名为count_row.sh。这是用法:$./count_row.sht1.csv>row.txtt1.csv基本上每一行都包含一些表格的名称。我收到以下错误:但是我在这里借用的片段被标记为已接受的解决方案,大概是正确编写的。那我在这里错过了什么?非常感谢。

java - 在 HIVE 中运行 UDF 以进行自定义反序列化时出现 OWN_TASK_FAILURE。

我正在编写一个配置单元脚本来从源中提取数据并将其添加到不同的目的地。存储在源中的数据采用自定义格式。因此,我使用HiveUDF获取数据,反序列化并返回List(我试过List)。我创建了一个包含4个字符串参数的Hive表(HIVE_TABLE)并运行以下配置单元查询。>INSERTOVERWRITETABLEHIVE_TABLESELECTudfFunction(colName)[0],udfFunction(colName)[1],udfFunction(colName)[2],udfFunction(colName)[3]fromsourceTable;其中“udfFunction