Hadoop 技术笔记
Flume与Kafka
Flume 是一个分布式,可靠的,可用的服务,有效的收集,聚合和移动海量的日志数据。它有一个简单而灵活的架构,基于流数据流。具有很好的冗余和容错性,以及可靠性和多故障转移和恢复机制。它使用一个简单的可扩展数据模型,并允许在线分析应用。简单的认为Flume是一个收集日志数据的服务。
Kafka是一个分布式发布-订阅消息系统,用于处理流式海量数据。Kafka 是一个由 LinkedIn 开发的消息队列。能嫁接 HDFS 这样的存储介质,能被 Storm,Spark这类实时或类实时数据模型消费。简单的说,Kafka是一个基于生产者消费者模型的消息系统。
应用
线上数据一般主要是落地文件或者通过socket传输到另外一个系统,这种情况下,很难推动线上应用或服务区修改接口,直接向Kafka里写数据,这时候就可能需要Flume服务来帮忙做传输。业界比较典型的用法是
data on line -> Flume -> Kafka -> Hdfs -> MapReduce (Spark, Storm)
具体应用可参考美团的日志收集系统 http://tech.meituan.com/mt-log-system-arch.html
OpenStack与Hadoop
OpenStack 只要目的是做一整套的云计算基础框架,将物理机虚拟化的云服务平台,包含各种管理组件和API。
Hadoop是云计算中的分布式计算核心:存储与计算。
两者是面向不同层面的,OpenStack是云操作系统,Hadoop是在操作系统上进行存储于计算的。比如现有多台底层的物理机(服务器,PC等),Openstack是将物理机进行虚拟化,一台物理机可以虚拟出多个虚拟机(其实也可以把Openstack的工作的一部分想象为VMware),然后对虚拟机进行各种管理,只是VMware面向的是单台PC,而Openstack面向的是很多狠多台的群集管理,然后在部分的虚拟机中安装操作系统,例如linux,OSX,Windows等等。最后在这个云平台的系统中,再次建立集群化的Hadoop计算框架,用来分布式存储与计算。更加简单的说,OpenStack是面向云,而Hadoop是面向云上的计算。
Hadoop 技术笔记的更多相关文章
- 《Hadoop技术内幕》读书笔记——Task运行过程分析
本文是董西成的Hadoop技术内幕一书的读书章节总结. 第八章 Task运行过程分析 所有Task需要周期性地向TaskTracker汇报最新进度和计数器值,而这正是由Reporter组件实现的,其中 ...
- Hadoop阅读笔记(七)——代理模式
关于Hadoop已经小记了六篇,<Hadoop实战>也已经翻完7章.仔细想想,这么好的一个框架,不能只是流于应用层面,跑跑数据排序.单表链接等,想得其精髓,还需深入内部. 按照<Ha ...
- Hadoop阅读笔记(六)——洞悉Hadoop序列化机制Writable
酒,是个好东西,前提要适量.今天参加了公司的年会,主题就是吃.喝.吹,除了那些天生话唠外,大部分人需要加点酒来作催化剂,让一个平时沉默寡言的码农也能成为一个喷子!在大家推杯换盏之际,难免一些画面浮现脑 ...
- Hadoop阅读笔记(五)——重返Hadoop目录结构
常言道:男人是视觉动物.我觉得不完全对,我的理解是范围再扩大点,不管男人女人都是视觉动物.某些场合(比如面试.初次见面等),别人没有那么多的闲暇时间听你诉说过往以塑立一个关于你的完整模型.所以,第一眼 ...
- Hadoop阅读笔记(四)——一幅图看透MapReduce机制
时至今日,已然看到第十章,似乎越是焦躁什么时候能翻完这本圣经的时候也让自己变得更加浮躁,想想后面还有一半的行程没走,我觉得这样“有口无心”的学习方式是不奏效的,或者是收效甚微的.如果有幸能有大牛路过, ...
- Hadoop阅读笔记(三)——深入MapReduce排序和单表连接
继上篇了解了使用MapReduce计算平均数以及去重后,我们再来一探MapReduce在排序以及单表关联上的处理方法.在MapReduce系列的第一篇就有说过,MapReduce不仅是一种分布式的计算 ...
- Hadoop学习笔记(2)
Hadoop学习笔记(2) ——解读Hello World 上一章中,我们把hadoop下载.安装.运行起来,最后还执行了一个Hello world程序,看到了结果.现在我们就来解读一下这个Hello ...
- Hadoop学习笔记(2) ——解读Hello World
Hadoop学习笔记(2) ——解读Hello World 上一章中,我们把hadoop下载.安装.运行起来,最后还执行了一个Hello world程序,看到了结果.现在我们就来解读一下这个Hello ...
- [转帖]hadoop学习笔记:hadoop文件系统浅析
hadoop学习笔记:hadoop文件系统浅析 https://www.cnblogs.com/sharpxiajun/archive/2013/06/15/3137765.html 1.什么是分布式 ...
随机推荐
- redis开发为什么选用skiplist?
There are a few reasons: 1) They are not very memory intensive. It's up to you basically. Changing p ...
- MYSQL 技术内幕 博客学习
http://blog.csdn.net/CCyutaotao/article/category/6147849/3
- geos库交叉编译生成ARM平台库
版本号信息: GEOS:geos-3.4.2.tar.bz2(http://trac.osgeo.org/geos/) CPU:ARM 编译器:arm-linux 4.2.2 1. 解压源代码包ge ...
- ubuntu14.04上搭建android开发环境
这几天心血来潮,想在ubuntu上写写android软件.所以就上网找些资料在ubuntu上搭建android环境.结果要么时不完整的,要么就是过时的. 所以我把我搭建android环境的过程写下了, ...
- HTTP缓存和CDN缓存
一 http缓存 1.1缓存的分类: http中具有缓存功能的是:1.浏览器缓存. 2.缓存代理服务器. 1.2 什么是缓存: http缓存的是指:当Web请求抵达缓存时, 如果本地有“已缓存的”副 ...
- Quartz实例:quartz定时任务代码示例
转自:http://www.blogchong.com/post/96.html quartz定时任务调度框架,使用实例. Job类://即实际调度任务实现 . package net.csdn.ed ...
- 中文分词--最大正向与逆向匹配算法python实现
最大匹配法:最大匹配是指以词典为依据,取词典中最长单词为第一个次取字数量的扫描串,在词典中进行扫描(为提升扫描效率,还可以跟据字数多少设计多个字典,然后根据字数分别从不同字典中进行扫描).例如:词典中 ...
- golang 初体验
1.下载golang https://code.google.com/p/go/downloads/list 在windows下安装,下载windows32版本 2.安装 安装完毕,默认在C:\Go ...
- php添加文件到压缩文件夹
extension=php_zip.dll注释掉 <?php$filename = "test.zip"; ob_end_clean(); $zip = new ZipArc ...
- H3BPM子表的复制
在做一个流程的时候,碰到了下面的表数据直接从上表中获取,并且为不可编辑状态,没有增加和删除行的按钮.一开始使用的是ComputationRule属性,但是有一项是日期空间,没有这个属性,不知道怎么处理 ...