【大数据】大数据概论与Hadoop

目录

1.大数据概述

1.1.大数据的概念

1.2.大数据的应用场景

1.3.大数据的关键技术

1.4.大数据的计算模式

1.5.大数据和云计算的关系

1.6.物联网

2.Hadoop

2.1.核心架构

2.2.版本演进

2.3.生态圈的全量结构


1.大数据概述

1.1.大数据的概念

大数据即字面意思,大量数据。那么这个数据量大到多少才算大数据喃?通常,当数据量达到TB乃至PB级别时,传统的关系型数据库在处理能力、存储效率或查询性能上可能会遇到瓶颈,这时考虑采用大数据技术是合理的。

当然可以通过分库分表等方式来让关系型数据库来强行抗住这个量级,所以数据量大外数据结构是不是够杂(结构化、半结构化、非结构化数据)也是要不要上大数据技术的重要考量点。

当然数据杂也可以通过关系型+非关系型数据库(如MySQL+MongoDB+ES)组合式的存储来分别存储,所以还要看要求对数据的使用上的诉求是什么?实时或近实时的分析处理(例如实时推荐系统、金融风控、物联网监控等),这些对数据的使用方式上需要对大量数据进行计算,而不再是关系型数据库中那种小批量的增删改查,这时候即使是用了组合式的存储来存放数据,要去各种存储上跑计算任务再汇总到一起,明显是很低效的,这时候上大数据技术就是十分合理的。

大数据场景中的数据往往具有4V的特点:

  • 大量化:数据量大。
  • 快速化:增长速度快。
  • 多样化:数据类型多样,结构化、非结构化都有。
  • 价值密度低:价值密度低,商业价值高。

1.2.大数据的应用场景

大数据的应用总结起来就是:决策、预测。

1.零售行业
个性化推荐:基于用户购物历史、浏览记录、社交媒体行为等数据,实现商品个性化推荐,提高转化率和用户满意度。
库存优化:通过分析销售数据、季节性趋势、供应链信息等,精准预测需求,减少库存积压,提升供应链效率。
价格策略:利用市场动态、竞品分析、消费者敏感度数据制定动态定价策略,提高竞争力和利润水平。
客户细分与营销:对客户数据进行聚类分析,识别不同消费群体特征,实施精细化营销策略。
2. 金融行业
风险评估与管理:运用大数据分析进行信用评分、欺诈检测、市场风险预测,提升信贷决策准确性,降低风险敞口。
交易监控与反洗钱:实时监测异常交易行为,运用机器学习算法识别潜在的洗钱活动,确保合规运营。
投资决策支持:结合宏观经济数据、公司财务报告、社交媒体情绪等多元数据源,辅助投资者进行量化投资分析和策略制定。
3. 教育行业
学生学习行为分析:通过分析在线学习平台数据,了解学生学习进度、难点、偏好,提供个性化教学建议和资源推荐。
教育资源优化:依据课程访问量、完成率、互动数据等,评估教学效果,优化课程设计与资源配置。
教育政策制定:利用大数据研究教育公平、教学质量、就业趋势等问题,为教育政策制定提供数据支持。
4. 医疗行业
疾病预测与预防:通过对电子病历、基因组数据、生活方式数据的分析,预测疾病风险,指导早期干预和预防措施。
精准医疗:基于个体基因、生理指标、环境因素等大数据,制定个性化治疗方案,提高疗效和患者生活质量。
医疗资源管理:利用大数据预测医疗需求,优化医院床位、设备、人力资源分配,提升医疗服务效率。
5. 市场营销与客户关系管理
市场趋势分析:通过分析社交媒体、搜索引擎、行业报告等数据,洞察市场动态、消费者偏好变化,指导产品开发和市场定位。
精准广告投放:基于用户画像、行为数据、地理位置等信息,实现广告的定向投放和效果优化。
客户满意度与忠诚度提升:利用客户反馈、社交媒体舆情、购买行为数据,识别影响满意度的关键因素,制定针对性的改进策略。
6. 其他行业与通用场景
智慧城市:集成交通、能源、环境、公共服务等多源数据,实现城市运行状态监测、资源调度优化、应急响应管理等。
工业制造:通过设备数据、生产流程数据的实时分析,实现预测性维护、质量控制、产能优化等智能制造应用。
社交媒体分析:挖掘用户社交网络行为、情感倾向、话题热度等数据,为企业品牌管理、舆情监控、产品推广提供决策支持。

