大数据技术生态,不懂你捶我

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 一文了解大数据技术生态。

大家好,我是脚丫先生 (o^^o)

大数据时代这个词被提出已经10年有余,特别是最近几年风风火火的贵州贵阳。

乘着时代的风口和国家的有力支撑,已被称之为“中国数谷”。

大数据的力量如此巨大,难免让人好奇不已。那么到底什么是大数据呢?

大数据的概念、大数据技术、大数据平台,一条龙服务,尽在下文!!!

image.png

一、大数据

大数据(Big Data)本身是个很宽泛的概念,根据字面理解,可知是很大很大的数据。

数据大到了极限,造成传统技术已经无法处理。

专业术语:大数据指的是传统数据处理应用软件,不足以处理(存储和计算)它们,大而复杂的数据集。

可以理解 为一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库,软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低。

总而言之,大数据就是指数据很大,传统技术无法高效的处理该数据。

四大特征:大量,多样,高速,低价值密度。

(1) 大量:数据容量大。从TB级别,跃升到PB级别。海量的数据,可谓是数据的海洋。

image.png

(2) 多样:数据类型的多样性,包括文本,图片,视频,音频。相对于以往便于存储的以文本为主的结构化数据,非结构化数据越来越多,包括网络日志、音频、视频、图片、地理位置信息等。

image.png

传统技术的处理多类型的数据已经不堪重任,因此对于数据的处理能力提出了更高要求。

(3) 高速:指获得数据的速度以及处理数据的速度,数据的产生呈指数式爆炸式增长,处理数据要求的延时越来越低。

image.png

(4) 价值密度低:价值密度的高低与数据总量的大小成反比。以视频为例,一部1小时的视频,在连续不间断的监控中,会产生大量的数据,但是有用数据可能仅有一二秒。

image.png

价值密度低,就好比一整部电影,无数个镜头,然而仅有一两个镜头较为经典。

二、大数据核心技术

我们知道了大数据的特点之后,就要改变传统的数据处理模式。

解决,海量数据的存储和计算问题。

因此引进了新处理模式,大数据技术。

大数据的概念比较抽象,而大数据技术栈的庞大程度将让你叹为观止。

来吧,我们一起漂进大数据技术的海洋,从此一去不复返!!!

image.png

这些就是大数据生态圈的技术组件,可谓是眼花缭乱,应接不暇(好吧,其实是杂乱无章)。

那么,大数据生态圈的技术组件(技术栈),又是如何解决海量数据的存储和计算问题呢 ?

先放大数据技术生态圈的一个大致组件分布图,之后我们一步步的进行分解组合。

图片我们可以看到,已经把之前杂乱的大数据组件摆放的规规矩矩,有条有序的。

看着由杂乱无章到井井有条的大数据生态圈有点舒服。

似乎有点像家里修建房屋一样,一层一层,往上拔高,逐渐精彩。

那么我们接下来就一起把大数据生态圈这栋房子开始修建。

2.1 HDFS分布式文件系统

既然要把大数据生态圈这栋房子修建,那么我们首先要进行的就是打建地基。

地基不稳,地动山摇。

HDFS分布式文件系统就好比我的地基。我们知道传统的文件系统是单机的,不能横跨不同的机器。

HDFS分布式文件系统的设计本质上是为了大量的数据能横跨成百上千台机器。

简而言之,把多台机器存储的数据,用一个软件进行统一管理,执行增删改查操作。

万事开头难,我们终于有了HDFS分布式文件系统作为房屋的地基,此刻我们的大数据生态圈房屋是这样的。

image.png

既然此刻,已经有了房屋的地基HDFS,也就是可以进行数据的存储。

吐一口气,算是解决了海量大数据的存储问题。

那么既然有了数据,我就应该去解决海量大数据的计算问题。因此,开始了我们房屋的第一层修建。

2.2 MapReduce计算引擎

当把海量数据存储于HDFS分布式文件系统之后,就开始考虑怎么处理数据。

虽然HDFS可以为你整体管理不同机器上的数据,但是这些数据太大了。在一台服务器读取TP级别的海量数据(比如整个东京热有史以来所有高清电影的大小甚至更大)。

是需要消耗非常多的时间,比如微博要更新24小时热博,它必须在24小时之内处理完海量的数据,显然单机服务器的计算能力是无法完成的。

但是如果我们用很多台服务器,利用这些机器的资源进行分布式处理数据,那么就可以大大的提高执行效率,这就是MapReduce的功能,一种分布式并行处理框架。

到此,我们第一层,计算引擎MapReduce算是正式修建完毕。此时,我们的大数据生态圈房屋是这样的。

image.png

2.3 Hive数据仓库

有了MapReduce分布式处理框架之后我们发现MapReduce的程序写起来很麻烦,对于不懂程序开发的人非常不友好。

希望简化这个过程,能有个更高层更抽象的语言层来描述算法和数据处理流程。

就好比,虽然MapReduce这层房可以住,但是它并不好住,不是喜欢的风格。我们希望能在它基础上进行修改成我们喜欢的style。

于是就有了Hive,开发人员只需要编写简单易上手的SQL语句,它就把SQL语言翻译成MapReduce程序,让计算引擎去执行,从而让你从繁琐的MapReduce程序中解脱出来,用更简单更直观的语言去写程序了。

