大数据技术概述

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
注册配置 MSE Nacos/ZooKeeper,118元/月
简介: 大数据技术概述

一、大数据相关概念

(一)大数据的概念

大数据(Big Data):指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。主要解决,海量数据的存储和海量数据的分析计算问题。

(二)大数据的特征

简称4V:Volume(规模性),Variety(多样性),Velocity(高速性),Value(价值性)。

(三)大数据的构成

大数据分为结构化、半结构化和非结构化三种。

二、大数据处理的基础技术

(一)大数据的处理流程

一般而言,大数据处理流程,我们可分为四步骤:数据采集、数据导入和清洗处理、数据统计分析和挖掘、结果可视化。

1、数据采集:

       大数据的采集一般采用ETL (Extract-Transform-Load )工具负责将分布的、异构数据源中的数据如关系数据、平面数据以及其他非结构化数据等抽取到临时文件或数据库中。

2、数据清洗和预处理:

       采集好数据,肯定不少是重复或是无用的数据,此时需要对数据进行简单的清洗和预处理,使得不同来源的数据整合成一致的,适合数据分析算法和工具读取的数据,如数据去重、异常处理和数据归一化等,然后将这些数据存到大型分布式数据库或者分布式存储集群中。

3、数据统计分析和挖掘:

       统计分析需要用到工具来处理,比如SPSS工具、一些结构算法模型,进行分类汇总以满足各种数据分析需求。

4、结果可视化:

       大数据分析的使用者有大数据分析专家,同时还有普通用户,但是他们二者对于大数据分析最基本的要求就是可视化分析,因为可视化分析能够直观的呈现大数据特点,同时能够非常容易被读者所接受,就如同看图说话一样简单明了。

(二)大数据处理的基础技术

1、分布式计算

       分布式计算是相对于集中式计算而言的,将需要进行大量计算的项目数据分割成小块,由分布式系统中多台计算机节点分别计算,再合并计算结果并得出统一数据结论。

2、分布式文件系统

       分布式文件系统是将数据分散存储在多台独立的设备上,采用可扩展的系统结构,多台存储服务器分担存储负荷,利用元数据定位数据在服务器中的存储位置,具有较高的系统可靠性、可用性和存取效率,并且易于扩展。

3、分布式数据库

       分布式数据库的基本思想是将原来集中式数据库中的数据分散存储到多个通过网络连接的数据存储节点上,以获取更大的存储容量和更高的并发访问量。

       分布式数据库系统可以由多个异构、位置分布、跨网络的计算机节点组成。每台计算机节点中都可以有数据库管理系统的一份完整或部分拷贝副本,并具有自己局部的数据库。多台计算机节点利用高速计算机网络将物理上分散的多个数据存储单元相互连接起来,共同组成一个完整的、全局的,逻辑上集中、物理上分布的大型数据库系统。

4、数据库和数据仓库

数据库和数据仓库在概念上有很多相似之处,但是有本质上的差别。

(1)数据仓库是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策。

(2)数据库是按照一定数据结构来组织、存储和管理数据的数据集合。

数据仓库所在层面比数据库更高,换言之,一个数据仓库可以采用不同种类的数据库实现。

5、云计算与虚拟化技术

(1)云计算

       云计算(Cloud Computing)是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态、易扩展且虚拟化的资源。云是网络、互联网的一种比喻说法。

(2)KVM虚拟机

       KVM(Kernel-based Virtual Machine)虚拟机是开源Linux原生的全虚拟化解决方案,它基于X86硬件的虚拟化扩展(Intel VT 或者 AMD-V技术)。KVM中,虚拟机被实现为常规的Linux进程,由标准Linux调度程序进行调度,而虚拟机的每个虚拟CPU被实现为一个常规的Linux进程。这使得KMV能够使用Linux 内核的已有功能。

(3)云计算与虚拟化的关系

       云计算是个概念,而不是具体技术。虚拟化是一种具体技术,指把硬件资源虚拟化,实现隔离性、可扩展性、安全性、资源可充分利用等。但看似不相关的东西,背后却依然有千丝万缕的关系。 说到虚拟化,一般是指将物理的实体,通过软件模式,形成若干虚拟存在的系统,其真实运作还是在实体上,只是划分了若干区域或者时域。而云计算的基础是虚拟化,但虚拟化只是云计算的一部分。云计算是在虚拟化出若干资源池以后的应用。

       虚拟化广泛应用与IT领域中,针对不同的资源,有着不同的虚拟化技术,如今我们可以给虚拟化大致分为四类:内存虚拟化、网络虚拟化、服务器虚拟化、存储虚拟化。

内存虚拟化:是指利用虚拟化技术实现对计算机内存的管理。从上层应用来看,内存虚拟化系统使得其具有连续可用的内存,即一个连续而完整的地址空间。从物理层来看,通常被分割成多个物理内存碎片。

存储虚拟化:存储虚拟化是将存储资源进行逻辑视图和物理存储分离,从而为系统提供无缝的资源管理。

网络虚拟化:网络虚拟化是利用软件从物理网络元素中分离网络的一种方式,网络虚拟化与其他形式的虚拟化有很多共同之处。

