随笔分类 -  hive

摘要:CREATE TABLE IF NOT EXISTS jsontest( date STRING, channel STRING, machine STRING, resolution STRING, display STRING, ip STRING, lat STRING, lng STRING 阅读全文
posted @ 2023-03-14 19:33 硅谷工具人 阅读(46) 评论(0) 推荐(0)
摘要:遇到一个不规则的json如下: trace是数组,外面2个time,hash都是单个字段。 所以通过hive建表如下,trace使用了array包裹了struct结构: create external table xy_ods.ods_address_trace( trace array<struc 阅读全文
posted @ 2022-12-05 17:47 硅谷工具人 阅读(1657) 评论(0) 推荐(0)
摘要:默认我们使用的hive自带的json包格式,创建表时格式为: CREATE EXTERNAL TABLE `ods.ods_test`( ... ) ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe' STORED AS text; 阅读全文
posted @ 2022-09-29 12:44 硅谷工具人 阅读(276) 评论(0) 推荐(0)
摘要:1. 原因 写入iceberg表时,会在hive_locks表中插入一条记录,表示该表正在被写入(hive中的独占锁) 当数据插入完成后,会自动删除该条记录。 2. 出现场景 (1)在同时往同一个iceberg表中写入数据时,会出现Retrying task after failure: Waiti 阅读全文
posted @ 2022-09-08 15:42 硅谷工具人 阅读(1124) 评论(0) 推荐(0)
摘要:SQL 错误 [1] [08S01]: Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. org.apache.i 阅读全文
posted @ 2022-09-08 12:09 硅谷工具人 阅读(322) 评论(0) 推荐(0)
摘要:执行spark任务居然碰到了hive中表的被锁了,导致写数据时失败,这个还真是头一次碰到过这回事。 错误信息如下: 22/09/04 21:02:28 WARN Tasks: Retrying task after failure: Waiting for lock. org.apache.iceb 阅读全文
posted @ 2022-09-04 21:18 硅谷工具人 阅读(497) 评论(0) 推荐(0)
摘要:感悟:有时候很简单的笨办法,比那些高大上的技术要实用的多。 有一个数据同步,大约4亿条记录,没有分区。现在要按照天,小时分区写入到iceberg的分区表中。 源数据中本身就是很多几十k大小的非常多的小文件。 于是在读取时,总想着要shuffle,合并小文件,于是是这样的: hive_df = spa 阅读全文
posted @ 2022-09-04 12:31 硅谷工具人 阅读(2054) 评论(1) 推荐(3)
摘要:1. nginx的安装 1.1 下载上传 http://nginx.org/en/download.html 1.2 linux上安装c++编译环境 yum install -y zlibyum install gcc-c++ openssl openssl-devel zlib-devel pcr 阅读全文
posted @ 2022-05-11 14:32 硅谷工具人 阅读(220) 评论(0) 推荐(0)
摘要:按顺序生成 50 - 60 之间的数字作为多行的记录集,结果如下: 第一步: 用最大值减去最小值,然后使用以下语句生成10个空的集合数组, select 50 as minNum,split(space(60-50),'') as x; 显示如下: 第二步:将x进行展开,使用posexplode可以 阅读全文
posted @ 2022-03-09 13:30 硅谷工具人 阅读(1227) 评论(0) 推荐(1)
摘要:准备的数据,现在要求将b, c两列中空白的值使用前面的值补充。 补充完的结果需要如下: 第一步: 确定数据是否有行号,如果没有,则自己增加一列行号,如准备数据的a列。如果已经有,此步可忽略。 第二步: 增加两列b1,c1, 将空值设置为0,非空值设置为1。 select a,b,c, case wh 阅读全文
posted @ 2022-03-08 13:29 硅谷工具人 阅读(1066) 评论(0) 推荐(1)
摘要:发现自己确实越来越笨,好在解决了。 通常将hive的连接信息和sql语句写在一个脚本里面执行,这样看起来方便,修改起来也方便。 但是最近由于sql语句太长了,所以拆开两部分。一部分是hive的连接,另一部分是sql文件。通过-f传参执行。 beeline --hiveconf mapreduce.j 阅读全文
posted @ 2021-09-26 12:42 硅谷工具人 阅读(707) 评论(0) 推荐(0)
摘要:分段函数常用于分箱中,统计分组在指定的区间中的占比。 比如有如下例子:统计某个班级中考试分数在各个阶段的占比。 准备的数据如下: 使用如下文件在hive中建表。 class1,1,100 class1,2,88 class1,3,90 class1,4,23 class1,5,30 class1,6 阅读全文
posted @ 2021-09-22 21:34 硅谷工具人 阅读(2180) 评论(0) 推荐(0)
摘要:表字段中jsonStr是一个json格式的字符串,类似于map结构。{"name”:"king", "age":18, "score":99} 使用str_to_map可以转化为map结构。 str_to_map(regexp_replace(regexp_replace(regexp_replac 阅读全文
posted @ 2021-08-21 14:15 硅谷工具人 阅读(2102) 评论(0) 推荐(0)
摘要:今天遇到hive表新增字段,以往建表都是建外表,直接drop后,重新创建。 由于这次全部使用内表创建的,所以使用add column功能新增字段。 alter table xy_dw.dw_transaction_eth add columns(type1 string comment '类型'); 阅读全文
posted @ 2021-08-12 15:52 硅谷工具人 阅读(350) 评论(0) 推荐(0)
摘要:当hive中分区字段有NULL值时,hive会使用dynamic partition,数据会放到一个特殊的分区,这个分区由参数“hive.exec.default.partition.name”控制,默认为“__HIVE_DEFAULT_PARTITION__”,即上面这种情况。 如果不想保留,则使 阅读全文
posted @ 2019-10-21 20:34 硅谷工具人 阅读(3638) 评论(0) 推荐(0)
摘要:先解释下,由于历史原因导致hive中的看到分区比hdfs中的文件夹不匹配,存在hive中分区数有,实际hdfs中无此文件夹。 spark中通过sparkSQL读取hive中的该表时,将会出现异常。 解决方案: 1. 检查该表是否是外部表,如果不是,将属性修改为外部表属性。 这里修改为外部表,目的是在 阅读全文
posted @ 2019-08-26 19:45 硅谷工具人 阅读(1825) 评论(0) 推荐(0)
摘要:from_unixtime 时间戳转换,如果带毫秒数的,除以1000. reload function 今天碰到udf发布后,有时候连接正常,有时候连接不正常。然后问同事,提供了一个这样的命令。 阅读全文
posted @ 2019-08-09 19:51 硅谷工具人 阅读(1283) 评论(0) 推荐(0)
摘要:1. desc function [函数名] desc function xpath; 查询用法: 2. desc function extended [函数名] desc function extended xpath; 查询使用举例: 3. 自定义函数添加说明: 使用@Description注解 阅读全文
posted @ 2019-08-05 20:29 硅谷工具人 阅读(3436) 评论(0) 推荐(0)
摘要:多重insert: 阅读全文
posted @ 2019-08-01 14:35 硅谷工具人 阅读(1163) 评论(0) 推荐(0)
摘要:用途: 根据查询到结果数量来判断,是否需要再执行下个脚本。 1. 查询语句script.q脚本如下: 2. shell脚本如下: 这里注意hive语句需要包裹在``(左上角~按键)里面,然后可以把输出的结果赋值给一个变量。 执行结果显示如下: 阅读全文
posted @ 2019-07-02 14:00 硅谷工具人 阅读(2445) 评论(0) 推荐(0)

成功之道,在于每个人生阶段都要有不同的目标,并且通过努力实现自己的目标,毕竟人生不过百年! 所有奋斗的意义在于为个人目标实现和提升家庭幸福,同时能推进社会进步和国家目标! 正如古人讲的正心诚意格物致知,修身齐家治国平天下。