
大数据
RashaunHan
这个作者很懒,什么都没留下…
展开
-
通过kafka,flume消费自己生产的数据到hbase的准备
1.启动zookeeper2.启动kafka集群的broker服务kafka-server-start.sh /home/hadoop/apps/kafka_2.11-1.1.0/config/server.properties3.打开新的shell窗口创建主题kafka-topics.sh --zookeeper ali:2181 --topic calllog --crea...原创 2018-12-11 11:58:36 · 793 阅读 · 0 评论 -
hbase 集群架构
Region:是 HBase 将一个表中的所有数据按照 RowKey 的不同范围进行切割的逻辑单元,每个 Region 负责一定范围数据的读写访问。Region 由 RegionServer 负责管理。HBase 中的 Region的概念就和 HDFS 中的数据块的概念差不多,Region 是 HBase 表切分出来的一个分片。数据块是 HDFS 中的一个大文件切分出来的一个分片。HMas...原创 2018-11-27 16:30:52 · 923 阅读 · 1 评论 -
Flume 核心组件
Flume 的数据流由事件(Event)贯穿始终。事件是 Flume 的基本数据单位,它携带日志数据(字节数组形式)并且携带有头信息,这些 Event 由 Agent 外部的 Source 生成,当 Source 捕获事件后会进行特定的格式化,然后 Source 会把事件推入(单个或多个)Channel 中。你可以把Channel 看作是一个缓冲区,它将保存事件直到 S...原创 2018-12-04 11:48:25 · 792 阅读 · 0 评论 -
Flume 的几种部署方案
1.单 Agent 采集数据 2.多 Agent 串联 3.多 Agent 合并串联 4.多路复用转载 2018-12-04 11:46:44 · 568 阅读 · 0 评论 -
Spark HA(高可用)集群的搭建
1.上传并且解压spark安装包2.将解压出来的目录重命名为spark3.进入spark/conf修改配置文件 1.进入conf目录并且复制spark-env.sh.template并重命名为spark-env.sh,并在文件最后添加如下配置内容cp spark-env.sh.template spark-env.shvi spark-env.shexport...原创 2018-12-04 11:44:20 · 872 阅读 · 0 评论 -
Flume安装
1.上传 2解压tar -xzvf apache-flume-1.8.0-bin.tar.gz 3.修改flume-env.sh进入 flume 的目录,cp flume-env.sh.template flume-env.sh , 修改flume-env.sh,在里面配置 export JAVA_HOME=/usr/local/jdk1.8.0_191 4.配...原创 2018-12-04 11:34:51 · 1117 阅读 · 0 评论 -
Kafka 的核心概念详解
拓扑结构如下 Broker:Kafka 节点,一个 Kafka 节点就是一个 broker,多个 broker 可以组成一个 Kafka 集群。 Broker 也即中间的存储队列的节点实例。我们将消息的发布者(Publisher)暂时称作Producer,将消息的订阅者(Subscriber)表述为 Consumer,将中间的存储阵列称作 Broker(代理)To...转载 2018-12-04 11:32:55 · 1139 阅读 · 0 评论 -
Kafka的安装
1、上传安装包2、解压安装包到对应的目录 tar -zxvf kafka_2.11-1.1.0.tgz3、修改配置文件cd /home/hadoop/apps/kafka_2.11-1.1.0/configvim server.properties 修改以下内容:broker.id=1 ## 当前集群中的每个 broker 节点的一个唯一编号,每个节点都不一样...原创 2018-12-04 11:32:03 · 167 阅读 · 0 评论 -
Yarn的基本流程(执行流程)
1.client向yarn提交job,首先找ResourceManager分配资源,2.ResourceManager开启一个Container,在Container中运行一个Application manager3.Application manager找一台nodemanager启动Application master,计算任务所需的计算4.Application master向A...转载 2018-12-03 09:08:42 · 874 阅读 · 0 评论 -
Shuffle过程详解
Shuffle过程简介 所谓Shuffle,是指对Map输出结果进行分区、排序、合并等处理并交给Reduce的过程。因此,Shuffle过程分为Map端的操作和Reduce端的操作。(1)在Map端的Shuffle Map的输出结果首先被写入缓存,当缓存满时,就启动溢写操作,把缓存中的数据写入磁盘文件并清空缓存。当启动溢写操作时,首先需要把缓存中的数据进行分...转载 2018-12-03 09:09:01 · 4225 阅读 · 0 评论 -
HBase 和 Hive 的比较
1、相同点1、HBase 和 Hive 都是架构在 Hadoop 之上,用 HDFS 做底层的数据存储,用 MapReduce 做数据计算 2、不同点1、Hive 是建立在 Hadoop 之上为了降低 MapReduce 编程复杂度的 ETL 工具。 HBase 是为了弥补 Hadoop 对实时操作的缺陷2、Hive 表是纯逻辑表,因为 Hive 的本身并不能做数据存储和计算,...原创 2018-11-27 16:31:43 · 592 阅读 · 1 评论 -
HBase 应用场景
1、半结构化或非结构化数据对于数据结构字段不够确定或杂乱无章很难按一个概念去进行抽取的数据适合用 HBase。而且 HBase 是面向列的,HBase 支持动态增加字段2、记录非常稀疏RDBMS 的行有多少列是固定的,为 null 的列浪费了存储空间。而 HBase 为 null 的 Column是不会被存储的,这样既节省了空间又提高了读性能。3、多版本数据对于需要存储变动历史...转载 2018-11-27 16:32:46 · 943 阅读 · 0 评论 -
HBase的逻辑视图
1.行键(RowKey)与 NoSQL 数据库们一样,RowKey 是用来检索记录的主键。访问 HBase Table 中的行,只有三种方式:1、通过单个 row key 访问2、通过 row key 的 range3、全表扫描RowKey 行键可以是任意字符串(最大长度是 64KB,实际应用中长度一般为 10-100bytes),最好是 16。在 HBase 内...转载 2018-11-27 16:33:27 · 1104 阅读 · 0 评论 -
从kafka往hbase写数据时无法写入的问题(region server中出现与master的默认hostname相同的regionserver节点)
在通过flume将生产的日志传递到kafka再通过kafka向hbase写入数据的时候出现问题在执行到flushCommits() 这一步的时候程序卡着不动了,无法进行下一步执行 检查Master:16010发现region server这一项中有一个与服务器初始用户的hostname相同的主机version为unknown,但是在hbase...原创 2018-12-07 11:54:16 · 874 阅读 · 0 评论 -
hbase 集群搭建
1、 安装 zookeeper 集群,此处略2、 找到官网下载 hbase 安装包 hbase-1.2.6-bin.tar.gz3、 上传安装包到服务器,并解压到对应的安装目录4、 修改配置文件 1、修改运行环境配置环境 vi hbase-env.sh 修改两个两地方: e...原创 2018-11-28 18:20:56 · 138 阅读 · 0 评论 -
azkaban安装
1)上传安装包 azkaban-executor-server-2.5.0.tar.gz azkaban后台执行器的安装包 azkaban-web-server-2.5.0.tar.gz azkaban的web界面的安装 登录界面 用户名 密码 --- 存储在关系型数据库的 azkaban-sql-script-2.5.0.tar.gz azkaban的数据...原创 2018-11-28 18:19:48 · 176 阅读 · 0 评论 -
sqoop安装
1)上传 2)解压 tar -xvzf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz 3)配置环境变量 export SQOOP_HOME=/home/hadoop/apps/sqoop-1.4.6.bin__hadoop-2.0.4-alpha export PATH=$PATH:$SQOOP_HOME/bi...原创 2018-11-28 18:17:52 · 120 阅读 · 0 评论 -
Zookeeper的安装
1)上传 2)解压 tar -xvzf zookeeper-3.4.10.tar.gz 3)配置环境变量 vim /etc/profile export ZOOKEEPER_HOME=/home/hadoop/apps/zookeeper-3.4.10/bin export PATH=$PATH:$ZOOKEEPER_HOME/bin...原创 2018-11-28 18:16:55 · 156 阅读 · 0 评论 -
在windows上配置并连接Linux的HDFS系统
1.将hadoop-eclipse-plugin-2.7.5.jar放到myeclipse的安装目录下的plugins目录下,并重启myeclipse2.在windows->preferences下可看见hadoop Map/Reduce界面,路径选择你WINDOWS下的hadoop解压后的路径。3.解压hadoop linux的安装包4.配置hadoop环境变量查询...原创 2018-11-27 16:44:23 · 1510 阅读 · 0 评论 -
Hadoop中HDFS优缺点
HDFS的优点: 1、处理超大文件 这里的超大文件通常是指百MB、甚至数百TB大小的文件。目前在实际应用中,HDFS已经能用来存储管理PB级的数据了。 2、流式的访问数据 HDFS的设计建立在“一次写入、多次读写”任务的基础上。这意味着一个数据集一旦由数据源生成,就会被复制分发到不同的存储节点中...转载 2018-11-27 16:42:20 · 839 阅读 · 0 评论 -
Hive从HDFS中加载数据
建表 以手机流量信息为例插入30w行数据 create table flow(id string,phonenum string,mac string,ip string,num1 int,num2 int,up int,down int,allflow int) row format delimited fields terminated by "\t";列名不能...原创 2018-11-27 16:36:22 · 3672 阅读 · 0 评论 -
HBase的一些要点
以下五点是 HBase 这个 NoSQL 数据库的要点① 高并发,以扩展,解决海量数据集的随机实时增删改查② HBase 本质依然是 Key-Value 数据库,查询数据功能很简单,不支持 join 等复杂操作(可通过 Hive 支持来实现多表 join 等复杂操作)③ 不支持复杂的事务,只支持行级事务④ HBase 中支持的数据类型:byte[](底层所有数据的存储都是字节数...原创 2018-11-27 16:34:08 · 171 阅读 · 0 评论 -
MapReduce各个执行阶段
(1)MapReduce框架使用InputFormat模块做Map前的预处理,比如验证输入的格式是否符合输入定义;然后,将输入文件切分为逻辑上的多个InputSplit,InputSplit是MapReduce对文件进行处理和运算的输入单位,只是一个逻辑概念,每个InputSplit并没有对文件进行实际切割,只是记录了要处理的数据的位置和长度。(2)因为InputSplit是逻辑切分而非物...转载 2018-11-29 10:00:50 · 2386 阅读 · 1 评论 -
MapReduce自定义分区partition的作用和用法
默认分区数量为 key.hash%reducetask的个数自定义分区 自己定义的自定义分区很简单,我们只需要继承抽象类Partitioner,重写getPartition方法即可,另外还要给任务设置分区:job.setPartitionerClass(), job.setNumReduceTasks();就可以了。 注意: 自定义分区的数量...原创 2018-11-29 09:58:57 · 1510 阅读 · 1 评论 -
在IDEA上测试连接spark时遇到的问题
1.Error:scalac: Scala compiler JARs not found 这个问题是因为在pom.xml中配置的 <properties> <scala.version>2.11.8</scala.version> <spark.version>2.3.2</spark.versi...原创 2018-11-21 17:12:40 · 2475 阅读 · 0 评论 -
Zookeeper 端口占用 ERROR [/:3888:QuorumCnxManager$Listener@763] - Exception while listening
有2种原因:1.端口被占用2.ip地址不是本机网卡。如果是第二种问题可以将quorumListenOnAllIPs参数设置为true原创 2018-11-16 11:55:25 · 5411 阅读 · 0 评论 -
scala代码记录
/** * 《chang哥教你一天搞定Scala》 * scala是一门多范式编程语言,集成了面向对象编程和函数式编程等多种特性。 * scala运行在虚拟机上,并兼容现有的Java程序。 * Scala源代码被编译成java字节码,所以运行在JVM上,并可以调用现有的Java类库。 *//** * 第一个Scala程序 * Scala和Java最大的区别是:Sc...转载 2018-11-13 16:15:44 · 258 阅读 · 0 评论 -
Hadoop中的文件上传
上传命令 其中test.txt为要上传的文件 /input为指定的上传到的目录 / 为根目录 从客户端所在的本地上传到hdfs的集群中 hadoop fs -put test.txt /input hadoop 启动一个hadoop客户端 fs filesystem ...原创 2018-11-13 15:15:26 · 1117 阅读 · 0 评论 -
Hadoop搭建之前的准备
搭建准备: 1)配置静态ip 2)修改主机名 3)修改hosts 4)配置普通用户的sudo权限 v...原创 2018-11-13 15:11:09 · 325 阅读 · 0 评论 -
hadoop集群添加新节点
0.说明Hadoop集群已经运行正常,现在新买了一些机子,要加入到集群里面增加新的节点。以下就是增加的过程。1.配置运行环境安装与master和其他slave相同的java环境,jdk版本要相同。具体安装过程这里不再赘述。 修改新节点的ip和主机名对应关系,修改/etc/hosts配置文件,定义ip与hostname的映射。 关闭新节点防火墙,因为Hadoop集群是在内网环境运行,...转载 2018-11-13 15:09:35 · 1432 阅读 · 0 评论 -
Hadoop集群的搭建【完全分布式】
集群安装在多个节点上的 1)多个节点的要求: 多个节点的用户名(安装的时候使用的用户/普通用户)一定要统一 多个节点的安装目录统一 集群规划:集群中的各个节点安装的组件有哪些 HDFS yarn namenode datanode secondarynamenode rm nm master namenode resourcemanager ...原创 2018-11-13 15:08:15 · 176 阅读 · 0 评论 -
安装Scala并且编写第一个scala程序
1.到官网下载scala-2.11.8.msi并且一直下一步安装2.安装IDEA并且选择安装scala插件,如果第一次进入的时候没安装可以在后面通过settings->Plugins->搜索scala并且安装3.file->new project 选择scala->IDEA然后选择SDK,之后在项目中右键创建scala class4.编写代码object Hello...原创 2018-11-13 15:00:49 · 229 阅读 · 0 评论 -
MapReduce自定义writable统计文本中30W条信息中的电话号码的上下行及总流量
Driver类public class flowSum {static class mymapper extends Mapper&lt;LongWritable, Text, Text, FlowBean&gt;{ @Override protected void map(LongWritable key, Text value, Context contex...原创 2018-10-11 15:25:36 · 233 阅读 · 0 评论 -
搭建Hadoop的HA集群的搭建
1.上传安装包2.解压tar -xvzf hadoop-2.7.6.tar.gz3.配置环境变量export HADOOP_HOME=/home/hadoop/apps/hadoop-2.7.6export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbinsource /etc/profile验证:hadoop version4)修改h...原创 2018-11-19 14:19:01 · 205 阅读 · 0 评论 -
Hive安装的时候元数据库使用自己安装的mysql时出现SQL Error code: 1045
出现如下错误Access denied for user 'root'@'localhost' (using password: YES)如图通过在mysql中执行如下命令解决GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'han12345' WITH GRANT OPTION;FLUSH PRIVIL...原创 2018-11-19 19:24:16 · 1290 阅读 · 1 评论 -
使用多台ECS搭建zookeeper集群时启动集群每一台都有QuorumPeerMain进程但是无法选举的问题
我在使用3台ECS搭建zookeeper集群的时候成功启动了QuorumPeerMain进程但是服务器之间无法连接报connection refused错误,尝试更改服务器的安全组策略失败。 后发现是因为我的ECS实例是使用“专有网络” + 弹性公网IP地址,但是因为服务器的弹性公网ip是独立于ECS之外的,因此不能直接在ECS实例的程序中绑定自己的公网ip地址,而...原创 2018-11-18 16:24:05 · 1639 阅读 · 0 评论 -
求学生成绩-统计每门课程的参考人数和课程平均分
有如下数据computer,huangxiaoming,85,86,41,75,93,42,85computer,xuzheng,54,52,86,91,42computer,huangbo,85,42,96,38english,zhaobenshan,54,52,86,91,42,85,75english,liuyifei,85,41,75,21,85,96,14alg...转载 2018-11-29 09:57:53 · 13040 阅读 · 0 评论 -
求该成绩表当中出现相同分数的分数,还有次数,以及该分数的人数
/** * 求该成绩表当中出现相同分数的分数,还有次数,以及该分数的人数 * @author Administrator * */public class HomeWork03 { //key---科目+分数 Text value----人名 Text static class MyMapper extends Mapper<LongWritable, Tex...原创 2018-11-29 09:55:04 · 808 阅读 · 0 评论 -
Kafka 的优点
第一点:解耦 在项目启动之初来预测将来项目会碰到什么需求,是极其困难的。消息系统在处理过程中间插入了一个隐含的、基于数据的接口层,两边的处理过程都要实现这一接口。这允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。第二点:冗余有些情况下,处理数据的过程会失败。除非数据被持久化,否则将造成丢失。消息队列把数据进行持久化直到它们已经被完全处理,通过...原创 2018-11-29 09:52:27 · 2830 阅读 · 0 评论 -
元数据库使用自己安装的mysql安装HIVE
1)上传2)解压 tar -xvzf apache-hive-2.3.2-bin.tar.gz3)配置环境变量 export HIVE_HOME=/home/hadoop/apps/apache-hive-2.3.4-bin export PATH=$PATH:$HIVE_HOME/bin source /etc/profile4)安装mysql参见文档...原创 2018-11-29 09:51:11 · 154 阅读 · 0 评论