自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

乄浅醉的专栏

宁可十年不将军

  • 博客(30)
  • 资源 (3)
  • 收藏
  • 关注

原创 Hadoop 之 InputFormat

splits and records一个输入split就是一个由单个map来处理的输入块。每一个map只处理一个split。每个分片被切分成若干 records,每个record就是一个键/值对,map循环处理记录。split和record都是逻辑性概念。/** * <code>InputSplit</code> represents the data to be processed by an

2016-05-31 22:52:28 5058

原创 Hadoop 之 Shuffle and Sort

Mapreduce 确保每个reducer的input都是按照key 排序的。系统将 map ouputs 变成 reduce inputs输入的过程被称为 shuffle。shuffle是Mapreduce的 心脏,是奇迹发生的地方。Map side当 map函数开始产生输出时,并不简单的将它写到磁盘。它利用buffer的方式写到内存,并除以效率的考虑,进行预排序。 每个map任务都有一个环形的

2016-05-31 17:20:50 2641

原创 jdk1.8 和spring 2.5.5 兼容性问题

先看异常:Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 12643 at org.springframework.asm.ClassReader.readClass(Unknown Source) at org.springframework.asm.ClassReader.accept(Un

2016-05-30 17:27:17 4278

原创 hadoop SequenceFile

SequenceFile是专为mapreduce设计的,是可分割的二进制格式,以key/value对的形式存储。write先看下 在hadoop中如何写SequenceFile。 private static final String[] DATA = { "One, two, buckle my shoe", "Three, four, shut t

2016-05-28 15:46:22 991

原创 Hadoop Serialize(二)

hadoop 序列化特性在hadoop 权威指南中,有如此介绍hadoop序列化机制应有如下的特性。Compact(紧凑)。紧凑的序列化机制可以充分利用数据中心的带宽。Fast(快速)。进程间的通信时会大量使用序列化机制,减少序列化和反序列化的开销有利用性能的提升。Extensible(可扩展)。系统升级,通信协议发生变化,类的定义发生变化,序列化机制需要支持这些升级和变化(用过java RM

2016-05-28 12:58:40 823

原创 Hadoop Serialize (一)

说hadoop的序列化与反序列化,怎么都离不开java的序列化。 Block block = new Block(); block.setId(0000001l); block.setName("block one"); block.setPosition("offset 1"); block.setSize(10000l

2016-05-28 11:51:20 435

原创 hadoop之 yarn (简单了解)

Yarn通过两个 守护线程提供核心服务:ResourceManager,管理集群所有资源的切分以及作业的调度与监控;NodeManager,运行在集群所有节点上,启动并监控容器的运行状况,并负责向ResourceManager汇报。在linux上,hadoop是通过cgroup技术实现container资源隔离的。下面有两张图,都是一个作业在yarn中运行流程,不过 我觉得第二张图更加清晰

2016-05-10 18:04:19 402

原创 hadoop之 HDFS 数据I/O(一)

本文知识 由 hadoop权威指南第四版获得,图片也来自与此Read Dataclient通过调用 FileSystem对象的open()方法来打开文件。在HDFS中,FileSystem是DistributedFileSystem的一个实例。DistributedFileSystem是通过RPC调用namenode,获取文件起始block的位置。对于每一个block,namenode会返回

2016-05-10 18:04:13 455

原创 hadoop 之源码 ResourceManager

hadoopRM/** * The ResourceManager is the main class that is a set of components. * "I am the ResourceManager. All your resources belong to us..." * */@SuppressWarnings("unchecked")public class

2016-05-10 18:04:07 515

原创 hadoop之 hdfs FilePattern

