大数据日知录要点整理

简介:

大数据日知录要点整理

      第0 章 当谈论大数据时我们在谈什么 1 
 
NOSQL选型:kv-cassandra、dynamo,列式存储-HBase,图存储-Neo4j
社交网络数据存储适合用图数据库,而实时响应要求较高的场合适合Hbase等列式数据库。海量数据批处理任务,Hadoop+HDFS更好。

第1 章 数据分片与路由 9 
1.1 抽象模型10 
1.2 哈希分片(Hash Partition) 11 
1.2.1 Round Robin11 
1.2.2 虚拟桶(Virtual Buckets) 12 
1.2.3 一致性哈希(Consistent Hashing) 13 
1.3 范围分片(Range Partition) 18 
参考文献19 
第2 章 数据复制与一致性20 
2.1 基本原则与设计理念21 
2.1.1 原教旨CAP 主义21 
2.1.2 CAP 重装上阵(CAP Reloaded)23 
2.1.3 ACID 原则24 
2.1.4 BASE 原则24 
2.1.5 CAP/ACID/BASE 三者的关系25 
2.1.6 幂等性(Idempotent)26 
2.2 一致性模型分类26 
2.2.1 强一致性27 
2.2.2 最终一致性28 
2.2.3 因果一致性28 
2.2.4 “读你所写”一致性29 
2.2.5 会话一致性29 
2.2.6 单调读一致性30 
2.2.7 单调写一致性30 
2.3 副本更新策略30 
2.3.1 同时更新30 
2.3.2 主从式更新31 
2.3.3 任意节点更新32 
2.4 一致性协议32 
2.4.1 两阶段提交协议(Two—Phrase Commit,2PC)33 
2.4.2 向量时钟(Vector Clock) 38 
2.4.3 RWN 协议40 
2.4.4 Paxos 协议42 
2.4.5 Raft 协议45 
参考文献49 
第3 章 大数据常用的算法与数据结构51 
3.1 布隆过滤器(Bloom Filter) 51 
3.1.1 基本原理52 
3.1.2 误判率及相关计算52 
3.1.3 改进:计数Bloom Filter53 
3.1.4 应用54 
3.2 SkipList55 
3.3 LSM 树58 
3.4 Merkle 哈希树(Merkle Hash Tree) 62 
3.4.1 Merkle 树基本原理62 
3.4.2 Dynamo 中的应用63 
3.4.3 比特币中的应用63 
3.5 Snappy 与LZSS 算法65 
3.5.1 LZSS 算法65 
3.5.2 Snappy67 
3.6 Cuckoo 哈希(Cuckoo Hashing) 67 
3.6.1 基本原理68 
3.6.2 应用:SILT 存储系统68 
参考文献70 
第4 章 集群资源管理与调度71 
4.1 资源管理抽象模型72 
4.1.1 概念模型72 
4.1.2 通用架构73 
4.2 调度系统设计的基本问题74 
4.2.1 资源异质性与工作负载异质性74 
4.2.2 数据局部性(Data Locality) 75 
4.2.3 抢占式调度与非抢占式调度75 
4.2.4 资源分配粒度(Allocation Granularity) 76 
4.2.5 饿死(Starvation)与死锁(Dead Lock)问题76 
4.2.6 资源隔离方法77 
4.3 资源管理与调度系统范型77 
4.3.1 集中式调度器(Monolithic Scheduler)78 
4.3.2 两级调度器(Two—Level Scheduler) 79 
4.3.3 状态共享调度器(Shared—State Scheduler) 79 
4.4 资源调度策略81 
4.4.1 FIFO 调度策略81 
4.4.2 公平调度器(Fair Scheduler)81 
4.4.3 能力调度器(Capacity Scheduler) 82 
4.4.4 延迟调度策略(Delay Scheduling)82 
4.4.5 主资源公平调度策略(Dominant Resource Fair Scheduling)82 
4.5 Mesos 84 
4.6 YARN87 
参考文献90 
第5 章 分布式协调系统91 
5.1 Chubby 锁服务92 
5.1.1 系统架构93 
5.1.2 数据模型94 
5.1.3 会话与KeepAlive 机制95 
5.1.4 客户端缓存95 
5.2 ZooKeeper 96 
5.2.1 体系结构96 
5.2.2 数据模型(Data Model) 97 
5.2.3 API 98 
5.2.4 ZooKeeper 的典型应用场景98 
5.2.5 ZooKeeper 的实际应用103 
参考文献104 
第6 章 分布式通信106 
6.1 序列化与远程过程调用框架107 
6.1.1 Protocol Buffer 与Thrift 108 
6.1.2 Avro109 
6.2 消息队列110 
6.2.1 常见的消息队列系统110 
6.2.2 Kafka 111 
6.3 应用层多播通信(Application—Level Multi—Broadcast)114 
6.3.1 概述114 
6.3.2 Gossip 协议115 
参考文献118 
第7 章 数据通道120 
7.1 Log 数据收集120 
7.1.1 Chukwa121 
7.1.2 Scribe122 
7.2 数据总线123 
7.2.1 Databus125 
7.2.2 Wormhole 127 
7.3 数据导入/导出128 
参考文献129 
第8 章 分布式文件系统131 
8.1 Google 文件系统(GFS) 132 
8.1.1 GFS 设计原则132 
8.1.2 GFS 整体架构133 
8.1.3 GFS 主控服务器134 
8.1.4 系统交互行为136 
8.1.5 Colossus 137 
8.2 HDFS 138 
8.2.1 HDFS 整体架构139 
8.2.2 HA 方案140 
8.2.3 NameNode 联盟143 
8.3 HayStack 存储系统145 
8.3.1 HayStack 整体架构146 
8.3.2 目录服务147 
8.3.3 HayStack 缓存148 
8.3.4 HayStack 存储系统的实现148 
8.4 文件存储布局150 
8.4.1 行式存储151 
8.4.2 列式存储151 
8.4.3 混合式存储156 
8.5 纠删码(Erasure Code)158 
8.5.1 Reed—Solomon 编码159 
8.5.2 LRC 编码164 
8.5.3 HDFS—RAID 架构166 
参考文献166 
…… 
第9 章 内存KV 数据库168 
第10 章 列式数据库176 
第11 章 大规模批处理系统199 
第12 章 流式计算219 
第13 章 交互式数据分析240 
第14 章 图数据库:架构与算法271 
第15 章 机器学习:范型与架构313 
第16 章 机器学习:分布式算法337 
第17 章 增量计算366 







