1.Hadoop介绍
1. Hadoop介绍

1.1 什么是Hadoop
- 开源的,可靠的,分布式的,可伸缩的
 - 提供的功能: 利用服务器集群,根据用户的自定义业务逻辑,对海量数据进行分布式处理
 
1.2 处理方式
- 大众角度
- 数据量大,海量
 
 - 技术人员角度
- 如何存储
 - 如何计算
 
 - 公司决策层
 
1.3 分布式
- 由分布在不同主机上的进程协同在一起,构成整个应用。
 - 分布式软件系统
- 该软件系统会划分成多个子系统或模块,各自运行在不同的机器上,子系统或者模块之间通过网络通信进行写协作,实现最终整体功能
 
 
1.4 Hadoop产生背景
- HADOOP最早起源于Nutch。Nutch的设计目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能,但随着抓取网页数量的增加,遇到了严重的可扩展性问题——如何解决数十亿网页的存储和索引问题。
 - 2003年、2004年谷歌发表的两篇论文为该问题提供了可行的解决方案。
——分布式文件系统(GFS),可用于处理海量网页的存储
——分布式计算框架MAPREDUCE,可用于处理海量网页的索引计算问题。
Nutch的开发人员完成了相应的开源实现HDFS和MAPREDUCE,并从Nutch中剥离成为独立项目HADOOP,到2008年1月,HADOOP成为Apache顶级项目,迎来了它的快速发展 
1.5 Hadoop现状


1.6 国内外应用案例
HADOOP应用于数据服务基础平台建设

用于用户画像

用于网站点击日志数据挖掘

1.7 Hadoop生态圈及组成部分

- HDFS:分布式文件系统
 - MAPREDUCE:分布式运算程序开发框架
 - HIVE:基于大数据技术(文件系统+运算框架)的SQL数据仓库工具
 - HBASE:基于HADOOP的分布式海量数据库
 - ZOOKEEPER:分布式协调服务基础组件
 - Mahout:基于mapreduce/spark/flink等分布式运算框架的机器学习算法库
 - Oozie:工作流调度框架
 - Sqoop:数据导入导出工具
 - Flume:日志数据采集框架
 
2. 大数据分析流程
Web日志数据挖掘
2.1 案例名称
一般中型的网站(10W的PV以上),每天会产生1G以上Web日志文件。大型或超大型的网站,可能每小时就会产生10G的数据量。
具体来说,比如某电子商务网站,在线团购业务。每日PV数100w,独立IP数5w。用户通常在工作日上午10:00-12:00和下午15:00-18:00访问量最大。日间主要是通过PC端浏览器访问,休息日及夜间通过移动设备访问较多。网站搜索浏量占整个网站的80%,PC用户不足1%的用户会消费,移动用户有5%会消费。
2.2 需求描述
“Web点击流日志”包含着网站运营很重要的信息,通过日志分析,我们可以知道网站的访问量,哪个网页访问人数最多,哪个网页最有价值,广告转化率、访客的来源信息,访客的终端信息等。
2.3 数据来源
可以采用浏览器潜入指定js程序 监听用户点击事件 通过ajax方式将相关信息吐到后端服务器上写入到服务器日志
2.4 数据处理流程图

- 数据采集:定制开发采集程序,或使用开源框架FLUME
 - 数据预处理:定制开发mapreduce程序运行于hadoop集群
 - 数据仓库技术:基于hadoop之上的Hive
 - 数据导出:基于hadoop的sqoop数据导入导出工具
 - 数据可视化:定制开发web程序或使用kettle等产品
 - 整个过程的流程调度:hadoop生态圈中的oozie工具或其他类似开源产品
 
2.5 项目技术架构图

2.6 可视化

2.7 整体架构图

1.Hadoop介绍的更多相关文章
- [Hadoop入门] - 1 Ubuntu系统 Hadoop介绍 MapReduce编程思想
		
Ubuntu系统 (我用到版本号是140.4) ubuntu系统是一个以桌面应用为主的Linux操作系统,Ubuntu基于Debian发行版和GNOME桌面环境.Ubuntu的目标在于为一般用户提供一 ...
 - Hadoop介绍及最新稳定版Hadoop 2.4.1下载地址及单节点安装
		
Hadoop介绍 Hadoop是一个能对大量数据进行分布式处理的软件框架.其基本的组成包括hdfs分布式文件系统和可以运行在hdfs文件系统上的MapReduce编程模型,以及基于hdfs和MapR ...
 - 在HDInsight中的Hadoop介绍
		
