此文为个人平时学习对大数据的个人理解笔记分享,有不对的地方还请大佬多指正,谢谢。
大量的数据,等级在TB=1024GB,PB,EB级别
主要用于解决大量数据的 处理&分析,两大难题就是 如何存&如何算
难度级别(灾难到平民):平台—》数据挖掘/报表开发—〉实时指标分析性能调优—》数据仓库
1.GFS(Google File System) —>HDFS(Hadoop Distributed File System)
最先用到大数据的永远是搜索引擎,比如国内最早用的是百度,用的是分布式存储的思想,大意是大文件分多份小份复制之后储存在多部电脑里,目标:为了保证大数据很多细节数据不易丢失且可以提高查找数据的效率。
2.Map-Reduce (分布式计算框架)—> MR
3.BigTable(分布式数据库)—>HBase
其中,Hadoop实现了HDFS&&Map-Reduce的功能
1.Map-Reduce(计算):管算的
2.Yarn(资源调度)//解藕:目标是为了分配资源(可以理解为人员)进行大数据计算
**3.HDFS(数据存储):**管存的
4.Common(辅助工具,相比而言不重要)
大概思路:调度资源对数据存储里的数据进行计算
问:如果把大象(大数据)装进冰箱(储存)需要分几步?
答:第一步,把冰箱门打开(来几个10t硬盘)
第二步,把大象塞进去(冰箱的架构是什么?)
NameNode对应主机黑手党老大,记录存储大象的元数据,比如大象的体重,颜值等级,脂肪含量;;;对应的是文件名,文件目录结构,文件属性
Datanode 对应帮派小弟,打工人,具体存文件数据(quantitative)
Second NameNode(2NN) 对应黑手党会计,管家助手,每隔一段时间对数据进行备份
注:2nn不是n的热备,也就是说n挂了2nn不会顶上去(管家不能继承黑手党老大的位置)
第三部,把冰箱门关上
----------------------------------计算机可调用的部分为cpu和内存,磁盘为hdfs管
主机(红星老大):resource manager
从机(陈近南,地区扛把子):node manager 负责管理节点的cpu和内存(管自己地区 的小弟,也就是数据,这些小弟和扛把子构成集群)
每个扛把子把自己有多大能耐汇报给社长老大,老大就知道说:我这个帮的上限在哪了
client(财阀)找到红星老大(主机)办事,老大叫来陈近南,陈近南分析一下汇报给老大说:“如果把事情办成,我还需要山鸡(其他的扛把子)等一起”(资源申请),老大去分配其他扛把子给他
这个时候陈近南担任分析的职位叫app master(设计师)----陈近南有两个职位。
等事情办完了结束了,陈近南就回到了扛把子的职位
注:一个活有且只有一个app master,一个app master可以一次接很多个活(多个client),方法是以container(类似虚拟机)
这是一个java程序,不是集群,是一个计算流程
阶段1.Map分(把寻找的任务分配给小弟)
阶段2.Reduce汇总(小弟汇总情况,谁找到谁没找到给汇总服务器)
kafka消息队列:数据的缓冲区
推荐系统架构