1.3.大数据的关键技术

大数据技术,其实就是一套解决方案,是基于各种现实的业务场景的成功的解决方案的总结。

大数据技术可以看作对传统技术的延申,是由于大数据的量传统技术不是很好应付了才出现了大数据的解决方案。传统的单点扛不住,扩集群,集群也扛不住就可以考虑大数据,或者即使集群扛得住,但是数据类型太杂了需要也可以考虑大数据。所以大数据和传统技术只是AB两套方案罢了。

大数据的整个流程:

数据采集->数据存储与管理->数据处理与分析

其中最为核心的是:数据存储和数据分析,也就是:

  1. 数据的存储

  2. 数据的运算

1.数据存储

其实就是当数据量很小的时候,存在单台机器上,当单台机器扛不住的时候存在多台机器上。存在多台机器上就需要进行统一的管理,对外给出统一的API让操作者去操作整个集群中的数据,让操作者体感愉悦,感知上觉得面对的就是一台存储容量无限大的单点服务器。

统一的管理、统一的操作API,这两点合在一起,像不像个系统?是的,这就是大数据中的存储系统,分布式文件系统——HDFS。

2.数据的运算

花这么大代价用HDFS存储起来的数据肯定不是拿来看的,而是要用起来的,是要用于计算的。在大数据系统中由于其存储采用了分布式的架构,计算任务不再是单点的,而是分布式的,是要分发到集群中的各个存储节点上去的,由各个结点计算后汇总出最终的结果。很明显这种多节点间的协作计算是需要进行任务调度的,这就是分布式计算引擎需要干的活儿,经典的分布式计算引擎是HDFS中内置的——MapReduce。其主要就是负责计算任务的调度。

除此之外还有一个目前市面上常用的强力的计算引擎——spark。mapreduce是基于磁盘的计算,spark是基于内存的计算,两者之间互有优劣。

扩展功能

有HDFS+MapReduce其实大数据系统就已经可以工作了,但是每次对数据进行查询都要写mapreduce任务,作为一个分布式的处理程序,mapreduce的任务写起来还是要求一些专业的计算机背景的。为了能像SQL一样,方便的查询HDFS中的数据,从而将使用者从繁琐的mapreduce的编写中解放,出现了hive之类的分布式系统的结构化数据解决方案。

1.4.大数据的计算模式

计算模式,即大数据的数据的运算是什么类型的?根据不同的需求计算可以分为三种模式:

  • 批处理

  • 流计算

  • 图计算

  • 交互式计算

批处理:

批处理即数据准备好一批算一批,任务是在已经准备好的一批数据上进行计算的,并不是实时计算的,也无法达到秒级响应的。

代表技术:mapreduce、spark

流计算:

流计算即实时计算,数据过来就算,针对的就是每时每刻来的数据量大,需要给出实时响应的场景。

代表技术:storm、flume

图计算:

针对数据结构都是图结构的数据进行计算,如社交网络数据、地理信息数据。

交互式计算:

前面的几种计算都是预先准备好了计算任务,交互式计算的计算任务是随时自定义的,随时发命令给系统,系统针对命令给出计算响应。

1.5.大数据和云计算的关系

云计算即通过网络以服务的方式为用户提供非常廉价的IT资源。用户不用去自建设施,直接找云计算厂商购买服务即可。

云计算所能提供的服务分为三层:

  • SaaS,基础设施即服务,即将基础设施作为服务出租(计算资源和存储)。主要是面向用户的。

  • PaaS,平台即服务,在基础设施上包了一层,即将开发平台作为服务出租,用户只负责开发,剩下的部署、监控等一系列功能都交给平台去做。主要是面向开发者的。

  • IaaS,软件即服务,这个很好理解,就是直接提供运算的软件来用了。比如传统的金蝶财务软件是部署在本地的,放在云上提供服务后就变成了典型的IaaS。

经常听到“数据中心”就是厂商建立的物理服务器集群,专门用来提供云计算服务。

1.6.物联网

物联网无非就是采集终端采集数据然后通过网络上传到数据中心。其核心的问题在于:

  • 识别

  • 感知

识别,即识别哪些数据是哪个设备的。

感知,即数据采集。