在HDInsight中的Hadoop介绍 概览 Azure的HDInsight是,部署和规定的Apache™Hadoop®集群在云中,提供用于管理,分析和大数据报告软件框架中的服务. 大数据 数据被描 ...
 - Hadoop介绍篇
		
Hadoop详解 1.前言 对于初次接触Hadoop的小伙伴来说,Hadoop是一个很陌生的东西,尤其是Hadoop与大数据之间的关联,写这篇文章之前,我也有许多关于Hadoop与大数据的疑惑,接下来 ...
 - Hadoop记录-hadoop介绍
		
1.hadoop是什么? Hadoop 是Apache基金会下一个开源的大数据分布式计算平台,它以分布式文件系统HDFS和MapReduce算法为核心,为用户提供了系统底层细节透明的分布式基础架构. ...
 - Hadoop介绍-4.Hadoop中NameNode、DataNode、Secondary、NameNode、JobTracker TaskTracker
		
Hadoop是一个能够对大量数据进行分布式处理的软体框架,实现了Google的MapReduce编程模型和框架,能够把应用程式分割成许多的 小的工作单元,并把这些单元放到任何集群节点上执行.在MapR ...
 - Hadoop介绍-3.HDFS介绍和YARN原理介绍
		
一. HDFS介绍: Hadoop2介绍 HDFS概述 HDFS读写流程 1. Hadoop2介绍 Hadoop是Apache软件基金会旗下的一个分布式系统基础架构.Hadoop2的框架最核心的 ...
 - Hadoop(3)-Hadoop介绍
		
Hadoop三大发行版本 Hadoop三大发行版本:Apache.Cloudera.Hortonworks. Apache版本最原始(最基础)的版本,对于入门学习最好. Cloudera在大型互联网企 ...
 - Hadoop基础——第一弹:Hadoop介绍
		
一.基础 1.了解Java.Linux操作系统相关知识 2.如需精进,应为水平要达到一定标准,能够阅读国外相关技术网站,eg:http://hadoop.apache.org/ 二.什么是Hadoop ...
 
随机推荐
- python函数调用时传参方式
			
位置参数 位置参数需与形参一一对应 def test(a,b) #a,b就是位置参数 print(a) print(b) test(1,2) 关键字参数 与形参顺序无关 def test(x,y) ...
 - Vue--- 一点车项目  连接数据库 数据使用
			
Vue--- 一点车项目 连接数据库 数据使用 后台服务器 返回数据 处理 created 这个钩子在实例被创建之后被调用: async created(){ // 分类 catelist { le ...
 - 常见web漏洞
			
常见的web漏洞——文件上传漏洞 一.文件上传漏洞概述 文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力.这种攻击方式是最为直接和有效的,有时候几乎没 ...
 - SHELL脚本简单的赋值与递增
			
Count=`expr $Count + 1`;#可以在各种shell执行,其他类C的写法只能在指定的bash版本执行; 赋值不能带$, 带$相当于字符串常量了;执行脚本参考如下 #!/bin/sh ...
 - GitHub Desktop 拉取 GitHub上 Tag 版本代码
			
一直在使用 GitHub Desktop 图形化 git 管理工具,统一项目框架版本时需要切换到ThinkPHP Tag 分支版本,步骤如下, 1,先在 GitHub 中找到需要的版本,点进去 2,点 ...
 - What is a schema in a MySQL database?
			
摘自:https://www.quora.com/What-is-a-schema-in-a-MySQL-database What is schema? In MySQL, physically, ...
 - vue的声明式渲染
			
声明式渲染 答:2018-8-23声明式渲染是vue对数据进行操作的模式,也叫做响应式渲染当dom节点上绑定了vue的对象的属性时,如果这个属性发生了改变,无需你进行其它的操作,页面上的数据会自动发生 ...
 - .Net Core如何在任意位置获取配置文件的内容
			
前几天群里有人问,我想在程序里的任意位置读取appsetting.json里的配置,该怎么搞. 话不多说上源码 首先,要想读取配置文件我们要用到IConfiguration 接口,这个接口在Start ...
 - Elasticsearch 数据操作
			
一.新增数据 1.1 随机生成id 语法: POST /索引库名/类型名 { "key1": "value1", "key2": " ...
 - 论反向ajax
			
在讨论反向ajax之前,说一下我大二写的一个聊天程序,通过前端ajax不断向服务器发送请求(通过http连接),服务器进行一次数据库查询,然后返回结果,断开与服务器的链接(绝大部分都是无用的结果)来维 ...