图解大数据 | 大数据生态与应用导论

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 随着互联网高速发展,网络数据呈现出指数级别的快速增长,针对海量数据处理的大数据解决方案应运而生。ShowMeAI将在接下来的内容中逐步展开讲解大数据生态工具的应用,以及大数据的处理分析挖掘方法。

ShowMeAI研究中心

作者:韩信子@ShowMeAI
教程地址http://www.showmeai.tech/tutorials/84
本文地址http://www.showmeai.tech/article-detail/167
声明:版权所有,转载请联系平台与作者并注明出处

收藏ShowMeAI查看更多精彩内容


1.大数据的背景

随着互联网高速发展,网络数据呈现出指数级别的快速增长,企业应用需要处理的数据量也变得非常巨大,轻松达到了TB、PB甚至EB、ZB级别,需要巨型存储空间进行存储。而对这些数据进行处理和分析挖掘,仅仅使用单机处理已经无法完成,这个大背景下,针对海量数据处理的大数据解决方案应运而生。ShowMeAI将在接下来的内容中逐步展开讲解大数据生态工具的应用,以及大数据的处理分析挖掘方法。

以下几点,更详细地介绍了大数据技术的相关历史和背景。

1)第三次信息化浪潮

根据IBM前首席执行官郭士纳的观点,IT领域每隔十五年就会迎来一次重大变革。

导论; 大数据生态与应用; 大数据的背景; 第三次信息化浪潮; 1-1

2)数据量飞速增长

移动互联网时代,产生大量的数据。

导论; 大数据生态与应用; 大数据的背景; 大数据时代,数据量飞速增长; 1-2

3)存储价格随时间变化

硬件存储价格随科技发展逐年不断下降。

导论; 大数据生态与应用; 大数据的背景; 存储价格随时间变化; 1-3

4)数据产生方式的变革

大数据的兴起也跟数据产生方式的变化有关,数据产生方式的变革促成大数据时代的来临。

导论; 大数据生态与应用; 大数据的背景; 数据产生方式的变革; 1-4

2.大数据的发展历史

下面我们来看看大数据的发展历史。

1)大数据的发展历程

导论; 大数据生态与应用; 大数据的发展历史; 大数据的发展历程; 1-5

2)大数据的概念

大数据不仅是数据的“大量化”,而且包含“快速化”“多样化”“价值化”等多重属性。

导论; 大数据生态与应用; 大数据的发展历史; 大数据的概念; 1-6

(1)大量化 Volume

大数据摩尔定律:数据一直都在以每年50%的速度增长,即每两年就增长一倍(IDC)人类在最近两年产生的数据量相当于之前产生的全部数据量。预计到2020年,全球将总共拥有35ZB的数据量,相较于2009年,数据量将增长近44倍。

导论; 大数据生态与应用; 大数据的发展历史; 大数据的概念; 大量化 Volume; 1-7

(2)快速化 Velocity

大数据需要很快的处理速度:从数据的生成到消耗,时间窗口非常小,可用于生成决策的时间非常少。1秒定律(秒级定律):这一点和传统的数据挖掘技术有着本质的不同。

导论; 大数据生态与应用; 大数据的发展历史; 大数据的概念; 快速化 Velocity; 1-8

(3)多样化 Variety

大数据数据形态丰富:大数据由结构化数据和非结构化数据组成。

导论; 大数据生态与应用; 大数据的发展历史; 大数据的概念; 多样化 Variety; 1-9

3)大数据生态发展史

伴随着大数据的发展,层出不穷的大数据工具开始诞生和发展,并形成一个大数据生态,下面罗列了一些大数据生态发展史中的典型项目工具,它们也是我们当前处理大数据的主流工具平台。

导论; 大数据生态与应用; 大数据的发展历史; 大数据生态发展史; 1-10

导论; 大数据生态与应用; 大数据的发展历史; 大数据生态发展史; 1-11

