-
大数据的应用场景
大数据解决了什么问题?
海量数据的存储 和 计算.应用场景:
各行各业. -
大数据的特点 //简称: 5V
//大多值快信. -
分布式 和 集群详解
分布式: 多个人做不同的事儿, 然后构成1个整体.
集群: 多个人做同样的事儿.详见: 笔记中图片.
-
Zookeeper简介
它是大数据分布式协调服务组件,帮我们管理大数据框架的, 类似于管家, 例如: 主备切换, 投票选举.它本身也是一个小型文件管理系统, 可以存储和管理数据. // 根目录/, 每个节点都是Znode(既可以存数据, 也可以有子节点)
//详见图片. -
Zookeeper的特点
//全局数据一致性(最重要的), 可靠性, 时效性, 顺序性, 数据更新一致性(要么成功, 要么失败, 过半原则) -
Zookeeper的数据模型
//树状结构, 类似于Linux.//ZK中没有文件和文件夹的概念, 都是Znode节点, 可以存储, 也可以有子节点(临时节点除外)
Znode节点的划分:
//永久节点, 临时节点, 永久有序, 临时有序.详见图片.
-
Zookeeper中的常用命令
//其实你只要记住 help, 它会展示出 Zookeeper中的所有常用命令, 这些命令基本上你一看就能看明白.
//例如: create, rm, rmr, ls, ls2, set, get, watch(监听)启动Zookeeper集群之后, 可以通过 ./zkCli.sh 的方式 进入到ZK的客户端.
help //展示ZK中所有的常用命令
create [-s] [-e] path data //创建节点,默认是: 永久节点, 加-s是有序节点(Sequential), 加-e是临时节点(Ephemeral)set path data [version] //修改节点的内容 ls path [watch] //查看该节点下有哪些子节点 ls2 path [watch] //查看节点的详细信息 history //查看历史命令的, 即: 你执行过哪些命令 redo cmdno //重新执行 你已经操作过的命令 delete path [version] //删除节点, 注意: 如果有子节点, 则无法删除 rmr path //删除节点, 有子节点则一同删除 get path [watch] //获取节点的内容. quit //退出本次会话 close
-
ZK的典型应用
- 数据的发布和订阅
- 选举机制.
- 分布式锁.
//本质还是抢占式创建临时节点, 成功: Active, 失败: StandBy
-
Hadoop简介
由来:
Hadoop之父叫 Doug Cutting(道格·卡廷, 俗称: 卡大爷), 他是Java出来, 之前写过一个非常好用的爬虫架构叫: Nutch,
但是他遇到了个问题, 如何存储海量的数据呢? 如何高效的分析海量的数据呢?
这个时候, 谷歌的3篇文章给了他灵感, 于是就有了如下的这些技术:
谷歌的3篇文章, 也被称之为 大数据的 三驾马车:
2003年, Google发表 GFS(Google FileSystem, 谷歌的文件系统) => HDFS(Hadoop Distributed FileSystem, Hadoop分布式存储文件系统)
2004年, Google发表 MapReduce => MapReduce(大数据分布式计算框架)
2006年, Google发表 BigTable => HBase(NoSQL型数据库)概述:
Hadoop有两重意思, 一个是广义上的理解, 一个是狭义上的理解.
广义上来讲:
我们说的hadoop指的是 Hadoop生态圈, 除了Hadoop之外, 还有和它相关的中间件,
例如: Hbase, Hive, Spark, Flink, Flume, Sqoop, Kafka, Zookeeper...狭义上来讲: 指的是 Hadoop软件本身, 它的组成如下: Hadoop1.X架构: HDFS(大数据分布式存储架构) + MapReduce(大数据分布式计算框架) Hadoop2.X架构: HDFS(大数据分布式存储架构) + MapReduce(大数据分布式计算框架) + Yarn(资源调度器) Hadoop3.X架构: 和Hadoop2.X架构一样, 只不过性能做了提升.
吉祥物:
大象. //卡大爷给他儿子买了个玩具, 是个黄色的小象, 他儿子给这个玩具起名字叫: Hadoop, 卡大爷认为小孩儿的创造力是无限的.