自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

王傲旗的大数据之路

微信公众号:大数据面试宝典 加入学习群和领取免费的资料

  • 博客(40)
  • 收藏
  • 关注

原创 Hadoop源码剖析08-java远程过程调用(二)

java的RMI需要实现remote接口下面我来演示一个 规范的 开发RMI接口的方法规范package com.czxy.mapreduce.demo01;import java.rmi.RemoteException;import java.rmi.Remote;/** * @author [email protected] * @version v 1.0 * @da...

2019-12-31 22:29:06 4129

原创 Hadoop源码剖析07-远程过程调用(一)

为什么要用远程过程调用作为典型的分布式系统,Hadoop中各个实体间存在着大量的交互,远程过程调用让用户可以像调用本地方法一样调用另外一个应用程序提供的服务,而不必设计和开发相关的信息发送、处理和接收等具体代码,是一种重要的分布式计算技术,它提高了程序的互操作性,在Hadoop的实现中得到广泛的应用.RPC原理简要地说,RPC就是允许程序调用位于其他机器上的过程(也可以是同一台机...

2019-12-30 22:49:13 4184

原创 Hadoop源码剖析06-Snappy压缩算法

什么是snappy?snappy的前身是Zippy,Google表示该算法库对性能做了调整,针对64位x86处理器进行了优化并在英特尔酷睿i7处理器单一核心上实现了至少每秒250MB的压缩性能和每秒500MB的解压缩性能,使用 New BSD协议开源setInput()方法setlnputO方法为压缩器提供数据,在做了一番输入数据的合法性检査后,先将finished标志位置为fals...

2019-12-29 10:11:22 5388

原创 hadoop源码剖析05-压缩与解压缩

什么是压缩一般来说,计算机处理的数据都存在一些冗余度,同时數据中间,尤其是相邻数据间存在着相关性,所以可以通过一些有別于原始编码的特殊编码方式来保存数据,使数据占用的存储空间比较小,这个过程一般叫压缩.和压缩对应的概念是解压编,就是将被压缩的数据从特殊编码方式还原为原始数据的过程.压缩广泛应用于海量数据处理中,对数据文件进行压缩,可以有效减少存储文件所需的空间,并加快数据在网络上或者到...

2019-12-29 09:40:34 4295

原创 hadoop源码剖析04-典型的Writable与序列化

1.java基本类型对应的writable类型目前java基本类型对应的writable封装都继承自 writableComparable他们是可比较的,同时,他们拥有get()和set()用来值的获取和设置2.可变的VintWritable与LongWritableVintWritable/** 一个WritableComparable,用于以可变长度格式存储的整数值。 *这...

2019-12-25 22:49:57 4158

原创 hadoop源码剖析03-hadoop的序列化与反序列化机制

序列化的作用作为一种持久化的格式一个对象被序列化以后,他的编码可以被存储到磁盘上,供以后反序列化用作为一种通讯数据格式序列化结果可以从一个正在运行的虚拟机,通过网络被传递到另一个虚拟机上作为一种拷贝丶克隆(clone)机制将对象序列化到内存的缓存区中,然后通过反序列化,可以得到一个对已存在的对象进行深拷贝的新对象在分布式数据处理中,主要使用以上提到的前两种功能:数...

2019-12-25 21:57:07 4145

原创 大数据项目实战之电信信号诊断(三)

目标:写个hiveJDBC脚本,将分区完成的数据加载到hive表中package com.czxy.telecom.mapreduce;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.LocatedFileStatu...

2019-12-24 20:05:09 4347

原创 大数据项目实战之电信信号诊断(二)

1.重新清洗数据目标:将数据按照年月日的结构,将相同日期的数据整理到一个文件。现有历史数据,一类数据在一个文件中。这个文件中包含了多天、多月、甚至多年的数据。生产系统中需要将这些数据分区存储,即一天一个分区。当天的数据放在当天的分区中。要实现这个功能需要将数据进行拆分。遍历数据中的每一条数据,判断每条数据的所属日期(数据中包含日期格式的数据),将相同日期的数据存放在一个文件中,文件名...

2019-12-24 20:02:10 4393

原创 hadoop源码剖析02-configuration类

configuration主要功能: 读取hadoop的配置文件setQuietmode() -->用来设置加载配置的模式,默认为true,在加载配置文件中不输出日志信息 public synchronized void setQuietMode(boolean quietmode) { this.quietmode = quietmode; }addR...

2019-12-23 22:33:27 4248

原创 hadoop源码剖析01

先不说刨不刨源码什么的,今天先来了解一下大数据的基本生态圈hadoop生态组成hadoop Commoncommon为hadoop提供了一些常用的工具类,如系统配置文件configuration,远程过程调用RPC,序列化机制,和hadoop抽象文件系统FileSystem等Avro数据序列化系统Zookeeper分布式的服务框架,解决分布式计算中一致性问题HDFS海量数据存...

2019-12-23 22:28:49 4116

原创 大数据项目实战之电信信号诊断(一)

1. 准备数据链接:https://pan.baidu.com/s/1Lzb5sYvJS7Z2RUupV306gw 提取码:pm16 复制这段内容后打开百度网盘手机App,操作更方便哦2. 离线数据入库2.1 将数据上传到linux上传至 /workspace/telecom/datas2.2 创建数据库与表数据库创建create database telecom;...

2019-12-23 11:41:54 5232 4

原创 Hbase常用的JavaAPI入门

package com.czxy.hbase.demo02;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.*;import org.apache.hadoop.hbase.client.*;import org.apache.hadoop.hbase.util.Bytes;impo...

2019-12-17 16:17:10 4286

原创 HBase的基础架构

先上一个图:这里我们可以看到 里面有4个角色客户端ZookeeperMasterRegion serverHMaster功能:监控RegionServer处理RegionServer故障转移处理元数据的变更处理region的分配或移除在空闲时间进行数据的负载均衡通过Zookeeper发布自己的位置给客户端RegionServer功能:负责存储HB...

2019-12-13 21:17:04 4915 1

原创 HBase 的5大特征(面试必问)

海量存储Hbase适合存储PB级别的海量数据,在PB级别的数据以及采用廉价PC存储的情况下,能在几十到百毫秒内返回数据。这与Hbase的极易扩展性息息相关。正是因为Hbase良好的扩展性,才为海量数据的存储提供了便利。列式存储这里的列式存储其实说的是列族存储,Hbase是根据列族来存储数据的。列族下面可以有非常多的列,列族在创建表的时候就必须指定。极易扩展Hbase的扩展性主要...

2019-12-13 21:05:07 4980

原创 HBase与Hadoop的关系丶与RDBMS对比

1.HBase与Hadoop的关系HDFS为分布式存储提供文件系统针对存储大尺寸的文件进行优化,不适用对HDFS上的文件进行随机读写直接使用文件数据模型不灵活使用文件系统和处理框架优化一次写入,多次读取的方式HBase提供表状的面向列的数据存储针对表状数据的随机读写进行优化使用key-value操作数据提供灵活的数据模型使用表状存储,支持MapReduce,依赖HD...

2019-12-13 20:57:38 6009

原创 Hbase快速入门

1、HBase基本介绍简介:hbase是bigtable的开源java版本。是建立在hdfs之上,提供高可靠性、高性能、列存储、可伸缩、实时读写nosql的数据库系统。它介于NoSQL和RDBMS之间,仅能通过主键(row key)和主键的range来检索数据,仅支持单行事务(可通过hive支持来实现多表join等复杂操作)。主要用来存储结构化和半结构化的松散数据。Hbase查询数据功...

2019-12-13 20:31:04 4938

原创 Hbase安装部署

注意:注意事项:HBase强依赖zookeeper和hadoop,安装HBase之前一定要保证zookeeper和hadoop启动成功,且服务正常运行第一步:下载对应的HBase的安装包所有关于CDH版本的软件包下载地址如下http://archive.cloudera.com/cdh5/cdh/5/HBase对应的版本下载地址如下 http://archive.cloude...

2019-12-13 20:16:43 4967

原创 Zookeeper的选举机制

zookeeper默认的算法是FastLeaderElection,采用投票数大于半数则胜出的逻辑。概念服务器ID比如有三台服务器,编号分别是1,2,3。编号越大在选择算法中的权重越大。选举状态LOOKING,竞选状态。FOLLOWING,随从状态,同步leader状态,参与投票。OBSERVING,观察状态,同步leader状态,不参与投票。LEADING,领导者状态...

2019-12-09 21:46:51 4835 1

原创 ZooKeeper常用API

org.apache.zookeeper.ZookeeperZookeeper 是在Java中客户端主类,负责建立与zookeeper集群的会话,并提供方法进行操作。org.apache.zookeeper.WatcherWatcher接口表示一个标准的事件处理器,其定义了事件通知相关的逻辑,包含KeeperState和EventType两个枚举类,分别代表了通知状态和事件类型,同...

2019-12-09 21:33:45 4839

原创 ZooKeeper Watcher(监听机制)

ZooKeeper提供了分布式数据发布/订阅功能,一个典型的发布/订阅模型系统定义了一种一对多的订阅关系,能让多个订阅者同时监听某一个主题对象,当这个主题对象自身状态变化时,会通知所有订阅者,使他们能够做出相应的处理。ZooKeeper中,引入了Watcher机制来实现这种分布式的通知功能。ZooKeeper允许客户端向服务端注册一个Watcher监听,当服务端的一些事件触发了这个Watche...

2019-12-09 17:30:51 6344

原创 Zookeeper数据模型

ZooKeeper的数据模型,在结构上和标准文件系统的非常相似,拥有一个层次的命名空间,都是采用树形层次结构,ZooKeeper树中的每个节点被称为—Znode。和文件系统的目录树一样,ZooKeeper树中的每个节点可以拥有子节点。但也有不同之处:1.Znode兼具文件和目录两种特点。既像文件一样维护着数据、元信息、ACL、时间戳等数据结构,又像目录一样可以作为路径标识的一部分,并可以具有子...

2019-12-09 17:14:17 4732

原创 Zookeeper常用Shell命令

1.连接Zookeeper使用zkCli.sh命令 前提是已经添加到了环境变量中了zkCli.sh –server 节点ip2.Shell基本操作2.1增语法格式create [-s] [-e] path data acl-s 创建顺序节点-e 创建临时节点(不加则是永久节点)data 数据acl权限创建顺序节点:create -s /test01 aaa...

2019-12-09 16:16:06 5044

原创 Zookeeper入门(看这一篇就够了)

1.概述Zookeeper是一个分布式协调服务的开源框架。主要用来解决分布式集群中应用系统的一致性问题。ZooKeeper本质上是一个分布式的小文件存储系统。提供基于类似于文件系统的目录树方式的数据存储,并且可以对树中的节点进行有效管理。从而用来维护和监控你存储的数据的状态变化。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理。2.ZooKeeper特性1.全局数据一致:集...

2019-12-09 15:37:52 6421

原创 Zookeeper 安装部署教程

1.首先你得具备一个安装包链接:https://pan.baidu.com/s/1uSLSeBL9m3XtgIu4i3NTfg 提取码:ux702.上传 解压tar -zxvf zookeeper-3.4.5-cdh5.14.0.tar.gz -C /export/servers/3.修改环境变量(注意:3台zookeeper都需要修改)编辑新的文件vim /etc/pro...

2019-12-07 11:50:49 4893

原创 Hue集成MySQL

注意:需要把mysql的注释给去掉。 大概位于1546行修改hue.ini进入目录cd /export/servers/hue-3.9.0-cdh5.14.0/desktop/confvim hue.ini 修改以下参数[[[mysql]]] nice_name="My SQL DB" engine=mysql host=node-1 ...

2019-12-07 11:18:44 4760

原创 Hue 集成Hive

如果需要配置hue与hive的集成,我们需要启动hive的metastore服务以及hiveserver2服务(impala需要hive的metastore服务,hue需要hvie的hiveserver2服务)。修改hue的配置文件进入配置文件目录 编辑文件cd /export/servers/hue-3.9.0-cdh5.14.0/desktop/conf/vim hue.in...

2019-12-07 10:56:53 5009

原创 Hue 集成 Yarn

1.修改hue的配置文件(hue.ini)修改以下内容[[yarn_clusters]] [[[default]]] resourcemanager_host=node-1 resourcemanager_port=8032 submit_to=True resourcemanager_api_url=http://node-1:80...

2019-12-07 10:13:36 5026

原创 Hue集成HDFS教程

注意:注意修改完HDFS相关配置后,需要把配置scp给集群中每台机器,重启hdfs集群。安装教程看我前面的博客.下面开始集成HDFS教程修改hadoop的配置文件进入hadoop配置文件目录cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/修改core-site.xml配置<!--允许通过httpfs方式访问...

2019-12-06 21:38:41 5150

原创 Apache Hue 安装部署

先获取一个安装包百度云盘下载链接:https://pan.baidu.com/s/11HrueBn92GPJbiBSuN29QQ 提取码:h48b官网下载Hue的压缩包的下载地址:http://archive.cloudera.com/cdh5/cdh/5/我们这里使用的是CDH5.14.0这个对应的版本,具体下载地址为http://archive.cloudera.com/c...

2019-12-06 20:43:14 5142 2

原创 Apache Hue 入门(看这一篇就够了)

Apache Hue介绍1.Hue是什么HUE=Hadoop User ExperienceHue是一个开源的Apache Hadoop UI系统,由Cloudera Desktop演化而来,最后Cloudera公司将其贡献给Apache基金会的Hadoop社区,它是基于Python Web框架Django实现的。通过使用Hue,可以在浏览器端的Web控制台上与Hadoop集群进行交互,...

2019-12-06 18:16:59 7009 4

原创 Azkaban(solo-server)模式部署

1.节点规划HOST角色node-12Web Server和Executor Server同一进程2. 开始安装1.创建一个新的安装目录mkdir /export/servers/azkaban2.解压tar -zxvf azkaban-solo-server-0.1.0-SNAPSHOT.tar.gz -C /export/servers/azkaban/...

2019-12-06 17:51:58 533

原创 azkaban入门看这一篇就够了

1.先来了解一下工作流工作流产生背景工作流(Workflow),指“业务过程的部分或整体在计算机应用环境下的自动化”。是对工作流程及其各操作步骤之间业务规则的抽象、概括描述。工作流解决的主要问题是:为了实现某个业务目标,利用计算机软件在多个参与者之间按某种预定规则自动传递文档、信息或者任务。一个完整的数据分析系统通常都是由多个前后依赖的模块组合构成的:数据采集、数据预处理、数据分析、数据展...

2019-12-06 17:11:44 364

原创 首次安装hue首次启动报错KeyError: “Couldn‘t get user id for user hue“

截图解决方案:首先要创建个普通用户,并给添加密码。如果密码给的过于简单,会给出提示,忽略就行,如下图:然后,我们要给刚才解压的hue文件改变拥有者属性,通过 chown -R 用户名 文件地址。如下图:最后,我们使用 su 命令切换用户,到hue文件夹下执行运行hue的命令就可以了。...

2019-12-06 10:59:35 5075

原创 Flume的负载均衡load balancer

负载均衡是用于解决一台机器(一个进程)无法解决所有请求而产生的一种算法。Load balancing Sink Processor 能够实现 load balance 功能,如下图Agent1 是一个路由节点,负责将 Channel 暂存的 Event 均衡到对应的多个 Sink组件上,而每个 Sink 组件分别连接到一个独立的 Agent 上示例配置,如下所示:![在此处我们通过三台...

2019-12-05 18:12:51 5001

原创 Flume配置高可用Flum-NG配置failover

在完成单点的Flume NG搭建后,下面我们搭建一个高可用的Flume NG集群,架构图如下所示:图中,我们可以看出,Flume的存储可以支持多种,这里只列举了HDFS和Kafka(如:存储最新的一周日志,并给Storm系统提供实时日志流)。角色分配Flume的Agent和Collector分布如下表所示:名称HOST角色Agent1node01Web Se...

2019-12-05 17:23:40 4780

原创 Flume实现两个agent级联采集

1.先附一张效果图第一个agent负责收集文件当中的数据,通过网络发送到第二个agent当中去,第二个agent负责接收第一个agent发送的数据,并将数据保存到hdfs上面去2.开始实操 先在两个节点安装FlumeFlume的入门安装教程此时我们已经安装好了两个节点主节点 : node09从节点 : node10第一步:node10配置flume配置文件1.进入到F...

2019-12-05 16:19:19 5180

原创 Flume的多种采集方式

1.采集目录到HDFS采集需求:服务器的某特定目录下,会不断产生新的文件,每当有新文件出现,就需要把文件采集到HDFS中去根据需求,首先定义以下3大要素:采集源,即source——监控文件目录 : spooldir下沉目标,即sink——HDFS文件系统 : hdfs sinksource和sink之间的传递通道——channel,可用file channel 也可以用内...

2019-12-04 22:41:58 5741

原创 Flume的运行机制与采集系统结构

1.运行机制Flume系统中核心的角色是agent,agent本身是一个Java进程,一般运行在日志收集节点。每一个agent相当于一个数据传递员,内部有三个组件:Source:采集源,用于跟数据源对接,以获取数据;Sink:下沉地,采集数据的传送目的,用于往下一级agent传递数据或者往最终存储系统传递数据;Channel:agent内部的数据传输通道,用于从source将数据...

2019-12-04 22:14:00 4866

原创 Flume的安装入门教程

1.什么是flume?Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的软件。Flume的核心是把数据从数据源(source)收集过来,再将收集到的数据送到指定的目的地(sink)。为了保证输送的过程一定成功,在送到目的地(sink)之前,会先缓存数据(channel),待数据真正到达目的地(sink)后,flume在删除自己缓存的数据。Flume...

2019-12-04 22:03:38 5149

原创 -bash: telnet: command not found

截图封上原因 :没有安装telnet服务解决方案yum install telnet-server -yyum install telnet.* -yyum install telnet-server 安装telnet服务yum install telnet.* 安装telnet客户端...

2019-12-04 20:43:55 5071 1

空空如也

空空如也

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

TA关注的人

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