3.大数据带来的影响

大数据的兴起与高速发展,给我们也带来了很大的影响。

1)大数据带来的影响

导论; 大数据生态与应用; 大数据带来的影响; 1-12

  • 社会发展:大数据决策逐渐成为一种新的决策方式。大数据应用有力促进了信息技术与各行业的深度融合,大数据开发大大推动了新技术和新应用的不断涌现。
  • 就业市场:大数据的兴起使数据科学家成为热门职业。
  • 人才培养:大数据的兴起,将在很大程度上改变中国高校信息技术相关专业的现有教学和科研体制。
  • 人工智能:人工智能需要海量的数据作为依托,对于海量数据快速处理分析的需求非常强烈。

2)大数据的应用

大数据无处不在,包括金融、汽车、零售、餐饮、电信、能源、政务、医疗、体育、娱乐等在内的社会各行各业都已经融入了大数据的印迹。

导论; 大数据生态与应用; 大数据带来的影响; 大数据的应用; 1-13

下面我们一起来看看大数据在不同行业领域的典型应用场景案例。

电商 - 预测用户行为:用户行为信息就是用户在网站上发生的所有行为

  • 如搜索、浏览、打分、点评、加入购物筐、取出购物筐、加入期待列表、购买、使用减价券和退货等;
  • 也包括在第三方网站上的相关行为,如比价、看相关评测、参与讨论、社交媒体上的交流、与好友互动等。
  • 对电商大数据AI应用感兴趣的同学可以查看ShowMeAI在电商与用户行为预估垂直领域的一些介绍文章,如《大厂技术实现 | 多目标优化及应用(含代码实现)》


娱乐 - 定制影视节目:大数据在影视作品的制作、发行、放映环节都发挥着重要作用

  • 对于发行方而言,可以根据作品题材,受众群众等数据制定营销策略,比如Netflix通过分析用户数据买下《纸牌屋》版权并开启了大数据对于影视产业的全面渗透;
  • 对于投资方和制片方来说,可以利用大数据对投资回报进行预测,减少风险和损失;
  • 对于影院来说,可以利用大数据进行排片和票房预测。
  • 对娱乐大数据AI应用感兴趣的同学可以查看ShowMeAI在相关垂直领域的一些介绍文章,如《大厂技术实现 | 爱奇艺短视频推荐业务中的多目标优化实践》


医疗 - 预测疾病趋势:从谷歌流感趋势(Google Flu Trends, GFT)是看大数据的应用价值


交通 - 优化城市交通:目前公共领域率先使用大数据技术的主要是交通行业

  • 曾经的无处可查的套牌车,死板的红绿灯跳转算法,在大数据的影响下都被一一解决,为城市的交通做出巨大的贡献。


环境 - 预警环境污染:为环境保护部门提供强力的数据支撑

  • 影响深远的环境问题,难以使用的大规模环境检测器的数据,在大数据的强大计算能力下,可以做到近乎实时的在大屏上进行呈现,快速预警环境污染问题。


政务 - 智慧城市建设:通过大数据建立起信息集群中心,为城市管理业务提供数据支持

  • 通过信息技术,将城市的系统和服务打通、集成,以提升资源运用的效率,优化城市管理和服务,以及改善市民生活质量。

4.大数据生态与常用工具

下面我们来了解一下大数据生态系统架构,以及应用大数据技能,完整的大数据工具技能图谱。如下两图所示~

1)大数据生态系统架构

导论; 大数据生态与应用; 大数据生态与常用工具; 大数据生态系统架构; 1-14

导论; 大数据生态与应用; 大数据生态与常用工具; 大数据生态工具与基本技能图谱; 1-15

2)常用工具-编程语言

大数据生态工具应用的主流编程语言是Scala、Java,随着AI生态的快速发展,其最常用语言python也被大数据生态工具很好地支持了。目前,在大数据处理场景下,使用Scala、Java或者python进行实现,并不会有特别大的效率差异。

