hive相关内容

Hive LEFT SEMI JOIN 表示“不存在"

我有两个表,只有一个键列.表 a 中的键是表 b 中所有键的子集.我需要从表 b 中选择不在表 a 中的键. 这是 Hive 手册中的引文:“LEFT SEMI JOIN 以有效的方式实现了不相关的 IN/EXISTS 子查询语义.从 Hive 0.13 开始,使用子查询支持 IN/NOT IN/EXISTS/NOT EXISTS 运算符,因此大多数这些 JOIN 不再需要手动执行. 使用L ..
发布时间:2021-12-28 23:40:34 其他开发

Hive QL 除外条款

如何在 Hive QL 中执行 EXCEPT 子句(如 SQL) 我有 2 个表,每个表都是一列唯一 ID. 我想找到仅在表 1 中但不在表 2 中的 id 列表 表 1 苹果橘子梨 表 2 苹果橘子 在 SQL 中,您可以执行 EXCEPT 子句 (http://en.wikipedia.org/wiki/Set_operations_%28SQL%29) 但你不能在 ..
发布时间:2021-12-28 23:40:25 其他开发

将 hive 表从一个数据库传输到另一个数据库

我需要将一个 hive 表从一个数据库移动到另一个数据库.我该怎么做? 解决方案 从 0.14 开始,您可以使用以下语句将表从一个数据库移动到同一 Metastore 中的另一个数据库: 使用 old_database;更改表 table_a 重命名为 new_database.table_a 如果table_a 是托管表,则上述语句还将移动 hdfs 上的表数据. ..
发布时间:2021-12-28 23:40:16 其他开发

Hive 执行钩子

我需要在 Apache Hive 中挂钩一个自定义执行挂钩.如果有人知道怎么做,请告诉我. 我当前使用的环境如下: Hadoop:Cloudera 版本 4.1.2操作系统:Centos 谢谢,阿伦 解决方案 根据您要在哪个阶段注入自定义代码,有多种类型的钩子: 驱动程序运行挂钩(前/后) 语义分析器挂钩(前/后) 执行挂钩(前/失败/后) 客户统计信息发布者 ..
发布时间:2021-12-28 23:40:07 其他开发

无法在 Spark 中配置 ORC 属性

我使用的是 Spark 1.6 (Cloudera 5.8.2) 并尝试了以下方法来配置 ORC 属性.但是不影响输出. 下面是我试过的代码片段. DataFrame 数据帧 =hiveContext.createDataFrame(rowData, schema);dataframe.write().format("orc").options(new HashMap(){{put("o ..
发布时间:2021-12-28 23:39:50 Java开发

删除存储为 orc 的 hive 表的列

我创建的配置单元表如下: 创建表 alpha001(id int, name string) 由 (id) 聚类到 2 个存储为 orc TBLPROPERTIES ('transactional'='true') 的桶中 现在我想删除其中一列,比如“名称".我尝试了以下方法: ALTER TABLE alpha001 REPLACE COLUMNS (id int); 结果如下 异常抛 ..
发布时间:2021-12-28 23:39:40 其他开发

如何让 hive 同时运行 mapreduce 作业?

我是 hive 的新手,遇到了一个问题, 我在蜂巢中有一张这样的桌子: create table td(id int, time string, ip string, v1 bigint, v2 int, v3 int,v4 int, v5 bigint, v6 int) PARTITIONED BY(dt STRING)行格式分隔字段TERMINATED BY ',' 行 TERMINA ..
发布时间:2021-12-28 23:39:33 其他开发

HIVE 中的减号查询

减号查询在 HIVE 中似乎不起作用. 尝试过: 从 abc 中选择 x减从 bcd 中选择 x ; 我做错了还是没有为 HIVE 定义减去查询?如果是这样,有没有其他方法可以得到这个结果? 解决方案 HQL 似乎不支持 MINUS 运算符.看到这个相关的,虽然有点旧,资源: http://www.quora.com/Apache-Hive/What-are-the-big ..
发布时间:2021-12-28 23:39:23 其他开发

HiveQL - 如何查找列值是数字还是不使用任何 UDF?

基本上我想根据一个列值返回行. 如果该列包含非数字值,则从 hive 表中返回这些行. Hive 中是否有任何 UDF 可用? 解决方案 我相信 Hive 支持 rlike(正则表达式).所以,你可以这样做: where col rlike '[^0-9]' 这会查找任何非数字字符.如果您的数值可能有小数点或逗号,您可以扩展它. ..
发布时间:2021-12-28 23:39:14 其他开发

'InputFormat, OutputFormat' 和有什么区别?在 Hive 中“存储为"?

我是大数据的新手,目前正在学习 Hive.我理解 InputFormat & 的概念Hive 中的 OutputFormat 作为 SerDe 的一部分.我还了解到“存储为"用于以特定格式存储文件,就像 InputFormat 一样.但我不明白使用 'InputFormat, OutputFormat' & 之间的显着区别是什么?'存储为'. 感谢任何帮助. 解决方案 Hive 有很 ..
发布时间:2021-12-28 23:39:06 其他开发

HIVE 中的 LIMIT 子句真的是随机的吗?

HIVE 注释的文档LIMIT 子句返回随机选择的行.我一直在使用 LIMIT 1 在超过 800,000 条记录的表上运行 SELECT 表,但它总是返回相同的记录. 我正在使用 Shark 发行版,我想知道这是否与这种非预期行为有关?任何想法将不胜感激. 谢谢,维萨赫 解决方案 尽管文档说明它随机返回行,但实际上并非如此. 它返回“随机选择的行",因为它出现在数据库中 ..
发布时间:2021-12-28 23:38:41 其他开发

Hive UDF 文本到数组

我正在尝试为 Hive 创建一些 UDF,它为我提供了比已经提供的 split() 函数更多的功能. import org.apache.hadoop.hive.ql.exec.UDF;导入 org.apache.hadoop.io.Text;公共类小写扩展 UDF {公共文本评估(最终文本文本){return new Text(stemWord(text.toString()));}/*** ..
发布时间:2021-12-28 23:38:29 其他开发

空字符串在 Hive 中不被视为 null

我对下面语句的理解是,如果在hive列​​中插入空白或空字符串,将被视为空. TBLPROPERTIES('serialization.null.format'='' 为了测试功能,我创建了一个表并将 '' 插入到字段 3.当我在字段 3 上查询空值时,没有符合该条件的行. 我对将空白字符串设为 null 的理解是否正确? 创建表CDR(field1 字符串,field2 字符串,fi ..
发布时间:2021-12-28 23:38:21 其他开发

Hive 中的增量/增量负载

我有以下用例: 我的应用程序在 RDBMS 数据库中有一个包含 多年数据 的表.我们使用 sqoop 将数据导入 HDFS 并加载到按年、月分区的 hive 表中. 现在,应用程序也会每天更新并将新记录插入到 RDBMS 表中.这些更新的记录可以跨越历史月份.更新的记录和新的插入记录可以通过更新的时间戳字段来确定(它将具有当前日期时间戳). 现在的问题是:如何使用这些更新的记录每 ..
发布时间:2021-12-28 23:38:12 其他开发

在 Hive 中将字符串转换为时间戳

我的 Hive 表中有时间戳的以下字符串表示形式: 20130502081559999 我需要将其转换为这样的字符串: 2013-05-02 08:15:59 我尝试了以下({code} >>> {result}): from_unixtime(unix_timestamp('20130502081559999', 'yyyyMMddHHmmss')) >>>2013-05-03 00: ..
发布时间:2021-12-28 23:38:02 其他开发

Hive - LIKE 运算符

我不知道我是如何处理这个问题的: 这是我的数据: Table1: Table2:品牌产品销售索尼索尼ABCD 1233苹果索尼 adv 1233谷歌索尼 aaaa 1233IBM 苹果 123 1233等 苹果 345 1233IBM 13123 1233 是否可以过滤查询,我有一个表格,其中包含品牌和总销售额?我的想法是: 选择table1.brand, sum(table2.sol ..
发布时间:2021-12-28 23:37:53 其他开发

在 hive 中,有没有办法指定在哪些列之间添加新列?

我能做到 ALTER TABLE table_name ADD COLUMNS (user_id BIGINT) 在我的非分区列的末尾和我的分区列之前添加一个新列. 有没有办法在我的非分区列中的任何地方添加一个新列?例如,我想把这个新列 user_id 作为我表的第一列 解决方案 是的,可以更改列的位置,但必须在使用 CHANGE COLUMN 将其添加到表中之后 ..
发布时间:2021-12-28 23:37:45 其他开发