自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

猫不夜行的博客

静水留深

  • 博客(132)
  • 资源 (2)
  • 收藏
  • 关注

原创 Flink-1.11使用sql-client连接Hive-2.1.1

Flink-1.11使用sql-client连接Hive写在前面:Sql-client连接Hive是通过客户端的形式读写hive、测试相关语句的便捷方式,也是Flink搭建后测试操作Hive的第一步。前面因为版本问题一直没有进展,Flink在1.9.1版本中只面向Hive-1.2.1、Hive-2.3.4,而在不改变Hive版本的情况下,其他实现方式较为繁琐。而Flink-1.11版本中,已经...

2020-01-16 16:00:23 5672 2

原创 基于CDH-6.1.0编译flink-1.11-SNAPSHOT

基于CDH-6.1.0编译flink-1.11-SNAPSHOT编译准备环境:jdk-1.8maven-3.2.5下载flink-1.11安装包git clone --branch master https://github.com/apache/flink.git执行编译命令:mvn -T2C clean install -DskipTests -Dfast -Pinclud...

2020-01-16 15:55:30 4308 2

原创 Hadoop源码编译(Hadoop-2.7.0-src)

编译Hadoop-2.7.0-srcHadoop 2.7.0源代码(https://hadoop.apache.org/release/2.7.0.html)源码中的BUILDING.txt文件环境要求:Build instructions for Hadoop----------------------------------------------------------------...

2020-01-14 15:53:28 980

原创 Flink-1.9.1集成读写Hive(基于CDH 5.14.2集成成功)

写在前面本文记录了一次在CDH-5.14.2集群中(Hive 1.1.0-cdh5.14.2、Hadoop 2.6.0-cdh5.14.2)实现Flink-1.9.1集成读写Hive的过程,介绍了Flink自带sql-client连接Hive的方式以及java实现连接Hive的小demo。之前在CDH-6.1.0集群中因为版本的原因(Hive-2.1.1)没有执行成功。需要提醒的是Flink...

2020-01-13 16:30:49 3284

原创 CDH-5.14.2集群升级Hive-1.1.0至Hive-1.2.1

参考:CDH 5.1.5(parcels)集群中hive1.1.0升级到hive-1.2.1步骤全,升级hive元数据库,数据不丢失(亲测可用)操作步骤:下载hive-1.2.1-bin解压:[root@node01 ~]# cd /opt/software/[root@node01 software]# lsapache-hive-1.2.1-bin.tar.gz ...

2020-01-13 15:20:37 1622 3

原创 Flink-1.9.1集成读写Hive(基于CDH 6.1.0集成失败过程记录)

写在前面本文介绍了一次Flink-1.9.1集成读写Hive的过程,介绍了Flink自带sql-client连接Hive的方式以及java实现连接Hive的小demo。注意:Flink官方表示目前Flink集成Hive仅支持2.3.4和1.2.1两个版本,我在利用CDH-6.1.0-Hadoop-3.0.0(Hive-2.1.1)集群集成Hive过程中发现,无论配置2.3.4和1.2.1都会出...

2020-01-09 12:54:17 3899 2

原创 Maven编译过程中下载失败报错PKIX:unable to find valid certification path to requested target

在编译Flink源码时报如下错误,通过错误结合网上一些解决方法看得出来是因为访问网站需要证书验证,因此解决方法就是在网站上下载下来证书,再安装到jdk的jre/lib/security中。Downloading: https://repo.hortonworks.com/content/repositories/jetty-hadoop/com/microsoft/azure/azure-mgm...

2020-01-08 14:42:06 1407 1

原创 解决Maven本地库中存在依赖但还是报错找不到

在使用maven打包执行package的过程中,在下载依赖包的这一步报错:Failure to find org.pentaho:pentaho-aggdesigner-algorithm:pom:5.1.5-jhyde in https://repository.cloudera.com/artifactory/cloudera-repos/ was cached in the local r...

2020-01-08 14:27:33 16698 6

原创 CDH-5.14.2添加Hive

1. 分发mysql-connector添加mysql-connector-java.jar包到hive的lib目录下,并分发到每一个节点中(集群分发脚本)[root@node01 ~]# cp /opt/software/mysql-connector-java.jar /opt/cloudera/parcels/CDH-5.14.2-1.cdh5.14.2.p0.3/lib/hive/li...

2020-01-03 22:32:42 1326

原创 基于CDH-5.14.2编译Flink1.9.1的安装包

准备工作maven3jdk1.8CDH-5.14.2下载源码包[root@node01 ~]# cd /opt/software/[root@node01 software]# wget http://archive.apache.org/dist/flink/flink-1.9.1/flink-1.9.1-src.tgz[root@node01 software]# t...

2020-01-03 09:55:19 3765 10

原创 CentOS7安装Maven3

下载安装文件cd /opt/software/wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz解压安装tar -zxf apache-maven-3.3.9-bin.tar.gz -C /opt/module/cd /opt...

2020-01-03 09:42:58 356

原创 解决ntp时间同步在重启后失效

虽然配置了开机自动启动,但是在系统重启后,ntp时间仍然同步失效。查看ntp服务状态:[root@hadoop1 etc]# service ntpd statusRedirecting to /bin/systemctl status ntpd.service● ntpd.service - Network Time Service Loaded: loaded (/usr/li...

2019-12-05 11:58:17 10789 1

原创 解决VMware在系统突然断电后重启黑屏启动不了

在学习大数据过程中,基本上都需要自己在本地用VMware搭虚拟集群,但是最近系统更新后非常不稳定,有时出现蓝屏被迫重启,重启后再次打开虚拟机就没有反应了,结合网上网友的方法,总结以下几步:重启后首先找到虚拟机文件夹目录,删除目录下所有的.lck文件和临时.vmem文件:(注意:在VMware没有打开的情况下删除。CentOS7_node02-706892f5.vmem文件不要删,只删除VMw...

2019-12-03 19:59:34 3409 2

原创 Kafka如何保证数据可靠性

Kafka的数据可靠性保证副本数据同步策略ISR机制ack应答机制故障处理:HW、LEO1. 副本数据同步策略两种副本数据同步策略(Kafka选择第二种)方案优点缺点半数以上完成同步,就发送ack延迟低选举新的leader时,容忍n台节点的故障,需要2n+1个副本全部完成同步,才发送ack选举新的leader时,容忍n台节点的故障,需要n+1个副...

2019-11-26 13:55:36 2532

原创 Kafka Exactly Once

Kafka一致性级别:名称设置一致性At Least Onceacks=-1保证数据不丢失,但不能保证数据不重复At Most Onceacks=0保证数据不重复,但不能保证数据不丢失Exactly Onceacks=-1 + enable.idompotence=true精准一致性,保证数据生产不丢失不重复0.11版本的Kafka引入了一项重...

2019-11-26 13:50:40 482

原创 CDH5.14安装Spark报错:Error: JAVA_HOME is not set and could not be found.

安装spark过程报错:Error: JAVA_HOME is not set and could not be found.排查java是否装好:[root@node02 module]# java -versionjava version "1.8.0_91"[root@node02 module]# exportdeclare -x CLASSPATH=".:/*/*...

2019-11-26 13:06:41 1055

原创 将博客搬至CSDN

最近自己记笔记使用MarkDown感觉特别棒,不过同步到博客园上发现MarkDown编辑器功能不是很完善,相比CSDN上MarkDown包括其他一些功能更简洁、好用些,于是打算把博客搬到CSDN。...

2019-11-23 11:12:00 125

原创 解决远程连不到CentOS7虚拟机或ifconfig中没有ens33

在使用Secure CRT连接虚拟机连接不上,可能之前虚拟机关闭不当登到虚拟机的中断使用ifconfig发现没有ens33猜测是CentOS图形管理中的NetworkManager接管了网络配置, 执行以下命令关闭、重启网络服务:ifconfig ens33 upsystemctl stop NetworkManagersystemctl disable Network...

2019-11-19 14:16:00 4775 9

原创 Windows本地运行调试Spark或Hadoop程序失败ERROR util.Shell: Failed to locate the winutils binary in the hadoop...

报错内容ERROR util.Shell: Failed to locate the winutils binary in the hadoop binary pathjava.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.解决方法1. 下载wind...

2019-11-19 10:26:00 350

原创 CentOS7安装Git-2.22.1

1.Git:分布式版本控制系统(最初用于Linux),每个人的电脑上都是一个完整的版本库,具有强大的分支管理。 自己可以在脱机环境查看开发的版本历史 多人开发时如果充当中央仓库的Git仓库挂了,任何一个开发者的仓库都可以作为中央仓库进行服务 2.对比SVN:集中式版本控制系统 所有人都将代码提交至“中央仓库” 一旦服务器有问题,就算找到一个最新的代码上...

2019-10-27 20:43:00 251

原创 CentOS7安装SVN1.9.12

检查卸载原有的svn svn --version # 检查是否原有svnyum remove svn # 卸载原有svn 安装依赖: apr-1.6.5mkdir /opt/software/svnpackagecd /opt/software/svnpackagewget http://mirror.bit.edu.cn/apache/ap...

2019-10-27 17:05:00 378 1

原创 Storm本地启动拓扑报错Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/storm/topology...

问题描述:Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/storm/topology/IRichSpoutat java.lang.Class.forName0(Native Method)at java.lang.Class.forName(Class.java:264)at com.i...

2019-09-24 21:47:00 427

原创 Storm消费Kafka提交集群运行

1.创建拓扑,配置KafkaSpout、BoltKafkaTopologyBasic.java:package org.mort.storm.kafka;import org.apache.kafka.clients.consumer.ConsumerConfig;import org.apache.kafka.clients.consumer.ConsumerRecord;...

2019-09-24 18:12:00 340 1

原创 Storm提交Topology报错:Found multiple defaults.yaml resources.

Storm提交Topology运行方式分为本地和集群运行两种,其中集群运行需要将程序打包并把jar包复制到集群,通过以下方式执行:bin/storm jar /opt/run/storm-demo-1.0-SNAPSHOT-jar-with-dependencies.jar org.mort.storm.kafka.KafkaTopologyBasicbin/storm jar [ja...

2019-09-24 17:45:00 358

原创 OpenTSDB在HBase中的底层数据结构设计

0.时序数据库时间序列(Time Series):是一组按照时间发生先后顺序进行排列的数据点序列,通常一组时间序列的时间间隔为一恒定值(如1秒,5分钟,1小时等)。时间序列数据可被简称为时序数据。实时监控系统所收集的监控指标数据,通常就是时序数据 。时序数据具有如下特点:每一个时间序列通常为某一固定类型的数值 数据按一定的时间间隔持续产生,每条数据拥有自己的时间戳信息 通常只会不...

2019-09-06 16:03:00 298

原创 Java类初始化和实例初始化过程

1.类初始化过程一个类要创建实例需要先加载并初始化该类 main方法所在的类需要先加载和初始化 一个子类要初始化需要先初始化父类 一个类初始化就是执行<client>()方法(编译器生成的字节码) <client>()方法由静态类变量显示赋值代码和静态代码块组成 类变量显示赋值代码和静态代码块代码从上到下顺序执行 <client>()方法只执行...

2019-09-05 20:42:00 75

原创 OpenTSDB查询和写入毫秒级数据

由于OpenTSDB没有支持Java的SDK进行调用,所以基于Java开发OpenTSDB的调用将要依靠HTTP请求的方式进行。1.毫秒级数据写入/api/put:通过POST方式插入JSON格式数据,将毫秒级的时间戳赋值给timestamp参数即可,JSON格式:{ "metric":"self.test", "timestamp":1567675709879...

2019-09-05 18:17:00 630

原创 Linux进程后台执行nohup(OpenTSDB后台运行方法)

1.问题描述OpenTSDB执行./tsdb tsd启动之后,占有控制台执行并且Ctrl+C后就退出了,关闭控制台同样会退出。2.解决方法(在/opt/module/opentsdb-2.3.1/build/目录下)nohup ./tsdb tsd > /dev/null 2>&1 &其中:  nohup : 不挂断运行  ./tsdb t...

2019-09-05 11:29:00 386

原创 CAS导致的ABA问题及解决:时间戳原子引用AtomicReference、AtomicStampedReference

1.CAS导致ABA问题:CAS算法实现一个重要前提需要取出内存中某时刻的数据并在当下时刻比较并交换,那么在这个时间差中会导致数据的变化。比如:线程1从内存位置V中取出A,这时线程2也从V中取出A,线程2进行了一些操作将值改成了B,然后线程2又将V的数据改回A;此时线程1进行CAS操作发现内存中仍然是A,然后线程1操作成功。尽管线程1的CAS操作成功,但是不代表这个过程就是没有问题的...

2019-09-04 18:06:00 405

原创 Atomic实现原子性源码分析:CAS(比较并交换)、Unsafe类

1.CAS:比较并交换(Compare And Swap),是Unsafe类中的一条CPU系统原语,原语的执行必须是连续的,在执行过程中不允许被中断,即CAS是一条CPU的原子指令,不会造成数据不一致问题。类似:Atomic中的compareAndSet()方法如果期望值和真实值相同,本次操作成功,如果不同则失败,这个过程是原子的AtomicInteger atomicIn...

2019-09-04 17:01:00 130

原创 NameNode格式化后HBase创建新表提示旧表已存在:table already exists

1.问题出现:在格式化NameNode后,集群上安装的OpenTSDB的表(存在hbase中)都没有了,重新运行OpenTSDB预创建表步骤报错显示table already exists2.原因:hadoop重新格式化后,hdfs上没有了数据,在hbase中新建表却提示Table already exists。是因为以前建过同名的表,虽然HDFS上和Hbase相关的东西都已经删除了...

2019-09-02 21:56:00 971

原创 多次NameNode执行format后DataNode启动不了解决方案

1.问题执行start-dfs.sh后在进程中查看jps,发现NameNode启动,但DataNode没有2.原因在失败的.log文件中看到datanode的clusterID 和 namenode的clusterID 不一致原因可能是多次Hadoop namenode -format导致clusterID不一致3.解决方法1)先去hadoop路径下的配置文件hdfs-s...

2019-09-02 18:23:00 538

原创 Zookeeper群起脚本启动失败及查看状态出现:Error contacting service. It is probably not running...

1.问题:群起脚本启动后查看jps没有出现:QuorumPeerMainZookeeper正常启动但是群起脚本查状态出现:Error contacting service. It is probably not running错误ZooKeeper JMX enabled by defaultUsing config: /opt/module/zookeeper-3.4.10/...

2019-09-02 12:30:00 311

原创 Spark中的术语图解总结

参考:http://www.raincent.com/content-85-11052-1.html1、Application:Spark应用程序指的是用户编写的Spark应用程序,包含了Driver功能代码和分布在集群中多个节点上运行的Executor代码。Spark应用程序,由一个或多个作业JOB组成,如下图所示:2、Driver:驱动程序Driver负责运行Appl...

2019-08-24 18:49:00 227

原创 Spark架构角色及基本运行流程

1. 集群角色Application:基于spark的用户程序,包含了一个Driver program 和集群中多个Executor Driver Program:运行application的main()函数并自动创建SparkContext。Driver program通过一个SparkContext对象来访问Spark,通常用SparkContext代表Driver。 Spark...

2019-08-24 17:03:00 193

原创 HashMap中确定数组位置为什么要用hash进行扰动

HashMap数据存储的过程先根据key获得hash值,通过(n - 1) & hash判断当前元素存放的位置(这里的 n 指的是数组的长度),如果当前位置存在元素的话,就判断该元素与要存入的元素的 hash 值以及 key 是否相同,如果相同的话,直接覆盖,不相同就通过拉链法解决冲突。其中,jdk1.8中扰动函数hash的源码:static final int hash...

2019-08-19 22:22:00 380

原创 Java中HashMap扩容机制思考

1.HashMap在什么条件下扩容判断HashMap的数组Size大小如果超过loadFactor*capacity,就要扩容。相关的类属性: capacity:当前数组容量,始终保持 2^n,可以扩容,扩容后数组大小为当前的 2 倍。 loadFactor:负载因子,默认为 0.75 loadFactor加载因子是控制数组存放数据的疏密程度,loadFactor越...

2019-08-19 21:54:00 134

原创 HashMap底层为什么一定用数组

HashMap源码数据结构:Entry[] table = new Entry[capacity];其中,Entry就是一个链表节点。如果将数组替换成LinkedList是否可行?如下:List<Entry> table = new LinkedList<Entry>();将数组替换成LinkedList是可以的,但是HashMap选用数组...

2019-08-19 21:18:00 1615

原创 大数据平台CentOS7+CDH5.12.1集群搭建

1.CM(Cloudera Manager)介绍1.1 简介Cloudera Manager是一个拥有集群自动化安装、中心化管理、集群监控、报警功能的一个工具,使得安装集群从几天的时间缩短在几个小时内,运维人员从数十人降低到几人以内,极大的提高集群管理的效率。对比Apache / CDH / HDP:(1)Apache:运维麻烦,组件间兼容性需要自己调研。(一般大厂使用,技术实力...

2019-08-16 21:29:00 280

原创 部署CM集群首次运行报错:Formatting the name directories of the current NameNode.

1. 报错提示Formatting the name directories of the current NameNode. If the name directories are not empty, this is expected to fail.2. 问题原因之前的namenode格式化了,所以这次不能格式化,需要把原来格式化的删除。3. 解决方法1)在/...

2019-08-16 20:14:00 111

全国计算机三级网络技术教程

全国计算机三级网络技术教程

2014-09-09

单片机原理及应用(张毅刚)

由张毅刚主编,高等教育出版社出版的单片机原理及应用

2014-03-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除