程序人生
青城雪
程序员的今生与来世……
展开
-
大数据技术之Sqoop
一、Sqoop简介 Apache Sqoop™是一种旨在有效地在Apache Hadoop和诸如关系数据库等结构化数据存储之间传输大量数据的工具。 Sqoop于2012年3月孵化出来,现在是一个顶级的Apache项目。 注意:1.99.7与1.4.6不兼容,且没有特征不完整,它并不打算用于生产部署。 二、Sqoop原理 将导入或导出命令翻译成mapreduce程序来实现。 在翻译出的mapredu...原创 2019-09-21 11:59:12 · 226 阅读 · 0 评论 -
大数据技术之Flume(扇入)
扇入:多处Flume流入一处Flume. 目标:flume11监控文件hive.log,flume-22监控某一个端口的数据流,flume11与flume-22将数据发送给flume-33,flume33将最终数据写入到HDFS。 分步实现: 1:创建flume11.conf,用于监控hive.log文件,同时sink数据到flume-33: #1 agent a1.sources = r1 a...原创 2019-09-05 17:31:24 · 185 阅读 · 0 评论 -
大数据技术之Flume(扇出)
扇出:一个Flume向几个Flume输出。 目标:使用flume1监控文件变动,flume1将变动内容传递给flume-2,flume-2负责存储到HDFS。同时flume1将变动内容传递给flume-3,flume-3负责输出到local 分步实现: 1:创建flume1.conf,用于监控某文件的变动,同时产生两个channel和两个sink分别输送给flume2和flume3: #1.ag...原创 2019-09-05 17:15:16 · 401 阅读 · 0 评论 -
大数据技术之Flume(实时读取目录文件到HDFS)
目标:使用flume监听整个目录的文件 1:创建配置文件flume-dir.conf #1 Agent a3.sources = r3 a3.sinks = k3 a3.channels = c3 #2 source #监控目录的类型 a3.sources.r3.type = spooldir #监控目录的路径 a3.sources.r3.spoolDir = /opt/module/flume1...原创 2019-09-05 16:53:27 · 303 阅读 · 0 评论 -
大数据技术之Flume(实时读取本地文件到HDFS)
1:创建flume-hdfs.conf文件 #1 agent a2.sources = r2 a2.sinks = k2 a2.channels = c2 #2 source a2.sources.r2.type = exec a2.sources.r2.command = tail -F /opt/plus(文件) a2.sources.r2.shell = /bin/bash -c #3 si...原创 2019-09-05 16:42:42 · 527 阅读 · 0 评论 -
大数据技术之Flume(理论)
一、Flume简介 Flume提供一个分布式的,可靠的,对大数据量的日志进行高效收集、聚集、移动的服务,Flume只能在Unix环境下运行。 Flume基于流式架构,容错性强,也很灵活简单。 Flume、Kafka用来实时进行数据收集,Spark、Flink用来实时处理数据,impala用来实时查询。 二、Flume角色 2.1、Source 用于采集数据,Source是产生数据流的地方,同...原创 2019-09-05 16:18:45 · 201 阅读 · 0 评论 -
SQL 学习之练习,所有问题走不出这四表。。。。
eg:如下表 Student(S#,Sname,Sage,Ssex) 学生表: S#:学号; Sname:学生姓名; Sage:学生年龄;Ssex:性别 Course(C#,Cname,T#) 课程表 : C#,课程编号; Cname:课程名字; T#:教师编号 SC(S#,C#,score) 成绩表: S#:学号; C#,课程编号 score:成绩 Teacher(T#,Tn...原创 2019-09-05 15:03:15 · 285 阅读 · 0 评论 -
Zookeeper集群搭建
原创 2019-09-01 09:32:15 · 91 阅读 · 0 评论 -
Java的向上造型和向下造型。。。
java class A { } class B extends A { } A a = new A(); B b = new B(); A a1 = b;// 向上造型 B b1 = (B) a1; // 向下造型 B b2 = a; // ClassCastException,a的类型是A,实例化也是A 向上造型: 父类引用指向子类对象(子类型,实例也是子类的...原创 2019-08-30 15:08:19 · 228 阅读 · 0 评论 -
Hadoop的企业优化……
MapReduce 跑的慢的原因? Mapreduce 程序效率的瓶颈在于两点: 1)计算机性能 CPU、内存、磁盘健康、网络 2)I/O 操作优化: (1)数据倾斜 (2)map和reduce数设置不合理 (3)map运行时间太长,导致reduce等待过久 (4)小文件过多 (5)大量的不可分块的超大文件 (6)spilt次数过多 (7)merge次数过多等。 MapReduce优化方法: Ma...原创 2019-08-26 23:54:46 · 148 阅读 · 0 评论 -
自定义的序列化
需求1:统计手机号耗费的总上行流量、下行流量、总流量(序列化) 1)需求:统计每一个手机号耗费的总上行流量、下行流量、总流量 2)数据准备 3)分析 Map阶段: (1)读取一行数据,切分字段 (2)抽取手机号、上行流量、下行流量 (3)以手机号为key,bean对象为value输出,即context.write(手机号,bean); Reduce阶段: (1)累加上行流量和下行流量得到总流量。...原创 2019-08-26 16:42:23 · 518 阅读 · 0 评论 -
简单的日志清洗
原文件 web.txt Map类 java package telephone; import org.apache.hadoop.io.LongWritable; import org.apache.hadoop.io.NullWritable; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Ma...原创 2019-08-22 23:26:40 · 594 阅读 · 0 评论 -
Shuffle机制
Mapreduce确保每个reducer的输入都是按键排序的。系统执行排序的过程(即将map输出作为输入传给reducer)称为shuffle。 五、shuffle的调优原创 2019-08-23 13:52:20 · 635 阅读 · 0 评论 -
手机自定义分区
Phionpartition java package phion; import org.apache.hadoop.io.NullWritable; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapred.JobConf; import org.apache.hadoop.mapreduce.Partitioner;...原创 2019-08-23 15:28:57 · 186 阅读 · 1 评论 -
Hadoop的序列化
为什么 要序列化? 一般来说,“活的”对象只生存在内存里,关机断电就没有了。而且“活的”对象只能由本地的进程使用,不能被发送到网络上的另外一台计算机。 然而序列化可以存储“活的”对象,可以将“活的”对象发送到远程计算机。 什么 是序列化? 序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储(持久化)和网络传输。 反序列化就是将收到字节序列(或其他数据传输协议)或者是硬盘的持...原创 2019-08-22 21:31:47 · 112 阅读 · 0 评论 -
统计文件中的相同单词的个数
Map类 java package mr; import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.LongWritable; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Mapper; import java.io.I...原创 2019-08-21 11:09:35 · 577 阅读 · 0 评论 -
关于数据仓库
什么是数据仓库: 数据仓库,英文名称为Data Warehouse,可简写为DW或DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它出于分析性报告和决策支持目的而创建。为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制。 数据仓库能干 什么 ? 1)年度销售目标的指定,需要根据以往的历史报表进行决策,不能拍脑袋。 2)如何优化业务流程 例如...原创 2019-09-21 12:24:14 · 345 阅读 · 0 评论