举一个例子:使用mapreduce统计一个月或者两个的日志文件,这里可能有大量的日志文件。如何快速的提取文件路径?在HDFS中,可以使用通配符来解决这个问题。与linux shell的通配符相同。例如:TablesAre2016/*2016/05 2016/042016/0[45]2016/05 2016/042016/0[4-5]2016/05 2016

2016-05-10 18:04:03 799

原创 hadoop之 HDFS读写 java interface

读取文件 public static void readFile(String uri) { Configuration configuration = new Configuration(); InputStream inputStream = null; try { // String uri = "hdfs:/

2016-05-10 18:03:59 298

原创 hadoop 之源码 job

hadoop sourcejob类 JobSubmitter.submitJobInternal()The job submission process involves:Checking the input and output specifications of the job.Computing the InputSplit values for the job.Setting

2016-05-10 18:03:53 326

原创 hadoop之 mapreduce Combiner

许多mapreduce作业会受限与集群的带宽,因此尽量降低map和reduce任务之间的数据传输是有必要的。Hadoop允许用户针对map任务的输出指定一个combiner函数处理map任务的输出,并作为reduce函数的输入。因为combine是优化方案,所以Hadoop无法确定针对map输出记录需要调用多少次combine函数。in the other word,不管调用多少次combine函

2016-05-10 18:03:49 479

原创 hadoop之 mapreduce data flow

注:随笔 取自于 hadoop权威指南第四版Hadoop 会讲MapReduce输入的数据切分成大小相等的数据块(fixed-size 固定大小,我认为翻译成相等大小比较合适),或者称之为分片。Hadoop会未每一个分片创建一个map 任务,并由该任务来运行用户自定义的map函数。一个输入数据可以切分成许多切片,我们可以使用map并行处理这些切片,缩短整个任务处理过程的时间。当然分片并不是切分

2016-05-10 18:03:45 618

原创 hadoop之 mapreduce example(2)

解释下 第一篇 程序的意思Job ’s setJarByClass() 便于hadoop查找并加载相关的jar包文件FileInputFormat.addInputPath() 设置输入路径,可以是一个文件,也可以是一个文件夹,而且可以被调用多次,用以加载不同的输入路径。FileOutputFormat.setOutputPath() 设置输出路径,reduce函数会讲 文件写入该路径。在j

2016-05-10 18:03:39 438

原创 hadoop之 mapreduce example(1)

环境:jdk: 1.8hadoop: 2.6.4mapper:package com.hadoop.mapreduce;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apach

2016-05-10 18:03:34 447

原创 Sqoop使用笔记

Sqoop 使用笔记安装 略导入HDFS导入命令sqoop import --username root --password password --connect jdbc:mysql://127.0.0.1/hadoop --table archive如果数据库table没有主键,会有error打印,如下:Error during import: No primary key co

2016-05-10 18:03:24 487

原创 Jstorm

在jdk1.8 的环境下,JStorm 启动nimbus时,会报如下异常:MaxTenuringThreshold of 20 is invalid; must be between 0 and 15Error: Could not create the Java Virtual Machine.Error: A fatal exception has occurred. Progra

2016-05-10 18:03:17 2670

原创 从flume到kafka,日志收集

实时日志分析: 本篇文章主要测试 从flume到kafka的日志收集,storm日志分析,学习中! flume 配置文件#collectorcollector.sources=cscollector.sinks=ck hbaseSinkcollector.channels=cc hbaseChannelcollector.sources.cs.t

2016-05-10 18:03:12 700

原创 纪念storm终于启动了!!!

storm绝对是我见过最难启动的集群,没有之一!从安装 zeromq jzmq错误,到zookeeper集群启动错误,磕磕绊绊,耗费我2天(下班后开始计算),今天终于搞定了,纪念下!下面是启动storm nimbus时的错误,不知道为什么出这个错误,查看lib文件下,有jar包,百度啊 谷歌啊都搜索了就是没有找到,最后只能去翻阅jar包结构,并没有发现这个路径下的类,于是搜索这个jar包,但是

2016-05-10 18:03:06 761

原创 zookeeper 一直拒绝连接

用虚拟机搭建zookeeper集群一直拒绝连接,异常如下:2016-02-22 00:49:45,687 [myid:1] - WARN [QuorumPeer[myid=1]/0:0:0:0:0:0:0:0:2181:QuorumCnxManager@382] - Cannot open channel to 2 at election address hadoop1/10.0.0.1

2016-05-10 18:02:59 14521 1

原创 使用hdfs-slurper 将数据导入hdfs

slurper 可以将任何格式的数据导入HDFS, 这里有github地址 这里鄙视下百度,居然搜索不到! 第一步,下载安装 git clone git@github.com:alexholmes/hdfs-file-slurper.gitcd hdfs-file-slurpermvn package将target下的hdfs-slurper-0.1

2016-05-10 18:02:51 430

原创 Flume+hbase 日志数据采集与存储

了解过flume的人,差不多都看过这张或则类似的图片,本文即实现上图部分内容。(由于条件有限,目前是单机上实现)flume-agent配置文件#flume agent confsource_agent.sources = serversource_agent.sinks = avroSinksource_agent.channels = memoryChannel

2016-05-10 18:02:40 478

原创 hadoop单节点伪分布搭建

hadoop版本:2.7.1 jdk:1.7 OS:ubuntu 14.041、开启ssh免密码登录ssh-keygen -t rsacat id_rsa.pub >> authorized_keys 这里不多做赘述,没有开启的请 google、baidu(搭建java环境也同样)2、修改core-site.xml(path:etc/hadoop/)config

2016-05-10 18:02:23 303

原创 docker学习笔记(六)使用Dockerfile构建镜像

嗯,通常做java开发,我们使用的jdk一般都是sun或者Oracle的jdk,而linux自带的jdk都是openjdk,所以需要动手自己创建一个镜像,并安装jdkDockerfile 如下:FROM ubuntu:14.04MAINTAINER example@example.comCOPY $PWD/jdk/jdk1.7 /usr/local/lib/javaE

2016-05-10 18:02:17 364

原创 docker学习笔记(五): Dockerfile指令

CMDCMD指令用于指定一个容器启动时需要运行的命令。RUN指令是容器被构建时需要运行的命令。sudo docker run -d -p 80 --name static_web docker/nginx:web –c /bin/bash同等与Dockerfile中的CMD[“/bin/bash”,”-c”]ENTRYPOINTENTRYPOINT指令和

2016-05-10 18:02:10 325

原创 docker学习笔记(四): 镜像和仓库

镜像docker构建有两种方法:  使用docker commit命令 使用docker buil命令和Dockerfile文件commit创建镜像:1、     在Docker Hub上注册账号,完成邮箱验证,然后在系统中使用命令登录,命令如下:sudo docker login2、     先创建一个容器:sudo docker run

2016-05-10 18:02:05 249

原创 docker学习笔记(三): 简单的容器操作

书接上回~ 上回说到hello world,这次说下对容器的简单操作!容器命名:sudo docker run --name my_container –i –t Ubuntu /bin/bash   --name :创建一个容器名为 my_container的容器重新启动容器:sudo docker start b6b3e2ea4cefsudo doc

2016-05-10 18:01:59 258

原创 docker学习笔记(一): docker安装

印象中docker突然间火了起来,忍不住好奇,就买了本《第一本Docker书》来学习下,以此比较备忘!   由于我电脑上安装的是ubuntu 14.04,这里就只说 ubuntu下的安装吧!检查前提条件  检查内核                   这是Ubuntu-14.04(X64)自带内核版本,3.8版本上可以支持Docker安装,如果不是,自行更新内核。如果不

2016-05-10 18:01:55 325

原创 docker学习笔记(二):Hello World

书接上回~ 开始:   1、创建容器,命令:sudo docker run –i –t Ubuntu /bin/bash  命令: -i 标志保证容器中STDIN是开启的   -t 标志告诉Docker为要创建的容器分配一个伪tty终端这样新创建的容器才能提供一个交互式shell当容器创建完毕:2、使用容器查看Docker创建的容器的配置情况:

2016-05-10 18:01:36 325

空空如也

空空如也

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

TA关注的人

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