我们的第二层,Hive数据仓库层算是正式修建完毕。此时,我们的大数据生态圈房屋是这样的。

image.png

2.4 快一点吧 Spark/Flink

其实大家都已经发现Hive后台使用MapReduce作为执行引擎,实在是有点慢。

Spark/Flink应运而生,它是用来弥补基于MapReduce处理数据速度上的缺点,它的特点是把数据装载到内存中计算而不是去读硬盘。

Spark/Flink支持批处理和流处理,是非常先进的计算引擎。

就好比,当我们修建好MapReduce和Hive层后,过了很多年,发现已经过时了。

我们需要该基础上,保留原来风格的同时,进行翻修。于是得到了Spark/Flink。

此时,我们的大数据生态圈楼房已经进化成了这样。

image.png

2.5 Oozie / Azkaban任务调度

在大数据生态圈楼房中,我们已经修建好了计算引擎层,这层每天都需要清洁阿姨定时打扫。于是我们联系了一个家政的阿姨进行每天处理计算引擎层的卫生。

Oozie / Azkaban任务调度组件,就相当于家政阿姨,它需要根据我们设定的时间执行任务。

Oozie / Azkaban任务调度组件只针对于离线批处理任务。

此时,你的大数据生态圈楼房继续升级

image.png

这样,我们就通过任务调度系统,根据我们的需要定时的去处理任务。

2.6 yarn资源管理器

yarn资源管理器,就好比我们修建大数据生态圈时候的房屋的楼层使用说明,哪一层是干嘛的,这些楼层的使用顺序都是规定安排好的,不然那么多层随便使用,会杂乱无章的,有了yarn我们就在大数据生态圈,互相尊重而有序的使用这些楼层。

简而言之,可以把yarn理解为,相当于一个分布式的操作系统平台,而mapreduce等运算程序则相当于运行于操作系统之上的应用程序,Yarn为这些程序提供运算所需的资源(内存、cpu)。

我们的大数据生态圈楼房继续升级。

image.png

2.7 数据采集 Sqoop / Flume / DataX/Kafka

大数据生态圈楼房,所有的楼层和楼层使用顺序设计都已经完成后,我们此时差不多就已经完成了修建。是时候安排人员入住了。那么我们通过什么方式去邀请人来入住呢?

这里的人,就相当于数据,只有有了数据,整个大数据生态圈才有意义。

因此我们就有了Sqoop/Flume/DataX/Kafka。

通过这些工具去采集数据到HDFS文件系统,进而处理数据。

大数据生态圈楼,继续升级

image.png

此时,我们的大数据生态圈楼房,基本的建设可以说是完成。剩余的工作就是一些装饰和家具了。

从以上所述,我们可以知道,大数据生态圈的技术栈多而杂乱,只有让它们有序的组合一起工作。

才能解决海量数据的存储和计算

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
1月前
|
存储 机器学习/深度学习 分布式计算
大数据技术——解锁数据的力量,引领未来趋势
【10月更文挑战第5天】大数据技术——解锁数据的力量,引领未来趋势
|
6天前
|
存储 机器学习/深度学习 SQL
大数据处理与分析技术
大数据处理与分析技术
31 2
|
25天前
|
存储 分布式计算 数据可视化
大数据常用技术与工具
【10月更文挑战第16天】
86 4
|
8天前
|
存储 分布式计算 NoSQL
【赵渝强老师】大数据技术的理论基础
本文介绍了大数据平台的核心思想,包括Google的三篇重要论文:Google文件系统(GFS)、MapReduce分布式计算模型和BigTable大表。这些论文奠定了大数据生态圈的技术基础,进而发展出了Hadoop、Spark和Flink等生态系统。文章详细解释了GFS的架构、MapReduce的计算过程以及BigTable的思想和HBase的实现。
|
1月前
|
存储 数据采集 监控
大数据技术:开启智能决策与创新服务的新纪元
【10月更文挑战第5天】大数据技术:开启智能决策与创新服务的新纪元
|
8天前
|
SQL 存储 算法
比 SQL 快出数量级的大数据计算技术
SQL 是大数据计算中最常用的工具,但在实际应用中,SQL 经常跑得很慢,浪费大量硬件资源。例如,某银行的反洗钱计算在 11 节点的 Vertica 集群上跑了 1.5 小时,而用 SPL 重写后,单机只需 26 秒。类似地,电商漏斗运算和时空碰撞任务在使用 SPL 后,性能也大幅提升。这是因为 SQL 无法写出低复杂度的算法,而 SPL 提供了更强大的数据类型和基础运算,能够实现高效计算。
|
11天前
|
存储 大数据 定位技术
大数据 数据索引技术
【10月更文挑战第26天】
28 3
|
11天前
|
存储 大数据 OLAP
大数据数据分区技术
【10月更文挑战第26天】
41 2
|
14天前
|
消息中间件 分布式计算 大数据
数据为王:大数据处理与分析技术在企业决策中的力量
【10月更文挑战第29天】在信息爆炸的时代,大数据处理与分析技术为企业提供了前所未有的洞察力和决策支持。本文探讨了大数据技术在企业决策中的重要性和实际应用,包括数据的力量、实时分析、数据驱动的决策以及数据安全与隐私保护。通过这些技术,企业能够从海量数据中提取有价值的信息,预测市场趋势,优化业务流程,从而在竞争中占据优势。
47 2
|
16天前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
62 2