hadoop快速入门
1. 什么是大数据
大数据核心含义是一种技术革新
随着互联网时代的深入,产生了越来越多的数据,比如:
1、电商产生的大量用户浏览、购物行为
2、移动运营商记录了大量的用户上网行为
3、网络舆情分析—-营销支撑
4、金融系统征信分析
。。。。。。。
上述的这些需求,用以前的传统技术无法胜任,需要有一个全新的技术体系来支撑
在此背景之下,就产生了一系列针对海量数据进行处理的技术;
总结:“大数据”这个概念核心是指一系列针对海量数据进行处理的新技术
大数据技术的主要功能:处理海量数据
2. 大数据应用场景
例如下图 购买了商品用户还购买了,下面的数据就是海量数据处理的结构
下面的”猜你喜欢” 后台的一些算法模型,加一些用户行为而得出的
网易云音乐 也是采用这种数据
以及优酷和爱奇艺的广告推送
精准广告推送:对海量互联网用户的相关数据统计分析——核心:用户画像
淘宝
推荐:——要大数据
我的淘宝:——已购买的宝贝:系统功能的实现都需要依赖大数据技术,需要一个分布式的快速响应的海量数据库系统
3. 大数据技术简介
大数据技术基本上都需要解决两个核心需求:
3.1. 数据存储
一般都是采用分布式存储:
将数据(文件)分散到一个集群上的N多台机器上存储
3.2. 数据运算
什么叫运算:
比如,有一堆用户浏览商品的行为记录,需要统计出:
最热门的top100个商品;
每个人一次访问平均浏览了多少个商品;
每一个商品被人浏览时,同时还会有哪些商品跟随着被浏览;
…….
上述这些数据分析需求,最终都会转化成程序来实现,程序的运行最终又是机器CPU+内存+磁盘等硬件资源的运行;
在海量数据的场景下,单机资源无法满足运算的需要,所以,在大数据体系下,一切数据运算逻辑的实现都得靠:分布式运算系统
4. 什么是hadoop
上文所述,分布式存储、分布式运算,都应该由成熟的框架来提供
Hadoop就是其中的一种框架
Hadoop就能提供分布式存储及分布式运算的功能:
1、HADOOP中有一个组件:HDFS——分布式存储
2、HADOOP中有一个组件:MAPREDUCE——分布式运算
3、HADOOP中有一个组件:YARN——为MAPREDUCE提供硬件资源调度
但是HADOOP的核心组件,极为底层,如果直接基于这个底层框架来开发我们的数据分析逻辑,比较繁琐,开发效率很低,所以,在HADOOP这个底层框架之上,又衍生了大量的快捷开发工具:
1、HIVE : 可以让用户只要写SQL来表达数据处理逻辑即可