更多学习资料 → 图解Python详细系列教程

3)常用工具-日志收集:Flume

Flume,Apache下的一个顶级开源项目,一个分布式、可靠的数据收集组件。能够高效的收集,整合数据,还可以将来自不同源的大量数据汇聚到数据中心存储落地。
目前常用于企业内收集整合日志数据,但由于其数据源的可自定义特性,还可用于传输结构化数据(oracle, mysql等),也常被用于流式数据的采集输入工具。


相关学习链接

4)常用工具-分布式数据存储:HDFS

HDFS(Hadoop Distributed File System),全称Hadoop分布式文件系统。Hadoop生态体系的存储底层,用于存储管理大批量文件数据。其自带的容错机制,高度的可拓展性,让其成为现今最适用的开源分布式存储底层系统。

特性

  • 存储数据类型为任意文件,满足大部分的存储使用场景;
  • 基于Java平台开发,适配绝大多数PC,服务器;
  • 安装高度可配置化,默认配置适用大部分场景,仅部分超大规模集群需要进行特殊的参数优化,可用性与易用性较强。

关于HDFS的更多知识也可以查看ShowMeAI的后续教程了解。


相关学习链接

5)常用工具-数据仓库:Hive

Hive是构建于HDFS上的一套分布式结构化数据存储系统,可以狭义的理解为一个开源的分布式数据库,通过SQL语言进行操作,可以较为遍历的处理超大规模下结构化数据的处理分析工作。

特性

  • 底层调用MapReduce计算框架,能够相对快速完成大规模数据的查询和分析工作;
  • 数据载入模式支持自定义,且支持多种格式的数据文件,为不同的数据使用场景提供更适合的方案。

关于hive的更多知识也可以查看ShowMeAI的后续教程了解。


相关学习链接

6)常用工具-Hadoop家族:HBase

HBase是构建于HDFS上的一套分布式非结构化数据存储系统,类似于Redis之类的Key-Value数据库,可以通过key进行大规模数据的快速索引查询。目前常用于在大规模数据中快速查询某些信息记录,例如从几亿用户信息中快速查询某个用户信息。

特性

  • 对于检索key查询value可以做到毫秒级的响应,满足大多数低延迟相应的要求;
  • 底层使用HDFS作为文件存储系统,让HBase的单表存储记录数可以达到极高的规模。

关于HBase的更多知识也可以查看ShowMeAI的后续教程了解。


相关学习链接

7)常用工具-大数据通用处理平台:Spark

Spark是第二代分布式处理框架,其核心思想与MapReduce类似,并在其基础上对于处理Pipeline进行了优化,包括引入DAG,依赖划分等机制。同时,通过针对对于数据缓存的使用,完成整体计算性能的大幅度提升,成为目前主流的分布式处理框架组件。

特性

  • 中间过程最大程度基于内存缓存,降低磁盘IO,实现高效计算;
  • 高度复合的框架整合,集成Spark Core、SparkSQL、SparkGraphx、SparkML、SparkStreaming,让多环境的大数据开发可以单平台完成。


关于Spark的详细教程和综合应用也可以查看ShowMeAI的后续内容了解。

相关学习链接

8)常用工具-流式计算:Storm

Storm是目前使用最多的实时流式数据处理框架,其核心思想主要是对每一个流入的数据都分配一个线程进行处理,Storm框架完成所有数据,线程的调度处理,让开发者可以专注开发基于流式数据的业务性功能开发。

特性

  • Storm针对单条记录进行接受处理并反馈结果,适用实时事务性处理场景
  • 由于处理机制导致其并发度无法达到非常高的程度,集群一旦到达性能瓶颈,难以进行进一步的优化


相关学习链接

9)常用工具-流式计算:Flink

