基础知识模块:
什么是大数据现有传统数据库软件大数据能做什么大数据从事的岗位学习的技术大数据项目流程什么是服务器服务器的类型数据的存储单位什么是集群什么是网络什么是交换机什么是局域网什么是网络拓扑传统数据与大数据的对比大数据的特点传统Linux系统与大数据linux系统安装的区别做RAID不做RAID大数据技术快的原因Hadoop内部组成
什么是大数据
数据集(数据量)的大小已经超过了现有传统数据库软件的计算、处理能力的数据就是大数据
现有传统数据库软件
MysqlSQL (一亿) SQLServer Oracle(十亿) DB2
大数据能做什么
前提:在海量数据的背景下
海量数据的快速查询海量数据的存储海量数据的快速计算海量数据的实时计算海量数据的数据挖掘
大数据从事的岗位
ETL工程师数据仓库工程师大数据开发工程师Hadoop工程师Spark/Flink工程师大数据分析师大数据算法工程师大数据运维工程师大数据解决方案
学习的技术
大数据项目流程
1、数据生产 2、数据收集 3、数据存储 4、需求分析 5、数据预处理 6、数据计算 7、结果数据存储 8、结果数据展示
什么是服务器
也称伺服器,是一种高性能计算机,提供计算服务的设备。
服务器的类型
用途 通用性和专用型服务器按机箱划分 1U 2U 4U 价值2w-15w 塔式服务器 刀片机 小型机 价值几百万 大型机 价值几千万硬盘的划分 机械硬盘 SSD固态硬盘 混合硬盘
数据的存储单位
最小的基本单位是bit
1 Byte =8 bit
1 KB = 1,024 Bytes = 8192 bit
KB MB GB TB PB EB ZB YB BB NB DB 进率1024
什么是集群
集群是一组相互独立的、通过高速计算机网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。
什么是网络
计算机网络是指 将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。
什么是交换机
交换机(Switch)意为“开关”是一种用于电(光)信号转发的网络设备
什么是局域网
局域网是指在某一区域内由多台计算机互联成的计算机组
什么是网络拓扑
网络拓扑(Network Topology)结构是指用传输介质互连各种设备的物理布局
类型
以太网
优点:价格低廉、随处可见、软件支持比较丰富
缺点:网络传输时延时较大,吞吐量较小
适用场景:构建常用的局域网络
InfiniBand网络
优点:吞吐量高,速度快、延时低
缺点:价格昂贵,软件支持比较少
适用场景:在高速网络环境中适用
传统数据与大数据的对比
大数据的特点
海量化:数据量庞大 Tb是基本单位多样化:数据类型比较多。例如:结构化数据(关系型数据库)、半结构化数据、非结构化数据快速化:数据量的增长速度非常快高价值:海量数据中含有的价值比少量数据更高。本质:少量数据是微观角度,海量数据是宏观角度。宏观角度看待数据相对更真实。
传统Linux系统与大数据linux系统安装的区别
传统:
系统硬盘(与数据硬盘100%隔离)
两块硬盘做一个RAID1
引导分区 200M
交换分区 内存的两倍
根分区 /(所有的空间)
数据硬盘
多个硬盘制作一个逻辑卷,即将多个物理硬盘制作成一个大的逻辑硬盘
大数据:
系统硬盘(与数据硬盘100%隔离)
两块硬盘做一个RAID1
引导分区 200M
交换分区 可以不设置或设置的很小。因为在大数据中需要将其关闭
根分区 /(所有的空间)
数据硬盘
多个硬盘,每个硬盘独立挂载,有多少个硬盘,挂载多少个目录
数据硬盘优先不做RAID,必须做时,做RAID0
RAID
RAID0: 物理层连不做备份(冗余)空间使用率100%
RAID1: 两块硬盘做一个Raid1,物理层连做一份数据备份,空间使用率50%
传统 大数据
做RAID
优点:数据的读写效率稍高,缺点:不支持热插拔。一个硬盘损坏,整个服务器需要全部关机再能处理该硬盘。
不做RAID
优点:支持热插拔。硬盘损坏即把即插。不用关机。缺点:数据的读写效率稍低。
大数据技术快的原因
分布式存储分布式并行计算移动程序到数据端更前卫、更先进的实现思路更细分的业务场景更先进的硬件技术+更先进的软件技术
Hadoop内部组成
HDFS: 海量数据的存储
MapReduce: 海量数据的离线计算
Yarn: 集群资源调度
HDFS全称 Hadoop Distribute File System 即 Hadoop分布式文件系统 主要作用:
即存储海量数据
为什么能存储海量数据??
因为其空间大,空间大的原因为服务器多、磁盘多。且支持扩展
组成部分:
管理者-Master NameNode 集群中有1-2个,用于管理集群中的工作者
工作者-Slave DataNode 集群中有多个,真正存储和计算数据组件
辅助管理 SecondaryNameNode 辅助管理者工作