2.Hadoop

2.1.核心架构

apache旗下顶级开源项目,是一个大数据生态圈,由多个组件组成。

Hadoop两大核心组件:

  • 分布式文件系统HDFS,其实就是GFS的开源实现。

  • 分布式计算引擎MapReduce。

整个生态圈的核心架构:

备注:MR就是map reduce

2.2.版本演进

首先要注意Hadoop有多个分支。apache相当于其中的主分支,很多大公司还有属于自己版本的hadoop,apache的Hadoop分为两个版本:

1.0和2.0的区别:

1.0的时候mapreduce纪要做计算工作还要自己去调度各个节点的资源来为计算工作服务。

2.0的时候将资源调度功能抽成了一个独立的框架yarn,mapreduce只负责计算工作。由于yarn来进行了资源调度,在其之上就可以接入很多不同的计算框架,将资源调度都给yarn,于是2.0版本开始衍生出了很多其它计算框架,如storm、spark等。

其次2.0的时候对HDFS,使用namenode的方式在高可用性上进行了增强。

疑问:yarn做了哪些调度?为什么要做调度?

2.3.生态圈的全量结构

整个hadoop项目,或者说生态圈的全量结构如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/801517.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SRIO学习(3)使用SRIO IP核进行设计

文章目录 前言一、设计框图二、模块介绍三、上板验证 前言 本文将通过使用SRIO IP核实现数据通信,重点在于打通数据链路,具体的协议内容设计并非重点,打通了链路大家自己根据设计需求来即可。 一、设计框图 看了前面高速接口的一些设计&am…

探索算力(云计算、人工智能、边缘计算等):数字时代的引擎

引言 在数字时代,算力是一种至关重要的资源,它是推动科技创新、驱动经济发展的关键引擎之一。简而言之,算力即计算能力,是计算机系统在单位时间内完成的计算任务数量或计算复杂度的度量。随着科技的不断发展和应用范围的不断扩大…

流式密集视频字幕

流式密集视频字幕 摘要1 IntroductionRelated Work3 Streaming Dense Video Captioning Streaming Dense Video Captioning 摘要 对于一个密集视频字幕生成模型,预测在视频中时间上定位的字幕,理想情况下应该能够处理长的输入视频,预测丰富、…

C语言 | Leetcoce C语言题解之第18题四数之和

