hive-configuration相关内容
如果我在 hive 中有一个使用 JOIN 的查询,让我们说两个表 上的 LEFT OUTER JOIN 或 INNER JOIN>ON 任何列,那么我如何知道它在后端 MapReduce 中转换为哪种类型的 JOIN(即 Map-side JOIN 或 Reduce-side JOIN)? 谢谢. 解决方案 使用 explain select ... 并检查计划.它解释了 map
..
有人告诉我 count(distinct ) 可能会导致数据倾斜,因为只使用了一个 reducer. 我使用一个包含 50 亿条数据和 2 个查询的表进行了测试, 查询 A: 从 tableA 中选择 count(distinct columnA) 查询 B: 选择 count(columnA) from(从 tableA 中按 columnA 分组选择 columnA) 实际
..
我经常有一大块 HiveQL,我想对某些变量使用不同的设置多次运行. 一个简单的例子是: set mindate='2015-01-01 00:00:00'设置 maxdate='2015-04-01 00:00:00'select * from my_table where the_date介于 ${hiveconf:mindate} 和 ${hiveconf:maxdate} 之间
..
有人告诉我 count(distinct ) 可能会导致数据倾斜,因为只使用了一个减速器. 我使用一个包含 50 亿数据和 2 个查询的表进行了测试, 查询 A: select count(distinct columnA) from tableA 查询 B: select count(columnA) from(从 tableA group by columnA 选择 colu
..
我有两个 Hive 脚本,如下所示: 脚本 A: SET hive.exec.dynamic.partition=true;SET hive.exec.dynamic.partition.mode=非严格;SET hive.exec.parallel=true;... 做一点事 ... 脚本 B: SET hive.exec.dynamic.partition=true;SET hi
..
我在 HDFS 中的文件路径中有 Avro 格式的数据,例如:/data/logs/[foldername]/[filename].avro.我想在所有这些日志文件上创建一个 Hive 表,即 /data/logs/*/* 形式的所有文件.(它们都基于相同的 Avro 架构.) 我正在使用标志 mapred.input.dir.recursive=true 运行以下查询: CREATE E
..
在 Hive 2.2.0 上,我使用查询从另一个大小为 1.34 GB 的源表中填充一个 orc 表 INSERT INTO TABLE TableOrc SELECT * FROM Table;---- (1) 该查询创建了包含 6 个 orc 文件的 TableORC 表,这些文件远小于 256MB 的块大小. -- FolderList1-rwxr-xr-x user1 超级组 65.
..
我有一个使用大量容器和大量内存的查询.(已使用内存的 97%).有没有办法设置查询中使用的容器数量并限制最大内存?查询正在 Tez 上运行. 提前致谢 解决方案 控制 Mapper 的数量: 映射器的数量取决于各种因素,例如数据在节点之间的分布方式、输入格式、执行引擎和配置参数.另请参阅初始任务并行的工作原理 MR 使用 CombineInputFormat,而 Tez
..
谁能解释清楚 hive.auto.convert.join 和 hive.auto.convert.join.noconditionaltask 配置参数? 还有这些对应的尺寸参数: hive.mapjoin.smalltable.filesize 和 hive.auto.convert.join.noconditionaltask.size 我的观察是在 Tez 上运行时,
..
我正在使用以下命令在 Hive 中创建一个新表: CREATE TABLE new_table AS select * from old_table; 我的问题是在创建表后,它为每个分区生成多个文件 - 而我只需要每个分区一个文件. 如何在表格中定义它?谢谢! 解决方案 有很多可能的解决方案: 1) 在查询的末尾添加 distribute by partition key.
..
我目前正在使用 Hive 进行一些数据探索,无法解释以下行为.假设我有一个带有字段 master_id 的表(名为 mytable). 当我计算我得到的行数 select count(*) as c from mytableC1129563 如果我想计算具有非空 master_id 的行数,我会得到更高的数字 select count(*) as c from mytable wher
..
可以使用 hive hive.fetch.task.conversion 参数在 Hive 中启用 Fetch 任务以进行简单查询,而不是 Map 或 MapReduce. 请解释为什么 Fetch 任务的运行速度比 Map 快得多,尤其是在做一些简单的工作时(例如 select * from table limit 10;)?在这种情况下,什么仅地图任务正在执行?在我的情况下,性能差异要快
..
我们知道set命令用于设置属性的一些值 配置单元>设置hive.exec.dynamic.partition = true;蜂巢>SET hive.exec.dynamic.partition.mode =非严格; 但是我们如何读取上述属性的当前值 我尝试了以下命令,它不起作用 获取hive.exec.dynamic.partition显示hive.exec.dynamic.part
..
有人告诉我count(distinct)可能会导致数据偏斜,因为只使用了一个reducer. 我使用了一个包含50亿条数据和2个查询的表进行了测试, 查询A: 从tableA选择计数(与columnA不同) 查询B: 从中选择count(columnA)(从tableA组中按columnA组选择columnA)a 实际上,查询A大约需要1000-1500秒,而查询B则需要5
..
有人可以清楚地说明两者之间的区别吗 hive.auto.convert.join 和 hive.auto.convert.join.noconditionaltask 配置参数? 还有这些相应的尺寸参数: hive.mapjoin.smalltable.filesize 和 hive.auto.convert.join.noconditionaltask.
..
我想更改hive数据库中的1000s表,但是它们的某些表退出而有些则没有.当我执行该.sql文件时,一旦发现表不存在,它就会从配置单元中退出.因此,请帮助我覆盖或跳过那些不在蜂巢中存在其表的查询 解决方案 尝试使用此配置参数: set hive.cli.errors.ignore=true; 将其设置为"true"后,无论有多少失败,脚本中的所有命令都将执行. 请参阅此处:
..
在Hive 2.2.0上,我使用查询从另一个大小为1.34 GB的源表中填充一个兽人表 INSERT INTO TABLE TableOrc SELECT * FROM Table; ---- (1) 该查询使用6个orc文件创建TableORC表,这些文件比256MB的块大小小得多. -- FolderList1 -rwxr-xr-x user1 supergroup 6
..
可以使用hive hive.fetch.task.conversion参数在Hive中启用Fetch任务以进行简单查询,而不是Map或MapReduce. 请解释为什么提取任务比Map运行得快得多,尤其是在做一些简单的工作时(例如select * from table limit 10;)?在这种情况下,还会执行哪些仅地图任务?就我而言,性能差异要快20倍以上.这两个任务都应该读取表数据,不
..