前言
随着互联网快速发展,越来越多的用户在日常使用网络系统过程中产生了大量的结构化数据与非结构化数据(如视频、音频、图片等),因此如何有效的存储管理与计算分析成为了难题,而Hadoop的出现就是在这样的背景下产生的。
以下是本章的主要 内容:
- 了解大数据的特点
- 了解大数据的应用场景
- hadoop介绍
1. 大数据的特点
最近十多年来,由于互联网高速发展,个人与网络系统数据在不断爆炸式增长,大量结构化的数据(传统数据库存储的数据)与非结构化的数据(如视频、音频、图片等)也自然爆炸性增长。总得来说大数据有如下几点:
- 数据体量大
大数据体量大体现在采集、存储、分析、计算等各个方面都面临海量数据,一般至少以TB起步。
- 数据来源广
数据来源分为结构化数据(传统数据库存储的数据)、半结构化数据(日志、文本)、非结构化是数据(视频、音频、照片等)。
- 低价值密度
由于存在大量数据,如何从大量数据中高效筛选出有价值的数据成为大数据时代亟待解决的问题
- 速度快
数据增长速度快,处理数据速度快,同时获取数据的速度也需要快,例如每年双十一时候如何能够高效处理海量请求下的海量订单数据考验着每一个电商。
2. 大数据应用场景
- 电商方面
如电商方面的精准推荐商品如下图所示:
还有常见的大数据杀熟也是一方面应用。
- 传媒方面
短视频平台抖音、b站 根据大数据算法推送用户喜欢的创作内容
- 金融领域
通过大数据对个人信用进行评估,推荐合适的理财产品或评估个人贷款资格,以减少坏账的风险。
类似的应用案例很多,这里就不在一一举例。
3. Hadoop的介绍
传统数据库在处理大数据面临很大问题就是通过纵向扩展提示处理数据能力,但我们知道增加的CPU、RAM内存和磁盘总是有上限的,而且计算机服务器纵向扩展的代价是非常昂贵的,既然传统数据库也越来越难以应付海量数据的存储、计算和分析,所以能支持分布式横向扩展的Hadoop框架越来越受到更多公司的青睐,Hadoop在处理大数据方面有如下特性:
- 海量数据处理
Hadoop是专门为处理海量大数据应用而生的,其处理的数据容量能高达PB甚至EB级。
- 可靠性
Hadoop从设计初就充分考虑到当计算机出现硬件故障,依然能够高效存储和分析数据并且数据不会出现丢失的问题,这一切并且得益于Hadoop良好的架构设计。
- 流式处理
传统数据库用于快速访问数据,而不是批处理。Hadoop一开始就考虑到批处理的场景,例如使用Hadoop为上百万个网页建立索引。
- 数据一致性
与传统数据库不同,Hadoop数据文件适用于一次写多次读的业务场景。
- 弹性收缩
Hadoop从一开始设计就采用分布式集群方式进行协同工作,所以其具有良好的扩展性与收缩性。
下一章我们将创建并配置一个伪分布式Hadoop集群。