
Hadoop
文章平均质量分 60
chimchim66
火火要努力变强啊。。。
展开
-
hive只复制表结构不复制表数据
hive原创 2023-02-23 15:58:01 · 1198 阅读 · 0 评论 -
hive acid及事务表踩坑学习实录
hive acid及事务表踩坑学习实录原创 2022-11-28 19:04:56 · 824 阅读 · 0 评论 -
踩坑实录Hive中select * 没有数据,而select count(*)有数据
目录背景问题定位原因1.压缩导致解决方案原因2.分区文件location不一致导致解决方案原因3.元数据未更新解决方案背景hdfs文件有数据,Hive中select * 没有数据,而select count(*)有数据问题定位原因1.压缩导致表结构未压缩,数据压缩了,select查询与表结构有关系解决方案使用select时指定与数据一致的压缩方法就可以查询出来压缩过的收据了SET hive.exec.compress.output=原创 2022-05-27 11:23:35 · 2431 阅读 · 0 评论 -
Spark on Yarn资源调优
前言Spark是专为大规模数据处理而设计的快速通用的计算引擎,具有速度快、支持多语言、移植性高的特点。而移植性高的体现就在于Spark的部署方式有多种模式,如:本地local、Standalone、Apache Mesos、Hadoop YARN、EC2、Mesos、K8S等等。背景一般公司的大数据项目基础设施都是建立在hdfs之上,所以在大部分的公司里,Spark都是跑在Yarn之上,yarn作为一个资源调度器并不能感知Spark作业具体需要分配多少资源,那就需要程序员在提交Spark作业的时候,设原创 2022-05-17 13:48:55 · 850 阅读 · 1 评论 -
hive日期格式转换
固定日期转换成时间戳select unix_timestamp('2022-05-09','yyyy-MM-dd');select unix_timestamp('20220509','yyyyMMdd');select unix_timestamp('2022-05-09T10:02:41Z', "yyyy-MM-dd'T'HH:mm:ss'Z'");16/Mar/2022:12:25:01 +0800转成正常格式(yyyy-MM-dd hh:mm:ss)select ...原创 2022-05-10 14:31:30 · 1623 阅读 · 0 评论 -
【踩坑实录】-hive参数产生2个文件问题
背景:执行任务完成后,经常会发现hdfs生成了多个文件设置以下参数防止hive生成2个文件:set hive.exec.stagingdir=/tmp/hive-staging/.hive-staging;处理方法:在hive-site.xml中添加以下参数。<property> <name>hive.exec.stagingdir</name> <value>/tm...原创 2022-05-09 14:30:06 · 770 阅读 · 0 评论 -
踩坑实录-datax数据推送字符集错误
背景:使用datax工具将一张表从hive推送数据到mysql报错:Incorrect string value: '\\xF0\\xA5\\x96\\x84' for column 'user_name' at row产生原因分析:普通的字符串或者表情都是占位3个字节,所以utf8足够用了,但是移动端的表情符号占位是4个字节,普通的utf8就不够用了,为了应对无线互联网的机遇和挑战、避免 emoji 表情符号带来的问题、涉及无线相关的 MySQL 数据库建议都提前采用 utf8mb4 字符集,原创 2022-05-07 11:22:35 · 1268 阅读 · 0 评论 -
hive锁机制及解锁
hive锁机制hive存在两种锁,共享锁Shared (S)和互斥锁Exclusive (X),其中只触发s锁的操作可以并发的执行,只要有一个操作对表或者分区出发了x锁,则该表或者分区不能并发的执行作业。各个操作锁出发的锁如下:补充一条,load data (local) inpath ’ ’ into table xx partition() 出发的锁操作同insert直接在hadoop上 hadoop dfs -put xx yy 不触发锁。(可以用在shell上 执行 hadoop dfs原创 2022-05-06 16:21:23 · 1844 阅读 · 0 评论 -
hive动态分区相关
1.动态分区操作–动态分区插数set hive.exec.dynamic.partition=true;set hive.exec.dynamic.partition.mode=nonstrict;set hive.exec.max.dynamic.partitions=100000;set hive.exec.max.dynamic.partitions.pernode=100000;INSERT overwrite table 目标表名 partition(分区字段)select 表字段原创 2020-07-24 10:23:45 · 473 阅读 · 0 评论 -
解决hive中文乱码
问题:建表时发现hive建表语句有中文乱码的现象定位:hive的元数据都是存储在mysql上维护的。可以修改hive元数据的字符集为utf-8.解决方案:1.修改hive-site.xml配置文件的参数内容set jdbc:mysql://crxy99:3306/hive_cz3q?createDatabaseIfNotExist=true;注意:hive的元数据metastore在mysql的数据库,不管是数据库本身,还是里面的表编码都必须是latin1(CHARACTER SET lat原创 2020-07-08 17:03:07 · 713 阅读 · 0 评论 -
hive基本简单操作
hive原创 2020-07-08 16:50:57 · 225 阅读 · 0 评论