服务器虚拟化:服务器虚拟化是将服务器的CPU、内存、磁盘等硬件集中管理,通过集中式的动态按需分配,提高资源的利用率。

       云计算的原理更多的是利用了计算虚拟化,当然,其他三种可能在一些云计算中也会有应用,但是虚拟化并不仅仅只服务云计算。

三、流行大数据技术

(一)流行的大数据技术各个阶段

架构设计技术:Flume、Zookeeper、Kafka

采集技术:Python、Scala

存储技术:Hbase、Hive、Sqoop

计算技术: Mahout、Spark、Storm

可视化技术:Echart、Superset

(二)Hadoop生态系统

Hadoop是一个开源的大数据分析软件,集合了大数据不同阶段技术的生态系统,其核心是Yarn、HDFS和MapReduce,集成了Spark生态圈。

(三)Hadoop核心组件简要介绍

1、HDFS(Hadoop分布式文件系统)

 HDFS是Hadoop体系中数据存储管理的基础,它是一个高度容错的系统,能检测和应对硬件故障,用于在低成本的通用硬件上运行。简化了文件的一致性模型,通过流式数据访问,提供高吞吐量数据访问能力,适合带有大型数据集的应用程序。提供了一次写入多次读取的机制,数据以块的形式,同时分布在集群的不同物理机器上。HDFS 的架构是基于一组特定的节点构建的。这些节点包括 NameNode(仅一个),在 HDFS 内部提供元数据服务;若干个DataNode为 HDFS 提供存储块。

2、MapReduce(分布式计算框架)

        MapReduce是一种分布式计算模型,用于大数据计算,它屏蔽了分布式计算框架细节,将计算抽象成Map和Reduce两部分,其中Map对数据集上的独立元素进行指定的操作,生成键-值对形式的中间结果。Reduce则对中间结果中相同“键”的所有“值”进行规约,以得到最终结果。

       MapReduce提供了以下的主要功能:数据划分和计算任务调度,数据/代码互定位,系统优化,出错检测和恢复。

3、HBase(分布式列存数据库)

       HBase是一个建立在HDFS之上,面向列的针对结构化数据的可伸缩、高可靠、高性能、分布式数据库。 采用了BigTable的数据模型:增强的稀疏排序映射表(Key/Value),其中,键由行关键字、列关键字和时间戳构成。 提供了对大规模数据的随机、实时读写访问,同时,HBase中保存的数据可以使用MapReduce来处理,它将数据存储和并行计算完美地结合在一起。 HBase利用Hadoop HDFS作为其文件存储系统,并利用Hadoop MapReduce来处理HBase中的海量数据,利用Zookeeper提供协同服务。

4、Zookeeper(分布式协同服务)

       Zookeeper是一个为分布式应用提供协同服务的软件,提供包括配置维护、域名服务、分布式同步、组服务等功能,用于解决分布式环境下的数据管理问题。Hadoop的许多组件依赖于Zookeeper,用于管理Hadoop操作。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

5、Hive(数据仓库)

       Hive是基于Hadoop的一个数据仓库工具,最初用于解决海量结构化日志数据的统计问题。Hive使用类SQL 的HiveQL 语言实现数据查询,并将HQL转化为在Hadoop上执行的MapReduce任务。Hive用于离线数据分析,可让不熟悉MapReduce的开发人员,使用HQL实现数据查询分析,降低了大数据处理应用门槛。Hive 本质上是基于HDFS上的应用程序,其数据都存储在Hadoop兼容的文件系统(例如,Amazon S3、HDFS)中。

四、大数据应用场景

1、物流仓储:大数据分析系统助力商家精细化运营、提升销量、节约成本。

2、零售:分析用户消费习惯,为用户购买商品提供方便,从而提升商品销量。

3、旅游:深度结合大数据能力与旅游行业需求,共建旅游产业智慧管理、智慧服务和智慧营销的       未来。

4、商品广告推荐:给用户推荐可能喜欢的商品。

5、保险:海量数据挖掘及风险预测,助力保险行业精准营销,提升精细化定价能力。

6、金融:多维度体现用户特征,帮助金融机构推荐优质客户,防范欺诈风险。

7、房产:大数据全面助力房地产行业,打造精准投策与营销,选出更合适的地,建造更合适的楼,卖给更合适的人。

8、人工智能:

五、大数据发展前景

1、党的十八大提出“实施国家大数据战略”,国务院印发《促进大数据发展行动纲要》,大数据技术和应用处于创新突破期,国内市场需求处于爆发期,我国大数据产业面临重要的发展机遇。党的十九大提出“推动互联网、大数据、人工智能和实体经济深度融合”。

2、国际数据公司IDC预测,到2020年,企业基于大数据计算分析平台的支出将突破5000亿美元。目前,我国大数据人才只有46万,未来3到5年人才缺口达150万之多。

3、2017年北京大学、中国人民大学、北京邮电大学等25所高校成功申请开设大数据课程。

4、大数据属于高新技术,大牛少,升职竞争小。

5、智联招聘网站上的大数据工程师薪水如下:

6、大数据部门组织结构:适用于大中型企业。


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