1 大数据的概念
-
什么是大数据
-
大量的数据 -> PB/EB级数据
-
学习的大数据技术就是通过一些技术存储和处理大量的数据
-
数据的存储单位
- bit 位 1Byte=8bit 最小单位
- Byte 字节
- KB 1024
- MB
- GB
- TB
- PB
- EB
- ZB(全球数据)
-
-
大数据技术可以解决的问题
- 海量数据的存储 -> hdfs
- 海量数据的计算 -> hive spark flink
- 是一种处理模式:采用非常规软件解决常规软件处理不了的数据
-
MySQL处理结构化数据(有行有列)
-
非结构化数据(key-value):图片,视频,音频
-
半结构化:一部分结构一部分非结构化
-
MySQL一般要求数据不超过500万,如果超了就分库分表,否则速度就会变慢甚至计算不出来
-
硬件迭代没有达到一定程度,大数据就不易被取代;随着社会的发展数据体量会越来越大;大数据为人工智能提供训练数据,人工智能发展越好,大数据发展越好。
-
大数据最少三台服务器,再少容易出错
-
IP地址和Mac地址不一样就是两台虚拟机
2 大数据的特点
- 大 -> 海量的数据 2020年全球数据总量是35ZB
- 多
- 种类多: 结构化数据(有行有列,类似于excel表格, 二维数据), 半结构化数据, 非结构化数据
- 数据源多: 日志, 埋点采集, 视频, 音频, 文本, 三方获取, …
- 值 -> 低价值度密度: 数据中提取有价值的数据
- 速度 -> 产生, 获取, 计算的速度快
- 信 -> 准确度和可信赖度: 实现数据分析时是要通过有价值的数据(经过处理的数据)进行分析得到结论
3 大数据的应用场景
- 金融行业 -> 反欺诈模型(喂大量的数据)
- 互联网行业 -> 计算广告(通过用户的数据推送感兴趣的广告)
- 推荐系统 -> 通过大量数据训练一些模型,实现推荐功能
- 学习了大数据,我们需要做的内容主要是 数据存储和数据计算
4 大数据开发业务流程
- 明确分析的目的和思路
- ※※ 获取(采集)数据 -> sqoop flume
- ※※ 数据处理 (ETL)-> 提取,清洗(处理缺失值, 异常值, null值),转换,加载(hive,spark)
- ※※ 数据分析(统计,建模,挖掘) -> 统计计算, 计算一些指标(订单金额,订单数量)
- 数据可视化 -> 出一些图表, 报表 将计算的结果通过图表形式展示给业务人员
- 撰写报告 -> 通过计算结果得到一些结论 PPT做汇报
5 大数据工作岗位
- 离线数仓
- 数仓开发工程师
- 大数据开发工程师
- hadoop工程师
- spark内存计算工程师
- 实时计算
- 实时计算工程师
- flink工程师
- spark实时
- ETL工程师 -> 数据处理 2.5w
- 数据挖掘->机器学习算法
- BI工程师, 报表工程师, 帆软工程师 2.5w
6 计算机组成
-
硬件系统
- 看得见摸得到
- 鼠标,键盘,显示器,内存条,硬盘,声卡,显卡,…
-
软件系统
- 看得见摸不着
- 系统软件
- 操作系统 -> 计算机程序, 管理和控制硬件/软件的资源
- windows系统 个人版 企业版 闭源收费
- mac/unix系统 闭源收费
- linux系统 开源免费 公司服务器使用最多的 现在也有个人版
- 安卓系统 基于linux系统 开源免费
- ios系统 闭源收费
- 编译程序 py文件, java文件, sql文件
- 操作系统 -> 计算机程序, 管理和控制硬件/软件的资源
- 应用软件
- 程序员开发的是应用软件
- qq,微信,wps,…
7.大数据思想
-
分布式:任务分解,职能拆解,每台电脑做不同的事(多个人做不同的事)
-
出现的问题:单点故障
-
集群:若干计算机联合起来工作,同一个业务部署到不同服务器上(多个人做同样的事)
-
Hadoop 组件/技术栈:文件系统,分布式计算,资源管理
- HDFS 文件存储
- YARN 资源管理器
- MapReduce 分布式计算
-
优点:扩容能力,可靠性,成本低,通用性、简单
-
HDFS角色
- 主角色:NameNode 对接客户
- 从角色:DataNode 存储
- 主角色辅助角色:SecondaryNameNode 辅助存储
-
hive组件是工具
-
hive工具管理数仓,没有存储功能
-
数仓部署在hdfs
-
基于hadoop的数仓工具
-
hadoop解决存储和计算
-
hive的作用
- 把结构化文件映射成表
- 将sql解析成mr代码,交给MapReduce数据(格式要求键值对)分析
-
操作过程
- 读文件
- 按,切分行数据
- 取第三个数据,判断是否大于25
- 取第四个数据,判断是否为上海
- count++ 累加
- hive映射 :文件与表之间的对应关系,hive元数据(存储在MySQL中)metadata