NoSQL数据库学习教程 联系客服

发布时间 : 星期五 文章NoSQL数据库学习教程更新完毕开始阅读24a5d7523c1ec5da50e270b1

http://blog.sina.com.cn/mpl398235717

NoSQL数据库学习教程

本文档由http://hitaow.sinaapp.com整理发布。

? ?

思想篇

? CAP

? 最终一致性

? 变体

? BASE ? 其他

? I/O的五分钟法则 ? 不要删除数据

? RAM是硬盘,硬盘是磁带

? Amdahl定律和Gustafson定律 ? 万兆以太网

手段篇

? 一致性哈希

? 亚马逊的现状 ? 算法的选择

? Quorum NRW ? Vector clock ? Virtual node ? gossip

? Gossip (State Transfer Model)

? Gossip (Operation Transfer Model)

? Merkle tree ? Paxos

? 背景

? DHT

? Map Reduce Execution ? Handling Deletes ? 存储实现 ? 节点变化 ? 列存

? 描述 ? 特点

软件篇

? 亚数据库

? MemCached

? 特点 ? 内存分配 ? 缓存策略

? 缓存数据库查询

? 数据冗余与故障预防

? Memcached客户端(mc) ? 缓存式的Web应用程序架构 ? 性能测试

? dbcached

? Memcached 和 dbcached 在功能上一样吗?

?

?

http://blog.sina.com.cn/mpl398235717

http://blog.sina.com.cn/mpl398235717

?

? ?

?

?

列存系列

? Hadoop之Hbase

? 耶鲁大学之HadoopDB ? GreenPlum

? FaceBook之Cassandra

? Cassandra特点 ? Keyspace

? Column family(CF) ? Key ? Column

? Super column ? Sorting ? 存储 ? API

? Google之BigTable ? Yahoo之PNUTS

? 特点

? PNUTS实现

? Record-level mastering 记录级别主节点 ? PNUTS的结构

? Tablets寻址与切分 ? Write调用示意图

? PNUTS感悟

? 微软之SQL数据服务 非云服务竞争者 文档存储

? CouchDB

? 特性

? Riak

? MongoDB ? Terrastore ? ThruDB

Key Value / Tuple 存储

? Amazon之SimpleDB ? Chordless ? Redis ? Scalaris

? Tokyo cabinet / Tyrant ? CT.M ? Scalien ? Berkley DB ? MemcacheDB ? Mnesia ? LightCloud ? HamsterDB ? Flare

最终一致性Key Value存储

? Amazon之Dynamo

? 功能特色 ? 架构特色

? BeansDB

http://blog.sina.com.cn/mpl398235717

http://blog.sina.com.cn/mpl398235717

?

?

?

? ? ? 未分类

? Skynet ? Drizzle 比较

? 可扩展性

? 数据和查询模型 ? 持久化设计

? 简介 ? 更新 ? 特性 ? 性能 Nuclear

? 两个设计上的Tips Voldemort Dynomite Kai

?

应用篇

? eBay 架构经验 ? 淘宝架构经验 ? Flickr架构经验 ? Twitter运维经验

? 运维经验

? Metrics ? 配置管理 ? Darkmode ? 进程管理 ? 硬件

? 代码协同经验

? Review制度 ? 部署管理 ? 团队沟通

? Cache

? 云计算架构 ? 反模式

? 单点失败(Single Point of Failure) ? 同步调用

? 不具备回滚能力 ? 不记录日志 ? 无切分的数据库 ? 无切分的应用

? 将伸缩性依赖于第三方厂商

? OLAP

? OLAP报表产品最大的难点在哪里?

? NOSQL们背后的共有原则

? 假设失效是必然发生的 ? 对数据进行分区

? 保存同一数据的多个副本 ? 动态伸缩 ? 查询支持

? 使用 Map/Reduce 处理汇聚

http://blog.sina.com.cn/mpl398235717

http://blog.sina.com.cn/mpl398235717

? ?

?

? ? ?

感谢 版本志 引用

基于磁盘的和内存中的实现 仅仅是炒作?

日前国内没有一套比较完整的NoSQL数据库资料,有很多先驱整理发表了很多,但不是很系统。不材尝试着将各家的资料整合一下,并书写了一些自己的见解。

本书写了一些目前的NoSql的一些主要技术,算法和思想。同时列举了大量的现有的数据库实例。读完全篇,相信读者会对NoSQL数据库了解个大概。

另外我还准备开发一个开源内存数据库galaxydb.本书也是为这个数据库提供一些架构资料。

思想篇

CAP,BASE和最终一致性是NoSQL数据库存在的三大基石。而五分钟法则是内存数据存储了理论依据。这个是一切的源头。

CAP

? ? ?

C: Consistency 一致性

A: Availability 可用性(指的是快速获取数据)

P: Tolerance of network Partition 分区容忍性(分布式)

10年前,Eric Brewer教授指出了著名的CAP理论,后来Seth Gilbert 和 Nancy lynch两人证明了CAP理论的正确性。CAP理论告诉我们,一个分布式系统不可能满足一致性,可用性和分区容错性这三个需求,最多只能同时满足两个。

熊掌与鱼不可兼得也。关注的是一致性,那么您就需要处理因为系统不可用而导致的写操作失败的情况,而如果您关注的是可用性,那么您应该知道系统的read操作可能不能精确的读取到write操作写入的最新值。因此系统的关注点不同,相应的采用的策略也是不一样的,只有真正的理解了系统的需求,才有可能利用好CAP理论。

http://blog.sina.com.cn/mpl398235717