题目: 题解: int comp(const void* a, const void* b) {return *(int*)a - *(int*)b; }int** fourSum(int* nums, int numsSize, int target, int* returnSize, int** returnColumnSizes) {int** quadruplets malloc(sizeof(int*) * 1001);*returnSize…

企业版ChatGPT用户激增至60万;百度文心一言推出个性化声音定制功能

🦉 AI新闻 🚀 企业版ChatGPT用户激增至60万 摘要:OpenAI首席运营官Brad Lightcap在接受采访时透露,企业版ChatGPT的注册用户已超60万,相较2024年1月的15万用户,短短三个月内增长了300%。这一版本自2023年…

C++11新特性(2) ——动态内存和智能指针从入门到入坑

动态内存与智能指针 动态内存的使用十分容易出现问题(内存泄漏/非法内存),而智能指针能更安全、容易的使用动态内存,因为他负责自动释放所指向的对象,并且在出现异常时,也会自动释放。 两种智能指针&#…

《springcloud alibaba》 四 seata安装以及使用

目录 准备调整db配置准备创建数据库 seata配置nacos配置confi.txt下载向nacos推送配置的脚本 启动seata新建项目order-seata项目 订单项目数据库脚本pom.xmlapplication.yml启动类实体类dao类service类controller类feign类mapper类 stock-seata 库存项目数据库脚本pom.xmlappli…

STM32学习和实践笔记(5):时钟树

STM32一共有4个时钟源。外部时钟高低速各一个,内部时钟高低速各一个。 外部高速时钟是:4-16MHZ的HSE OSC。HS表示高速high speed. E表示外部的external。开发板该处安装的8M晶振。 外部低速时钟是:32.768KHz的LSI OSC。LS表示高速low speed…

为说阿拉伯语的国家进行游戏本地化

阿拉伯语是由超过4亿人使用的语言,并且是二十多个国家的官方语言。进入这些国家的市场并非易事——虽然他们共享一种通用语言,但每个国家都有自己独特的文化,有自己的禁忌和对审查的处理方式。这就是为什么视频游戏公司长期以来都远离阿拉伯语…

Qt QML的插件(Qt Quick 2 Extension Plugin)方法

Qt Quick的插件方法 序言环境前置注意概念——Qt Quick插件的相关知识插件里的qml文件模块名的相关知识模块名本身注意事项模块名版本注意事项 以示例来说明创建插件qmltypes的生成qmltypes的可能性失效 插件的编码注意1、插件模块版本控制2、pro里的注意 调用插件插件信息输入…

华为手机 鸿蒙系统 或者安卓系统的百度网盘下载的文件保存在手机什么位置如何查看

华为手机 鸿蒙系统 或者安卓系统的百度网盘下载的文件保存在手机什么位置如何查看 连接电脑后一般在这里位置 计算机\Mate 20 Pro (UD)\内部存储\Download\BaiduNetdisk 也就是用usb(数据线,不是充电线,要四心的 )连接手机后,打…

计算机网络——40各个层次的安全性

各个层次的安全性 安全电子邮件 Alice需要发送机密的报文m给Bob Alice 产生随机的对称秘钥, K s K_s Ks​使用 K s K_s Ks​对报文进行加密(为了效率)对 K s K_s Ks​使用Bob的公钥进行加密发送 K s ( m ) K_s(m) Ks​(m)和 K B ( K S ) K…

uniapp如何配置后使用uni.chooseLocation等地图位置api

在uniapp中想要使用uni.getLocation、uni.chooseLocation ……api的时候我们需要在小程序就开启配置,不然无法使用。 第一步:首先找到manifest.json 第二步:点击源码视图 第三步:在 mp-weixin 加入下面代码 "permission&…

Paper Digest | GPT-RE:基于大语言模型针对关系抽取的上下文学习

持续分享 SPG 及 SPG LLM 双驱架构应用相关进展 1、动机 在很多自然语言处理任务中,上下文学习的性能已经媲美甚至超过了全资源微调的方法。但是,其在关系抽取任务上的性能却不尽如人意。以 GPT-3 为例,一些基于 GPT-3 的上下文学习抽取方…

DXP学习002-PCB编辑器的环境参数及电路板参数相关设置

目录 一,dxp的pcb编辑器环境 1,创建新的PCB设计文档 2,PCB编辑器界面 1)布线工具栏 2)公用工具栏 3)层标签栏 ​编辑 3,PCB设计面板 1)打开pcb设计面板 4,PCB观…

【HTML】简单制作一个分形动画

目录 前言 开始 HTML部分 效果图 ​编辑​编辑​编辑​编辑总结 前言 无需多言,本文将详细介绍一段代码,具体内容如下: 开始 首先新建文件夹,创建一个文本文档,其中HTML的文件名改为[index.html]&a…

JavaEE初阶之单例模式详解

目录 题外话 正题 单例模式 概念 优点 缺点 饿汉式单例模式 代码及详解 懒汉式单例模式 代码及详解 小结 题外话 昨天爬山去了,回来吃了个烧烤有点累,昨天旷了一天,每周稳定发个五篇文章是没什么太大问题的 正题 单例模式 概念 是一种常见的软件设计模式,确保一个类…

nginx 配置访问地址和解决跨域问题(反向代理)

1、配置访问地址(通过ip访问) //配置ip访问地址 location ^~/auditApp{alias /usr/local/front-apps/cbd/auditApp;index index.html;if (!-e $request_filename) {rewrite ^/(.*) /auditApp/index.html last;break;}} 2、解决跨域问题&…

电商技术揭秘十四:大数据平台的选择与构建

相关系列文章 电商技术揭秘一:电商架构设计与核心技术 电商技术揭秘二:电商平台推荐系统的实现与优化 电商技术揭秘三:电商平台的支付与结算系统 电商技术揭秘四:电商平台的物流管理系统 电商技术揭秘五:电商平台…

如何使用Java和RabbitMQ实现延迟队列(方式二)?

前言 昨天写了一篇关于Java和RabbitMQ使用插件实现延迟队列功能的文章,今天来讲下另外一种方式,不需要RabbitMQ的插件。 前期准备,需要安装好docker、docker-compose的运行环境。 需要安装RabbitMQ的可以看下面这篇文章。 如何使用PHP和R…