草庐IT

hive-overwrite

全部标签

sql - 在 Hive 中查询

在SQL中我们有分区依据和分组依据selectdeptno,count(*)cfromempgroupbydeptno;DEPTNOC-------103205306selectdeptno,count(*)over(partitionbydeptno)cfromemp;DEPTNOC-------103103103205205205205205306306306306306306如果我们需要在HIVE中练习同样的事情,会有什么选择。我们在Hive中有同样的东西吗?请建议提前致谢。 最佳答案 Hive支持窗口函数,参见Windowi

hadoop - 在 Hive 中导入带有 key=value 对的平面文件

我在HDFS中有格式为原始文件name=ABCage=10Location=QWERTYname=DEFage=15Location=IWIORS如何将这些平面文件中的数据导入到仅包含“名称”和“位置”列的Hive表中。 最佳答案 您可以执行以下操作。在表声明中,使用:ROWFORMATDELIMITED        FIELDSTERMINATEDBY''--space        MAPKEYSTERMINATEDBY'='此外,您的表将有一个数据类型为Map的列。因此,当您可以使用键从单个列中删除数据时。其他选项:编写自己

java - 使用 Hive UDF 计算加权因子

我是Hive的新手,我会帮助编写一个UDF函数来计算权重因子。计算看起来很简单。我有一个表,其中有一些值KEY,VALUE按GROUP_ID分组。对于一组中的每一行,我要计算权重因子,0和1之间的float,即组中该元素的权重。进入该组的权重因子之和必须为1。本例中值为距离,则权重与距离成反比。GROUP_ID|KEY|VALUE(DISTANCE)====================================110411131122213121453.......数学函数:1/(Xi*sum(1/Xk))从k=1到N)GROUP_ID|KEY|VALUE|WEIGHTING

hadoop - pig : get data from hive table and add partition as column

我有一个分区的Hive表,我想将其加载到Pig脚本中,并且还想将分区添加为列。我该怎么做?Hive中的表定义:CREATEEXTERNALTABLEIFNOTEXISTStransactions(column1string,column2string)PARTITIONEDBY(datestampstring)ROWFORMATDELIMITEDFIELDSTERMINATEDBY'\t'LOCATION'/path';pig脚本:%defaultINPUT_PATH'/path'A=LOAD'$INPUT_PATH'USINGPigStorage('|')AS(column1:cha

hadoop - Hive - 如何从文件名作为列的文件中加载数据?

我正在运行以下命令来创建我的表ABC并从我指定文件路径中的所有文件中插入数据。现在我想添加一个带有文件名的列,但是如果不循环遍历文件或其他东西,我找不到任何方法来做到这一点。关于执行此操作的最佳方法有什么建议吗?CREATETABLEABC(NAMEstring,DATEstring)ROWFORMATDELIMITEDFIELDSTERMINATEDBY'\t'STOREDASTEXTFILE;hive-e"LOADDATALOCALINPATH'${DATA_FILE_PATH}'INTOTABLEABC;" 最佳答案 Hive

hadoop - 使用 pig/hive 进行半结构化数据处理

我有如下所示的半结构化数据:col1col2col3col4123[name#aa,address#[perminentaddress#abc,currentaddress#xyg]]598[address#[perminentaddress#dev,currentaddress#pqr],name#bb]349[name#cc,mobile#111,id#66address#[perminentaddress#abc,currentaddress#xyg]]前三列是固定的,第四列可以包含任何带有键值对的未知数据。键值对可以嵌套,如上例所示。最重要的是第4列的键位置不固定,可以有无限数

hadoop - hive有数据字典吗?

hive有数据字典吗?我正在尝试获取配置单元中表的列名。除了describe命令外,类似于oracle查询:SELECTCOLUMN_NAME,DATA_TYPEFROMUSER_TAB_COLUMNSWHERETABLE_NAME=?ORDERBYCOLUMN_ID; 最佳答案 Hive使用外部关系数据库作为其metastore.您可以使用MetastoreAPI(例如MySQL)直接查询配置的Metastore。更高级别的组件是HCatalog,它提供了一个API来访问和操作Metastore。

mysql - Sqoop:从 MySQL 导入 Hive 时替换字符?

当从MySQL导入数据到Hive时,我需要在电话号码中删除两个字符+7。以下请求返回SQL错误。我应该使用什么正确的replace命令?sqoopimport--connectjdbc:mysql://server/db--usernamexxxx--passwordyyyy--query'selectname,last_name,email,second_name,Replace(personal_phone,'+7',''),Replace(mobile,'+7',''),Replace(phone,'+7','')来自$CONDITIONS'--target-dir/data/t

hadoop - 安装 Spark Cluster,Hive 的问题

我正在尝试启动Spark/Shark集群,但一直遇到同样的问题。我已按照https://github.com/amplab/shark/wiki/Running-Shark-on-a-Cluster上的说明进行操作并按照说明处理Hive。我认为SharkDriver正在使用另一个版本的Hadoopjar,但不确定原因。这是详细信息,任何帮助都会很棒。星火/鲨鱼0.9.0ApacheHadoop2.3.0Amplabshive0.11斯卡拉2.10.3Java7我已经安装了所有东西,但我收到了一些弃用警告,然后是一个异常:14/03/1411:24:47信息Configuration.d

hadoop - 如何使用 Hive、Pig 或 MapReduce 处理 "insert into values"?

我是hadoop和大数据概念的新手。我正在使用Hortonworks沙箱并尝试操作csv文件的值。所以我使用文件浏览器导入文件并在配置单元中创建一个表来做一些查询。实际上我想要一个“插入值”查询来选择一些行,更改列的值(例如将字符串更改为二进制0或1)并将其插入到新表中。SQLLIKE查询可能是这样的:Insertintotable1(id,name,'01')selectid,name,graduatedfromtable2whereuniversity='aaa'不幸的是,hive无法插入(常量)值(不从文件导入),我不知道如何使用hive、pig甚至mapreduce脚本来解决这