本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/bonelee/p/6244221.html ,如需转载请自行联系原作者

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
算法 Linux 数据安全/隐私保护
【Linux】Linux 系统中的注销、重启和关机命令详解
【Linux】Linux 系统中的注销、重启和关机命令详解
1236 0
|
分布式计算 安全 算法
【重磅】中国隐私计算平台市场,摩斯第一
10月11日,全球领先的IT市场研究和咨询公司IDC发布了《中国隐私计算平台厂商市场份额,2022》报告。蚂蚁集团凭借商用隐私计算平台摩斯(MORSE),以 36.9%的市场份额排名第一。
【重磅】中国隐私计算平台市场,摩斯第一
|
机器学习/深度学习 存储 数据可视化
Vision Transformer中的图像块嵌入详解:线性投影和二维卷积的数学原理与代码实现
本文详细介绍了 Vision Transformer 中图像块嵌入的实现过程,结合理论与代码示例,帮助读者深入理解这一关键机制。
756 8
Vision Transformer中的图像块嵌入详解:线性投影和二维卷积的数学原理与代码实现
|
域名解析 API PHP
VM虚拟机全版本网盘+免费本地网络穿透端口映射实时同步动态家庭IP教程
本文介绍了如何通过网络穿透技术让公网直接访问家庭电脑,充分发挥本地硬件性能。相比第三方服务受限于转发带宽,此方法利用自家宽带实现更高效率。文章详细讲解了端口映射教程,包括不同网络环境(仅光猫、光猫+路由器)下的设置步骤,并提供实时同步动态IP的两种方案:自建服务器或使用三方API接口。最后附上VM虚拟机全版本下载链接,便于用户在穿透后将服务运行于虚拟环境中,提升安全性与适用性。
1391 7
|
存储 机器学习/深度学习 缓存
特征平台PAI-FeatureStore的功能列表
本内容介绍了阿里云PAI FeatureStore的功能与使用方法,涵盖离线和在线特征管理、实时特征视图、行为序列特征视图、FeatureStore SDK的多语言支持(如Go、Java、Python)、特征生产简化方案、FeatureDB存储特性(高性能、低成本、及时性)、训练样本导出以及自动化特征工程(如AutoFE)。同时提供了相关文档链接和技术细节,帮助用户高效构建和管理特征工程。适用于推荐系统、模型训练等场景。
703 2
怎么删除360base64.dll,这个方法百分百管用
怎么删除360base64.dll,这个方法百分百管用
2002 0
|
存储 C语言
【C语言】输入/输出函数详解
在C语言中,输入/输出操作是通过标准库函数来实现的。这些函数分为两类:标准输入输出函数和文件输入输出函数。
2044 6
|
网络协议 网络虚拟化 数据中心
|
算法 安全 Go
Python与Go语言中的哈希算法实现及对比分析
Python与Go语言中的哈希算法实现及对比分析
588 1