《BIG DATA大数据日知录 架构和算法》读书笔记
2019独角兽企业重金招聘Python工程师标准>>>
《BIG DATA大数据日知录 架构和算法》读书笔记 博客分类: 架构 分布式计算
1.数据分片和路由
- Hash
- Hash
- H(Key) = hash(key) mod K
- 虚拟桶(Virtual Buckets)
- 先hash到桶,在Hash,多加一层Hash便于扩展
- 一致性Hash
- 分布式Hash表(DHT),P2P对等网络,构成环,节点加入和离开自动调整
- Hash
- 范围
- 如HBase中的LSM树
2.数据复制和一致性
- 基本原则
- CAP(强一致性、可用性和分区容忍性),CP、AP,涉及到网络分区的(P),CAP不可兼得
- ACID(原子、一致、隔离、持久)
- BASE(基本可用B允许偶尔失败、软状态Soft State、最终一致性Eventual Consistency)
- BASE原则是牺牲一致性达到高可用
- 幂等性(f(f(x)) = f(x)),反复调用,状态正确
- 一致性模型
- 强一致性
- 最终一致性,一个时间窗口内数据允许不一致
- 因果一致性
- 副本更新策略 *
- 一致性协议
- 两阶段提交协议(2PC)
- 向量时钟(Vector Clock)
- RWN协议(成功读取R + 成功写入W > 数据备份数N)
- Paxos协议
- 安全、可用
- 副本状态机、Log
- Proposer、Acceptor、Learner
- Raft协议
- 可理解、确定
3.常用算法和数据结构
- Bloom Filter布隆过滤器
- 用位表示元素是否存在,1到多个独立的hash,空间效率极高
- 改进,加入计数,用于删除成员
- Skip List跳跃表
- 可替代平衡二叉树,O(Log(n))
- LSM树
- 大量随机写,转化为批量顺序写
- Merkle哈希树
- 层级的hash树
- 快速定位数据变化部分
- 比特币
- Snappy和LZSS压缩算法
- Cuckoo哈希
- 采用交换解决hash冲突
4.集群资源管理和调度
- 要解决的基本问题
- 资源异质性、工作负载异质性,即组成元素差异较大
- 数据局部性
- 抢占式调度和非抢占式调度
- 资源分配粒度,Job还是Task
- Starvation和Dead Lock
- 资源隔离
- 资源管理和调度泛型
- 集中式调度器、Borg
- 两级调度器,mesos、YARN
- 状态共享调度器、Omega
- Mesos
- YARN
- RM,资源管理器,Resource Manager
- AM,作业的应用服务器,Application Manager
- NM,每个机器的节点服务器,Node Manager
5.分布式协调系统
- Chubby,Google
- 基于Paxos一致性协议
- ZooKeeper
- 可扩展、高吞吐、分布式协调系统
- 应用场景:领导选举、配置管理、组成员管理、任务分配、锁管理
- HBase、Storm、Solr、Kafka...
6.分布式通信
- 序列化、反序列化
- Protocol Buffer
- Thrift
- Avro,json定义schema
- 消息队列
- Kafka
- 多播通信(Application-Level Multi-broadcast)
- Gossip协议,Epidemic Protocol感染协议,如Cassandra维护机器节点状态
7.数据通道
- Log采集
- Chukwa,基于Hadoop
- Scribe,Facebook
- 数据总线,数据变化通知通道,一般基于数据库日志挖掘
- Databus、LinkedIn
- Wormhole、Facebook
- 数据导入导出
- Sqoop,hadoop和其他关系或者nosql之前的导入导出
8.分布式文件系统
- GFS,Google
- Colossus,下一次GFS
- HDFS,Hadoop
- HayStack,对象存储系统,Facebook
- Erasure Code 纠删码
- 减少数据备份,提供可靠性
- Reed-Solomon编码
- LRC编码
- HDFS-RAID架构
9.内存kv数据库
- RAMCloud
- Redis
- MemBase,CouchBase
10.列数据库
- BigTable
- PNUTS
- MegaStore
- Spanner
- BigTable在跨行、跨表的强一致性需求场景表现不佳,MegaStore一定程度上缓解,但是写性能不佳,Spanner进一步升级,支持类SQL和事务
11.大规模批处理系统
- MapReduce
- 求和,Summarization Pattern
- 过滤,Filtering Pattern,top10等
- 组织数据,Data Organization Pattern,分片、排序
- Join模式,Join Pattern,Reduce-Side、Map-Side Join
- DAG计算模型
- Dryad,微软
- FlumeJava,Google
- Tez,Apache
12.流式计算
- 架构
- 主从,Store
- P2P,S4
- Samza
13.交互式数据分析
- Hive系,Facebook
- SQL-on-Hadoop
- 耦合Hadoop导致效率低下
- StingerIntiative,改进Hive
- Shark系
- 基于Spark
- Dremel系,需要关注
- Dremel、PowerDrill、Impala、Presto
- 混合
- Hadoop DB
14.图数据库:架构和算法
- 图挖掘问题
- PageRank计算
- 单源最短路径
- 二部图最大匹配
- 在线
- TAO, Facebook
- 离线
- Pregel,Google
- Giraph,基于Hadoop的开源版本
- GraphChi
- PowerGraph
15.机器学习:泛型和架构
- 概念
- 监督学习,分类、回归
- 非监督学习,聚类
- 分布式学习泛型
- 同步泛型
- 异步泛型
- 部分同步泛型
- 计算模型
- mapreduce迭代计算模型
- BSP,整体同步并行计算
- SSP,部分同步
- 架构
- Hadoop
- 利用平台,Oryx Cloudera, Mahout Apache
- 改造平台,Twister, Haloop
- Spark及MLBase *
- Parameter Server
- DistBelief
- Petuum
- Hadoop
16.机器学习:分布式算法
- 计算广告
- 逻辑回归
- 并行随机梯度下降
- 批学习并行逻辑回归
- 推荐系统
- 矩阵分解
- ALS-WR算法
- 并行ALS-WR算法
- 搜索引擎
- 机器学习排序
- LambdaMART
- 分布式LambdaMART
- 自然语言处理
- 文档相似性计算
- 社交挖掘
- 谱聚类
- 并行谱聚类
- 深度学习
- DistBelief
17.增量计算
- Percolator
- Kineograph
- DryadInc
http://my.oschina.net/serverx/blog/693701
转载于:https://my.oschina.net/xiaominmin/blog/1599193
《BIG DATA大数据日知录 架构和算法》读书笔记相关推荐
- 读书笔记 | 墨菲定律
1. 有些事,你现在不做,永远也不会去做. 2. 能轻易实现的梦想都不叫梦想. 3.所有的事都会比你预计的时间长.(做事要有耐心,要经得起前期的枯燥.) 4. 当我们的才华还撑不起梦想时,更要耐下心来 ...
- 读书笔记 | 墨菲定律(一)
1. 有些事,你现在不做,永远也不会去做. 2. 能轻易实现的梦想都不叫梦想. 3.所有的事都会比你预计的时间长.(做事要有耐心,要经得起前期的枯燥.) 4. 当我们的才华还撑不起梦想时,更要耐下心来 ...
- 洛克菲勒的38封信pdf下载_《洛克菲勒写给孩子的38封信》读书笔记
<洛克菲勒写给孩子的38封信>读书笔记 洛克菲勒写给孩子的38封信 第1封信:起点不决定终点 人人生而平等,但这种平等是权利与法律意义上的平等,与经济和文化优势无关 第2封信:运气靠策划 ...
- 股神大家了解多少?深度剖析股神巴菲特
股神巴菲特是金融界里的传奇,大家是否都对股神巴菲特感兴趣呢?大家对股神了解多少?小编最近在QR社区发现了<阿尔法狗与巴菲特>,里面记载了许多股神巴菲特的人生经历,今天小编简单说一说关于股神 ...
- 2014巴菲特股东大会及巴菲特创业分享
沃伦·巴菲特,这位传奇人物.在美国,巴菲特被称为"先知".在中国,他更多的被喻为"股神",巴菲特在11岁时第一次购买股票以来,白手起家缔造了一个千亿规模的 ...
- 《成为沃伦·巴菲特》笔记与感想
本文首发于微信公众帐号: 一界码农(The_hard_the_luckier) 无需授权即可转载: 甚至无需保留以上版权声明-- 沃伦·巴菲特传记的纪录片 http://www.bilibili.co ...
- 读书笔记002:托尼.巴赞之快速阅读
读书笔记002:托尼.巴赞之快速阅读 托尼.巴赞是放射性思维与思维导图的提倡者.读完他的<快速阅读>之后,我们就可以可以快速提高阅读速度,保持并改善理解嗯嗯管理,通过增进了解眼睛和大脑功能 ...
- 读书笔记001:托尼.巴赞之开动大脑
读书笔记001:托尼.巴赞之开动大脑 托尼.巴赞是放射性思维与思维导图的提倡者.读完他的<开动大脑>之后,我们就可以对我们的大脑有更多的了解:大脑可以进行比我们预期多得多的工作:我们可以最 ...
- 读书笔记003:托尼.巴赞之思维导图
读书笔记003:托尼.巴赞之思维导图 托尼.巴赞的<思维导图>一书,详细的介绍了思维发展的新概念--放射性思维:如何利用思维导图实施你的放射性思维,实现你的创造性思维,从而给出一种深刻的智 ...
- 产品读书《滚雪球:巴菲特和他的财富人生》
作者简介 艾丽斯.施罗德,曾经担任世界知名投行摩根士丹利的董事总经理,因为撰写研究报告与巴菲特相识.业务上的往来使得施罗德有更多的机会与巴菲特亲密接触,她不仅是巴菲特别的忘年交,她也是第一个向巴菲特建 ...
最新文章
- border-边框的形状
- 各类防火墙应用对比分析
- lambda :: -_无需再忙了:Lambda-S3缩略图,由SLAppForge Sigma钉牢!
- 刚过去不到一个月 QQ又更新了
- c语言字符全排列数组,使用c语言递归实现字符串的全排列
- K3路由器自建服务器,折腾路由器 篇一:K3路由器刷官改固件小白日记
- editplus软件下载地址
- java cat_java应用监控之CAT简介
- windows下用wget下载数据
- C语言经典题目:求阶乘n!=n*(n-1)*...*1,阶乘和s=1!+(2)!+(3)!+...+n!
- 苏嵌//张福辉//2018.7.23
- Poco访问mysql
- NC91 最长递增子序列
- java与单片机通信_Java实现串口通信与单片机通信实例..【Pnoter】
- 面试官这样问我Java反射原理,我刚好都会
- STM32F1 HAL库读写SD卡的操作要点
- 计算方法(四):插值与拟合
- 深度强化学习笔记(二)马尔可夫决策过程
- 为什么要设置内链,它对SEO有什么影响?
- 低成本复制 ChatGPT 训练流程,仅需 1.68GB GPU 即可使用,方法现已开源!
热门文章
- 如何通过抖音账号定位,提高营销效果?
- linux断开会话不中断进程,Linux让进程后台运行且连接断开不影响(nohup、setsid、disown、screen)...
- 财政收入统计口径详解
- 怎么设置table(表格)手机端自适应宽度
- 转移到ios下载安卓_转移到ios下载官方app-转移到ios手机版v3.0.1 安卓版 - 极光下载站...
- Python+实例解析雪景艺术绘图
- mysql per sec_MySQL审计插件的测试(mcafee和mariadb版本)
- 很多TAP-Windows adapter V9#
- 计算机科学与技术编程辅导答疑记录表,计算机科学与技学院工作记录模板.doc...
- webp的js插件_网页webp解决方案