草庐IT

hadoop - 如何从 EXPLAIN 中为不同的配置单元阶段设置资源?

有没有办法根据EXPLAIN查询的阶段提供资源。 最佳答案 据我所知,您唯一可以设置的是:R的数量/精确计数setmapred.reduce.tasks=**(只要是makessense)R数量/最大计数sethive.exec.reducers.max=**+计算实际数量的提示sethive.exec.reducers.bytes.per.reducer=*****每个M容器的资源(使用MR时)/setmapreduce.map.memory.mb=**+setmapreduce.map.java.opts=-XMX**每个R容器

hadoop - 很少有 Hive 面试问题

我最近在一家公司的面试中遇到了一些问题。由于我是Hadoop的新手,谁能告诉我正确答案?问题:Hive中“排序依据”和“分组依据”之间的区别。它们是如何工作的?如果我们在Hive中的任何SQL查询中使用“限制1”,Reducer是否工作。如何优化Hive性能?“内表”和“外表”的区别Hive和SQL的主要区别是什么请提供一些有用的资源,以便我可以更好地学习。谢谢 最佳答案 PFB的答案:1。Hive中“排序依据”和“分组依据”之间的区别。它们是如何工作的?答。SORTBY按reducer对数据进行排序,它提供了reducer中行的排

hadoop - Impala 的 ORC 文件格式

ORC文件格式可以在Impala中使用吗?还有如何访问存储在Impala中的hivemetastore中的ORC表。在文档链接下方找到,但它不包含任何受限制的文件格式列表或提及impala不支持的ORC:http://www.cloudera.com/documentation/enterprise/latest/topics/impala_file_formats.html 最佳答案 Impala不支持ORC。相反,ApacheParquet是获得最佳性能的推荐格式。 关于hadoop

hadoop - Spark Thriftserver 未连接到正确的 Hive 数据库

我正在运行一个SparkThriftServer,这样我就可以对存储在Hive表中的数据执行SparkSQL命令。当我启动beeline以显示我当前的表格时:user@mn~$beeline!connectjdbc:hive2://mn:10000showtables;+------------+--------------+--+|tableName|isTemporary|+------------+--------------+--++------------+--------------+--+输出显示我的数据库中没有表。但是,如果我使用(已弃用的)CLIhive,我会得到不同

java - 如何将数据插入 Hive 2 中的复杂数据类型 “Struct”

这是表的结构CREATETABLEwarehouse(timetimestamp,personstruct,activitystruct,casestruct);表创建没有问题,问题是如何向表中插入数据。我正在尝试类似的方法,但它不起作用INSERTINTOTABLEwarehouseVALUES('2018-05-31'),SELECTNAMED_STRUCT('id',1,'name','Alex','organization','CITI')ASperson,SELECTNAMED_STRUCT('id',1,'name','Buy')ASactivity,SELECTNAMED

sql - 如何在 HIVE 中查找以前的日期

我想在Hive中查找之前的日期。例如:我的日期为20180821(yyyyMMdd)格式,我想在Hive中查找此日期的前一个日期。我尝试了date_sub()函数,似乎它只适用于yyyy-MM-dd格式。如何解决我的问题。请帮忙 最佳答案 除了已经提供的带有unix_timestamp转换的解决方案外,还请考虑这个。使用substr()的相同转换看起来有点长,但它适用于任何日期/时间戳,如'1969123119:00:00'而没有TZ问题,也这并不慢,因为没有使用SimpleDateFormat/etc也没有应用TZ。date_su

sql - 如何在 Hive 中生成所有 n-gram

我想使用HiveQL创建一个n-gram列表。我的想法是使用具有先行和拆分功能的正则表达式-但是这不起作用:selectsplit('Thisismysentence','(\\S+)+(?=(\\S+))');输入的是表格的一列|sentence||-------------------------||Thisismysentence||Thisisanothersentence|输出应该是:["Thisis","ismy","mysentence"]["Thisis","isanother","anothersentence"]Hive中有一个n-gramudf,但该函数直接计算n

date - 有两个不同的字符串代表两个不同的配置单元表中的日期,我想用它们来加入

所以我在Hadoop集群中的Hive中有两个外部表。一个表有一个(日期字符串)列,格式为'2019-05-2411:16:31.0'另一个有(dateSTRING)列,格式为'23/May/2019:22:15:04',它们都是字符串。我需要将它们转换为相同类型的日期格式并使用它们来连接这两个表。您将如何解决这个问题并在Hive中解决所有问题?可能吗?我是Hadoop的菜鸟,对Hive的可能性还不是很了解。Ps:我的hive版本不支持!hive--version命令来检查我正在使用的版本,所以我不太确定如何理解我正在使用的版本。不是我的集群,我也不是根用户。

【Hive】——函数案例

1Hive多字节分隔符处理1.1默认规则Hive默认序列化类是LazySimpleSerDe,其只支持使用单字节分隔符(char)来加载文本数据,例如逗号、制表符、空格等等,默认的分隔符为”\001”。根据不同文件的不同分隔符,我们可以通过在创建表时使用rowformatdelimited来指定文件中的分割符,确保正确将表中的每一列与文件中的每一列实现一一对应的关系。1.2问题每一行数据的分隔符是多字节分隔符,例如:”||”、“–”等数据的字段中包含了分隔符1.3方案一:替换分隔符(不推荐)直接解决数据问题,而不是解决了单字节分隔符问题,不推荐1.4方案二:RegexSerDe正则加载(推荐)

hadoop - 如何确保 RegexSerDe 可用于我的 Hadoop 节点?

我正在尝试解决使用Hive分析Web日志的问题,我已经看到了很多例子,但我似乎找不到任何人遇到这个特定问题。这就是我现在的位置:我已经设置了一个AWSElasticMapReduce集群,我可以登录,然后启动Hive。我确保addjarhive-contrib-0.8.1.jar,它说它已加载。我创建了一个名为event_log_raw的表,其中包含一些字符串列和一个正则表达式。loaddatainpath'/user/hadoop/tmpoverwriteintotableevent_log_raw,我开始比赛了。select*fromevent_log_raw有效(我认为在本地,因