数据库

Imagemap
数据库一致性哈希分布CAP一致性ACID可用性分布式反模式多IDC的数据分布设计原理存储方式列存wikiinfoOracle Exadata系统监控GangliaTwitter系统运维经验Cache关于 I/O 的五分钟法则Amdahl定律BASE思想 key-value存储CassandraMemcachedmemcached全面剖析 利用memcachedCouchDBAmaze DynamobeansdbTokyo CabinetNuclear功能应用篇原理展望memcachedbmemcachedb的性能测试dbcached对比数据PNUTSVoldemortNoSQL方案优点评价重要资料大表BigTaleHbaseSimpleDBHadoopDBGreenPlum云计算云计算五层架构
hide数据库
hideCAP
hide一致性Internal Link
leafACID

BASE模型反ACID模型,完全不同ACID模型,牺牲高一致性,获得可用性或可靠性: Basically Available基本可用。支持分区失败(e.g. sharding碎片划分数据库) Soft state软状态 状态可以有一段时间不同步,异步。 Eventually consistent最终一致,最终数据是一致的就可以了,而不是时时高一致。

leaf可用性
hide存储方式
hide列存

从内存中读取效率很高,但是从磁盘中读取(假设行式数据库的索引在内存中)比行式数据库要慢(开始在Twitter上说比行式快是程序写错了)

hide系统监控
hideBASE思想

BASE模型反ACID模型,完全不同ACID模型,牺牲高一致性,获得可用性或可靠性: Basically Available基本可用。支持分区失败(e.g. sharding碎片划分数据库) Soft state软状态 状态可以有一段时间不同步,异步。 Eventually consistent最终一致,最终数据是一致的就可以了,而不是时时高一致。 BASE思想的主要实现有 1.按功能划分数据库 2.sharding碎片

hide key-value存储

可根据CAP三原则灵活选择不同倾向的数据库产品

leafCassandra

1.灵活的schema,不需要象数据库一样预先设计schema,增加或者删除字段非常方便(on the fly)。 2.支持range查询:可以对Key进行范围查询。 3.高可用,可扩展:单点故障不影响集群服务,可线性扩展。

hideMemcached

使用预申请和分组的方式管理内存空间,而并不是每次需要写入数据的时候去malloc

leafCouchDB

CouchDB一种半结构化面向文档的分布式,高容错的数据库系统,其提供RESTFul HTTP/JSON接口。其拥有MVCC特性,用户可以通过自定义Map/Reduce函数生成对应的View。

leafAmaze Dynamo
leafbeansdb

一个简化版的Dynamo

leafTokyo Cabinet
hidememcachedb
leafmemcachedb的性能测试

mcached 写速度 平均速度: 16222 次/秒 最大速度 18799 次/秒 Memcached 读速度 平均速度: 20971 次/秒 最大速度 22497 次/秒 Memcachedb 写速度 平均速度: 8958 次/秒 最大速度 10480 次/秒 Memcachedb 读速度 平均速度: 6871 次/秒 最大速度 12542 次/秒

hideNoSQL方案

NoSQL并不能简单的理解为No SQL,其本质应该是No Relational,也就是说它不是基于关系型的理论基础,而我们所有传统的数据库都是基于这套理论而发展起来的,所以SQL并不是问题的关键所在,比如有些NoSQL数据库可以提供SQL类型的接口,允许你通过类SQL的语法去访问数据。 分布式的key-value存储方案,基于Java的Voldemort被认为最佳,memcachedb也认为不错,couchdb被认为不适合。 可根据CAP三原则结合自己项目定制灵活的分布式方案

hide大表Internal Link
leafHbase
leafSimpleDB
leafGreenPlum