Apache Flink是一个用于分布式流和批处理数据处理的开源平台。Flink的核心是流数据流引擎,为数据流上的分布式计算提供数据分发、通信和容错。Flink在流引擎之上构建批处理,覆盖本机迭代支持,托管内存和程序优化。Flink核心思想与SparkStreaming类似,针对数据集的微批处理框架,在相对不高的延迟下(秒级)完成批量数据的近实时处理。

特性

  • 收集数据,按照时间进行微批数据的切分,并进行分布式处理,数据处理吞吐量大;
  • 由于针对批次数据加工,相对延迟高于Storm,且无法完成实时事务性处理(例:银行即时转账等业务)。


相关学习链接

5.参考资料

【大数据技术与处理】推荐阅读

ShowMeAI 系列教程推荐

ShowMeAI用知识加速每一次技术成长

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
18天前
|
存储 消息中间件 监控
【Flume】Flume在大数据分析领域的应用
【4月更文挑战第4天】【Flume】Flume在大数据分析领域的应用
|
1月前
|
Cloud Native 数据处理 云计算
探索云原生技术在大数据分析中的应用
随着云计算技术的不断发展,云原生架构作为一种全新的软件开发和部署模式,正逐渐引起企业的广泛关注。本文将探讨云原生技术在大数据分析领域的应用,介绍其优势与挑战,并探讨如何利用云原生技术提升大数据分析的效率和可靠性。
|
1月前
|
存储 消息中间件 大数据
Go语言在大数据处理中的实际应用与案例分析
【2月更文挑战第22天】本文深入探讨了Go语言在大数据处理中的实际应用,通过案例分析展示了Go语言在处理大数据时的优势和实践效果。文章首先介绍了大数据处理的挑战与需求,然后详细分析了Go语言在大数据处理中的适用性和核心技术,最后通过具体案例展示了Go语言在大数据处理中的实际应用。
|
28天前
|
数据采集 分布式计算 大数据
Java语言在大数据处理中的应用
传统的大数据处理往往依赖于庞大的数据中心和高性能的服务器,然而随着大数据时代的到来,Java作为一种强大的编程语言正在被广泛应用于大数据处理领域。本文将探讨Java语言在大数据处理中的优势和应用,以及其在分布式计算、数据处理和系统集成等方面的重要作用。
|
1月前
|
存储 大数据 数据挖掘
云计算与大数据:从基础设施到实际应用
云计算与大数据:从基础设施到实际应用
118 0
|
20天前
|
NoSQL 大数据 数据挖掘
现代数据库技术与大数据应用
随着信息时代的到来,数据量呈指数级增长,对数据库技术提出了前所未有的挑战。本文将介绍现代数据库技术在处理大数据应用中的重要性,并探讨了一些流行的数据库解决方案及其在实际应用中的优势。
|
21天前
|
机器学习/深度学习 分布式计算 数据挖掘
阿里云 MaxCompute MaxFrame 开启免费邀测,统一 Python 开发生态
阿里云 MaxCompute MaxFrame 正式开启邀测,统一 Python 开发生态,打破大数据及 AI 开发使用边界。
198 1
|
25天前
|
机器学习/深度学习 人工智能 数据可视化
基于Python的数据可视化技术在大数据分析中的应用
传统的大数据分析往往注重数据处理和计算,然而数据可视化作为一种重要的技术手段,在大数据分析中扮演着至关重要的角色。本文将介绍如何利用Python语言中丰富的数据可视化工具,结合大数据分析,实现更直观、高效的数据展示与分析。
|
1月前
|
存储 NoSQL 大数据
新型数据库技术在大数据分析中的应用与优势探究
随着大数据时代的到来,传统数据库技术已经无法满足海量数据处理的需求。本文将探讨新型数据库技术在大数据分析中的应用情况及其所带来的优势,为读者解析数据库领域的最新发展趋势。
|
2月前
|
分布式计算 并行计算 大数据
Python多进程在数据处理和大数据分析中的应用
Python多进程在数据处理和大数据分析中的应用