![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
个人总结
文章平均质量分 64
kevin_wf
总结分享java,大数据相关开发运维工作,欢迎交流,共同进步
展开
-
flink1.10 提交java sql ddl程序异常
flink1.10对ddl这块支持比较完善,最近用java写了个ddl kafka的demo测试。在ide本地环境中执行没有问题,但将任务打包提交的flink 集群时提交就报错,无法执行,异常如下:看异常好像是ddl写错了,本地运行正常,说明没有问题。使用flink sql-client客户端测试报一样的错,flink lib下没有对应的包,将包放到lib下,使用sql-client执行...原创 2020-03-17 20:42:15 · 1032 阅读 · 1 评论 -
flink table 使用Kafka Connector处理复杂json
flink kafka connector处理复杂json字符串,直接上代码。StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); EnvironmentSettings bsSettings = EnvironmentSettings.newInsta...原创 2019-12-30 18:15:12 · 2043 阅读 · 2 评论 -
flink 广播变量
使用过spark的人都知道广播变量这个概念。广播变量相当于一个共享变量,将一个小数据集复制分发到每个task,task直接从本地读取。flink中有两种广播变量,一种静态的广播变量,一种实时动态的广播变量。 静态广播变量示例: 使用场景如: 黑名单判断,将黑名单广播出去进行数据匹配。public class FlinkBroadcast2 { pub...原创 2019-11-05 18:31:24 · 2258 阅读 · 3 评论 -
flink异步IO
使用flink进行数据处理时,我们经常会需要跟外部系统交换,比如查询mysql。每一条数据都访问一次外部系统,等待响应,再往下执行,这种等待会占用很大一部分数据处理时间。为此flink提供了异步IO API,异步访问外部系统,并行处理,同时响应,节省访问等待时间。采用flink做实时数仓基本会使用异步io api去join维表。下面通过一个简单的demo介绍下异步IO API...原创 2019-11-05 18:31:08 · 480 阅读 · 0 评论 -
hdfs数据磁盘类型设置
储存类型:ARCHIVE:存档 ,存冷数据DISK: 硬盘SSD: ssd盘RAM_DISK: 内存hdfs设置dfs.storage.policy.enabled=true 默认为truedfs.datanode.data.dir=[DISK]/data1/dn/disk0, [SSD]/da...原创 2019-05-31 20:40:13 · 787 阅读 · 1 评论 -
flink session window案例及源码分析
Apache Flink(以下简称 Flink) 是一个天然支持无限流数据处理的分布式计算框架,在 Flink 中 Window 可以将无限流切分成有限流,是处理有限流的核心组件,现在Flink 中 Window 可以是时间驱动的(Time Window),也可以是数据驱动的(Count Window)。 Flink提供了几种通用的 WindowAssigner:tumblin...原创 2019-04-29 18:13:26 · 728 阅读 · 0 评论 -
flink session window窗口合并
flink session window窗口的条件是元素间隔大于gap 还是 大于等于gap?session window是怎么进行合并的?还是通过官方示例:org.apache.flink.streaming.examples.windowing.SessionWindowing 进行分析:主要是修改了下数据源,首先添加8这条数据执行结果如下:从结果可以看出 b 都在同一个窗...原创 2019-04-30 18:12:47 · 1405 阅读 · 0 评论 -
cloudera manager 集成 livy zeppelin
https://github.com/alexjbush/livy_zeppelin_cdh_csd_parcels下载编译parcels文件1.将编译好的csd,parcels 包放到cm csd文件夹和 httpd服务目录下2.添加用,组groupadd -r zeppelinuseradd -r -g zeppelin zeppelingroupadd -r livy...原创 2019-05-14 20:25:56 · 443 阅读 · 0 评论 -
hdfs sentry acl权限同步失效
集群开启hdfs sentry acl权限同步,一直很稳定的运行,某天突然出现hive权限问题,hive通过hs2 访问的不受影响,hive cli访问全部失败(不推荐使用hive cli 命令),其它任务访问hive表路径失败,用hdfs getfacl命令查看,权限同步目录acl全部失效,集群基本无法访问,查看sentry,hive正常, 日志都没有异常信息,查看namenode日志出...原创 2019-05-10 18:15:32 · 2687 阅读 · 0 评论 -
hbase 客户端连接超时异常
hbase客户端连接 hbase server超时主要原因:1. hbase server 网络不通2. hbase client 端没有配置hbase host,zookeeper host第一种情况很少发生,一般很容易发现。第二种情况经常发生,大家经常忘记配置host,启动hbase 客户端程序,发现日志程序卡住,日志输出停住,等半天没反应或报个超时。...原创 2019-05-15 21:08:27 · 2379 阅读 · 0 评论 -
hive 创建临时函数异常分析
一个java项目使用jdbc连接池连接hiveserver2 创建临时函数,第一次执行成功,第二次执行失败,返回错误如下:ERROR org.apache.hadoop.hive.ql.Driver: [HiveServer2-Handler-Pool: Thread-82]: FAILED: SemanticException No valid privilegesUser ...原创 2019-05-17 18:22:59 · 2574 阅读 · 0 评论 -
hive orc Timestamp类型字段比较大小异常
最近工作中同事使用 如下sql查询一张hive orc格式的表select begin_time from log_a where dt = '20190418' and begin_time > unix_timestamp('2019-04-18 00:00:00')出现错误,日志如下:2019-04-19 12:01:38,135 INFO [IPC Serve...原创 2019-04-20 09:38:18 · 2443 阅读 · 0 评论 -
kafka进程退出问题分析
kafka一直使用的是0.8版本,比较老,打算升级到2.1版本。最近一直在测试,发现有个节点kafka server进程莫名的自动挂了,其它kafka server正常。查看日志,没有异常错误日志输出,在日志中发现了kafka shut down 原因是接收到了SIGHUP停止的信号。日志如下:INFO Terminating process due to signal SIGHU...原创 2019-04-28 21:34:51 · 4938 阅读 · 1 评论 -
hive无法删除分区
hive中执行 ALTER TABLE xxxDROP IF EXISTS PARTITION (xx='xxx') 删除某表分区时,一直没有执行,卡住不动。其它表执行没有问题。info级别日志没什么输出,日志一直停留在那。在hive命令行使用hive --hiveconf hive.root.logger=DEBUG,console 启动客户端开启debug模式,再次执行删除分区语句,输...原创 2019-04-17 21:09:57 · 2539 阅读 · 0 评论 -
hdfs balancer日志介绍
在cdh集群中使用命令行 hdfs balancer -threshold 5 开启动态平衡输出日志,我们通常想知道这次动态平衡的数据量及进度信息,日志中包含了这些信息。日志信息如下:19/04/21 07:23:57 INFO balancer.Balancer: Need to move 150.29 TB to make the cluster balanced.Apr 21, ...原创 2019-04-21 07:49:34 · 1127 阅读 · 0 评论 -
Hadoop上传文件报错could only be written to 0 of the 1 minReplication nodes.
把cloudera manager ,cdh 从6.1升级到6.2(升级方法跟cdh5的升级方式一样),首先很顺利的将cloudera manager,agent升级到了6.2,启动cdh6.1的集群发现hdfs有个文件写入验证异常,当时没太关注,直接开始升级cdh,cdh升级步骤执到yarn时出现mr framework包无法上传到hdfs 错误日志如下:File://xxxxxc...原创 2019-04-16 21:53:53 · 9232 阅读 · 0 评论 -
hive orc异常
解决:this is due to the memory required by orc writer while writing orc files, you can limit the memory use by tweaking the value of orc.compress.size which is of 256KB by default.I am not sure abou...原创 2019-04-09 18:42:22 · 568 阅读 · 0 评论 -
CDH异构系统部署(1)
工作中大数据集群可能会使用各种型号服务器安装不同的操作系统,今天介绍下Cloudera manager管理的cdh集群在不同操作系统的服务器上安装升级系统版本:centos6.5, centos7.4CM: 5.11.0, 5.14.4 el6 ,el7版本CDH版本:5.11.1, 5.14.4 el6, el7版本服务器:192.166.12.201, 192.166.12....原创 2019-04-03 18:26:34 · 450 阅读 · 0 评论 -
CDH异构操作系统下升级
CDH异构操作系统下升级1. 配置两个系统版本的parcel 源2. 点击下载,从图可以看到默认只会下载parcel配置最后一个el7版本,el6的没下载导致失败3. 将el6和el7d电话顺序重新点击下载4. 显示正常,当系统版本不同时需轮换顺序进行两次下载5. 分发6. 点击升级,根据向导一步步操作即可,参...原创 2019-04-08 20:30:12 · 298 阅读 · 0 评论 -
BIGDL ON CDH
BigDL是一种基于Apache Spark的分布式深度学习框架安装下载源码 https://github.com/intel-analytics/BigDL编译: CDH集群安装了spark2.2,采用spark2.2编译。执行如下命令安装maven(apache maven官网下载解压配置环境变量即可,此处省略) 进入/home/bigdl/BigDL-mas...原创 2019-04-02 18:24:20 · 267 阅读 · 0 评论 -
大数据调度系统
大数据平台离不开调度系统。大数据平台工作流系统主要分为两类: 1.静态工作流执行列表 2.动态工作流执行列表 静态工作流根据作业计划提前生成并持久化任务执行列表,代表有:oozie , azkaban,airflow。 oozie , azkaban,airflow 这三个调度系统都是基于文件配置固化工作流形成DAG。oozie使用xml文件描述任务...原创 2019-05-30 21:03:37 · 2826 阅读 · 0 评论 -
datanode节点磁盘数据均衡
apache hadoop3.x后新增了节点磁盘数据均衡功能,cdh在5.8后已加入该功能。在没有该功能时,我们一般都会通过写盘策略来保证均衡,目前Hadoop支持两种volume选择策略:round-robin 和 available space,我们可以通过 dfs.datanode.fsdataset.volume.choosing.policy 参数来设置。 在cdh中启用...原创 2019-05-30 21:39:15 · 1170 阅读 · 0 评论 -
hue shell执行impala shell
在hue shell中执行impala shell ,配置如下:impala.sh 脚本如下:#!/bin/bashimpala-shell -i 192.168.15.171:21000 -q "show tables;"运行报错如下:根据错误日志提示,impala shell脚本默认会在/home下设置工作目录,而/home没有权限。修改脚本:#!/bin...原创 2019-07-26 00:23:06 · 698 阅读 · 0 评论 -
kudu 添加master
kudu 添加master节点不像其他大数据组件直接添加即可,操作比较复杂,步骤如下:1.kudu添加master节点,集群不可用2.Master节点数为奇数3.在已存在master节点查看wal和数据目录,rpc_bind_addresses 端口,默认7051 sudo -u kudu kudu fs dump uuid --fs_wal_dir=<mast...原创 2019-06-18 18:32:21 · 3237 阅读 · 0 评论 -
自研大数据分析平台任务提交方式
大部分有实力的公司大数据平台发展到一定阶段,都会想着在大数据平台上做一层整合开发一个统一的对外服务平台,降低用户的使用门槛,提高开发效率。要做一个大数据服务平台对平台研发人员的能力有着较高的要求,目前这块做的好的都是一些大厂。今天我们简单谈下自研大数据分析平台任务提交方式:1. 使用服务自带的shell 命令提交。这是大多数项目使用的方法,简单,高效,大数据平台软件升级自兼容。开源项目有...原创 2019-06-10 21:34:24 · 428 阅读 · 0 评论 -
livy_zeppelin_cdh_csd_parcels项目编译安装的zeppelin重启配置丢失
前面介绍过通过https://github.com/alexjbush/livy_zeppelin_cdh_csd_parcels编译安装zeppelin。zeppelin安装完,配置用户角色,新建spark任务运行,一切看似都很完美。某天要修改个配置重启zeppelin登录发现以前所有配置都丢失了,又重新配上,如此反复让人很崩溃。排查丢失原因,只有在重启后才会丢失,可能是重启命令执行了某项...原创 2019-06-14 23:09:01 · 511 阅读 · 0 评论 -
cdh6.1,cdh6.2 hue sqoop组件提交异常
在cdh6.1,6.2中hue 中创建sqoop 工作流提交失败。这是个bug在hue4.4中修复了。 解决方案: 1.升级hue至4.4 2.下载https://github.com/cloudera/hue/blob/release-4.4.0/desktop/libs/liboozie/src/liboozie/submission2.py文件替换cdh6...原创 2019-06-03 18:15:25 · 904 阅读 · 1 评论 -
kerberos环境下hive server2使用负载均衡异常
hive server2在集群启用kerberos 环境下使用 haproxy 进行负载均衡时,会出现连接hive server2失败。异常产生的原因是hive server2实例DBTokenStore缓存的票据信息没有共享给其它实例,每个实例是独立的,客户端从一个hive server2获取票据,查询时可能访问的就是另外一个hive server2实例,导致失败。在这里有人可能就会想到用 i...原创 2019-06-08 21:48:05 · 707 阅读 · 1 评论 -
hbase 内存优化
hbase on line服务gc停顿时间必须ms级,java gcd stop the world 时间太长会影响线上实时查询。hbase官方推荐hregionserver堆大小15-24g,堆过大会增加full gc的时间,超过这个限制需要重新调整GC以下是调优方案。32GB heap, -XX:G1NewSizePercent=3 64GB heap, –XX:G1NewSiz...原创 2019-06-02 22:00:16 · 453 阅读 · 1 评论 -
Spark Structured Streaming 实时解析mr 任务
Structured Streaming 是spark2.x后引入的实时计算框架。spark一直以来都是以微批来处理数据的,一直做不到毫秒级的实时处理,structured streaming最开始引入时也是用的微批处理数据,spark2.3后面引入了一个新的处理模式真正实现了实时计算,可以实现毫秒级的处理速度。structured streaming 实现了exactly-once ,...原创 2019-06-13 21:07:39 · 492 阅读 · 0 评论 -
cloudera manager agent安装异常--Requires: libmysqlclient.so.18
cloudera manager agent安装失败日志如下:--> Processing Dependency: libmysqlclient.so.18(libmysqlclient_18)(64bit) for package: 2:postfix-2.10.1-6.el7.x86_64--> Processing Dependency: libmysqlclie...原创 2019-06-07 21:06:56 · 649 阅读 · 0 评论 -
kylin2.x集成 cdh5.11 异常
kylin 集成cdh5.11.1 运行报错日志如下:2017-08-10 15:26:25,293 FATAL [main] org.apache.hadoop.mapred.YarnChild: Error running child : java.lang.NoClassDefFoundError: org/apache/hadoop/hive/serde2/typeinfo/Ty...原创 2019-06-06 20:51:28 · 159 阅读 · 0 评论 -
hbase RIT常用解决办法
相信维护过hbase的人都遇到过table进入RIT状态,RIT状态都是hbase管理者不愿意见到的。RIT是什么?可以看下这篇文章:https://www.jianshu.com/u/ad4d39659223,介绍的很详细。 一般遇到hbase table 进入RIT怎么解决: 1.当在hbase webui看到某个表某个regin进入RIT时,可以重启该regin所在节...原创 2019-06-01 15:26:06 · 4597 阅读 · 0 评论 -
hive动态分区过多异常
hive 执行动态插入分区sql 报如下错误:2019-05-28 16:04:40,381 WARN [Thread-1018] org.apache.hadoop.hdfs.DFSClient: Abandoning BP-618233350--1497874683119:blk_1607145278_533526274 2019-05-28 16:04:40,382 WARN [Th...原创 2019-05-29 18:16:39 · 2136 阅读 · 0 评论 -
hive MSCK 修复分区
在日常工作中会遇到基于某种原因hive 表有很多历史数据按目录存放但并没有添加到hive表中,用户需要历史数据需重新修复添加分区,命令如下:MSCK REPAIR TABLE table_name;为了让 MSCK 命令工作,分区的目录名必须是 /partition_name=partition_value/结构的,否则将无法添加分区。这时候你必须使用add partition命令了...原创 2019-06-12 22:14:48 · 3671 阅读 · 0 评论 -
hdfs挂载
hdfs可以当做本地磁盘挂载到服务器上,操作hdfs就跟操作本地目录一样。hdfs有两种挂载方式:1. nfs 挂载 在cm 管理台,hdfs 添加角色nfs 启动服务挂载目录:mount -t nfs -o vers=3,proto=tcp,nolock,noacl,sync nfsserver:/ /hdfs_nfs_mount卸载目录umo...原创 2019-06-05 20:44:00 · 1701 阅读 · 0 评论 -
hive连接数异常升高,线程卡死异常分析
最近使用hue 查询hive 出现超时,sql提交无反应。cdh监控发现HS2连接数直线上升,cpu使用率升高一直占用cpu,如下图:使用netstat命令查看端口连接状态,发现端口出现大量FIN_WAIT2的状态,重启hive后恢复正常。开始怀疑是网络丢包问题,检查服务器上其它进程正常,隔段时间问题重新,怀疑是hive服务本身卡死,端口状态如图:jstack打...原创 2019-05-28 12:37:23 · 4346 阅读 · 0 评论 -
cdh启用kerberos后yarn logs命令查不出日志
最使用的堡垒机出现问题,操作都切换到新堡垒机上。新堡垒机无法跳转页面,用户无法在yarn webui 上查看任务日志,在客户机上使用 yarn logs -applicationId 命令无法查出日志。 用户执行 yarn logs -applicationId xxx 日志如下: 在未启用kerberos时我们可以使用任何用户查看任何用户跑的任务,启用kerbe...原创 2019-03-28 18:25:03 · 1107 阅读 · 2 评论 -
head服务连接安装search guard elasticsearch5.0集群
elasticsearch5.0后head不在以插件的形式安装在elasticsearch里,而是以单独的服务安装。elasticsearch 安装serach guard插件后head连接不上elasticsearch集群。 日常运维通过head插件查看信息还是比较方便,下面介绍head连接安装search guard插件的es集群。软件版本 elasticsearc...原创 2019-04-01 21:51:31 · 291 阅读 · 1 评论 -
sqoop使用hcatalog抽取数据异常
sqoop使用hcatalog抽取数据到hive,开启hdfs sentry权限同步后sqoop hcatalog脚本执行任务失败,错误日志如下:Job commit failed: org.apache.hive.hcatalog.common.HCatException : 2006 : Error adding partition to metastore. Cause : org...原创 2019-04-10 18:16:53 · 3438 阅读 · 0 评论