NoSQL数据库笔谈v0.2

日前国内没有一套比较完整的NoSQL数据库资料,有很多先驱整理发表了很多,但不是很系统。不材尝试着将各家的资料整合一下,并书写了一些自己的见解。
本书写了一些目前的NoSql的一些主要技术,算法和思想。同时列举了大量的现有的数据库实例。读完全篇,相信读者会对NoSQL数据库了解个大概。
另外我还准备开发一个开源内存数据库galaxydb.本书也是为这个数据库提供一些架构资料。

由于时间紧迫,加班加点,V0.2版本提前赶制了出来。

HTML版
PDF版

目录:

  1. 思想篇
    1. CAP
    2. 最终一致性
      1. 变体
    3. BASE
    4. 其他
      1. I/O的五分钟法则
      2. 不要删除数据
      3. RAM是硬盘,硬盘是磁带
      4. Amdahl定律和Gustafson定律
      5. 万兆以太网
  2. 手段篇
    1. 一致性哈希
        1. 亚马逊的现状
        2. 算法的选择
    2. Quorum NRW
    3. Vector clock
    4. Virtual node
    5. gossip
      1. Gossip (State Transfer Model)
      2. Gossip (Operation Transfer Model)
    6. Merkle tree
    7. Paxos
      1. 背景
    8. DHT
    9. Map Reduce Execution
    10. Handling Deletes
    11. 存储实现
    12. 节点变化
    13. 列存
      1. 描述
      2. 特点
  3. 软件篇
    1. 亚数据库
      1. MemCached
        1. 特点
        2. 内存分配
        3. 缓存策略
        4. 缓存数据库查询
        5. 数据冗余与故障预防
        6. Memcached客户端(mc)
        7. 缓存式的Web应用程序架构
        8. 性能测试
      2. dbcached
        1. Memcached 和 dbcached 在功能上一样吗?
    2. 列存系列
      1. Hadoop之Hbase
      2. 耶鲁大学之HadoopDB
      3. GreenPlum
      4. FaceBook之Cassandra
        1. Cassandra特点
        2. Keyspace
        3. Column family(CF)
        4. Key
        5. Column
        6. Super column
        7. Sorting
        8. 存储
        9. API
      5. Google之BigTable
      6. Yahoo之PNUTS
        1. 特点
        2. PNUTS实现
          1. Record-level mastering 记录级别主节点
          2. PNUTS的结构
          3. Tablets寻址与切分
          4. Write调用示意图
        3. PNUTS感悟
      7. 微软之SQL数据服务
    3. 非云服务竞争者
    4. 文档存储
      1. CouchDB
        1. 特性
      2. Riak
      3. MongoDB
      4. Terrastore
      5. ThruDB
    5. Key Value / Tuple 存储
      1. Amazon之SimpleDB
      2. Chordless
      3. Redis
      4. Scalaris
      5. Tokyo cabinet / Tyrant
      6. CT.M
      7. Scalien
      8. Berkley DB
      9. MemcacheDB
      10. Mnesia
      11. LightCloud
      12. HamsterDB
      13. Flare
    6. 最终一致性Key Value存储
      1. Amazon之Dynamo
        1. 功能特色
        2. 架构特色
      2. BeansDB
        1. 简介
        2. 更新
        3. 特性
        4. 性能
      3. Nuclear
        1. 两个设计上的Tips
      4. Voldemort
      5. Dynomite
      6. Kai
    7. 未分类
      1. Skynet
      2. Drizzle
    8. 比较
      1. 可扩展性
      2. 数据和查询模型
      3. 持久化设计
  4. 应用篇
    1. eBay 架构经验
    2. 淘宝架构经验
    3. Flickr架构经验
    4. Twitter运维经验
      1. 运维经验
        1. Metrics
        2. 配置管理
        3. Darkmode
        4. 进程管理
        5. 硬件
      2. 代码协同经验
        1. Review制度
        2. 部署管理
        3. 团队沟通
      3. Cache
    5. 云计算架构
    6. 反模式
      1. 单点失败(Single Point of Failure)
      2. 同步调用
      3. 不具备回滚能力
      4. 不记录日志
      5. 无切分的数据库
      6. 无切分的应用
      7. 将伸缩性依赖于第三方厂商
    7. OLAP
      1. OLAP报表产品最大的难点在哪里?
    8. NOSQL们背后的共有原则
      1. 假设失效是必然发生的
      2. 对数据进行分区
      3. 保存同一数据的多个副本
      4. 动态伸缩
      5. 查询支持
      6. 使用 Map/Reduce 处理汇聚
      7. 基于磁盘的和内存中的实现
      8. 仅仅是炒作?
    1. 感谢
    2. 版本志
    3. 引用

9 Responses to this post.

  1. Posted by ira on 24.02.10 at 9:29 下午

    您牛的
    发现最近经常拜读到某人的文章。某人高产啊

    [回复]

  2. Posted by Zoom.Quiet on 24.02.10 at 9:29 下午

    收藏!
    的确需要这种统一的分析简介!

    [回复]

  3. Posted by mikespook on 24.02.10 at 9:29 下午

    最后一段的引用 “这些服务的共性在于可扩展性比功能公众要,他们无法泡在一个单一的 RDBMS 上。”
    “比功能公众要”应为“比功能更重要”吧?拼音,有时真麻烦……

    这两天正巧在回顾Fenng兄 blog 上 07、08 的文章……这个总结,很合心!

    [回复]

    颜开 回复:

    谢谢,在下个版本记得勘误

    [回复]

    victor 回复:

    勘误
    原文:


    ……..由于涵盖太广难以一一校队…

    应该是“一一校对”吧

    [回复]

  4. Posted by 路千里 on 24.02.10 at 9:29 下午

    给你发了封邮件,请注意查收!

    [回复]

  5. Posted by grapef on 24.02.10 at 9:29 下午

    好文
    让我想起了AD的replication和早期的taobao数据分析
    一样的问题在不同时期被多次解决

    [回复]

  6. Posted by NoSQL数据库笔谈v0.1 | 我自然 on 24.02.10 at 9:29 下午

    [...] 現在更新至v0.2版:http://www.yankay.com/nosql%E6%95%B0%E6%8D%AE%E5%BA%93%E7%AC%94%E8%B0%88v0-2/ [...]

  7. Posted by 欢迎颜开入驻NoSQLfan : NoSQLfan on 24.02.10 at 9:29 下午

    [...] 在 NoSQLfan 建立将近四个月的今天,NoSQLfan 迎来了她的第一位联合作者, 他就是长文《NoSQL 数据库笔谈》的作者颜开同学。 [...]

Respond to this post