NoSQL数据库介绍(1)

    最近看了一些英文文档,其中有一篇把分布式系统和第一代NoSQL的大背景介绍得很清楚,虽然文档本身是10年写的,而且没有介绍某种特定NoSQL数据库的使用,但很多思想性的东西到今天看都非常有价值,于是决定翻译一下,翻译中的各种bug请各位指出。原文可以在 http://www.christof-strauch.de/nosqldbs.pdf 找到。

    另外由于工作量浩大(原始文档有140多页),进度会比较慢,估计十天半月能更新一章吧。


目录

1 介绍
1.1 介绍和概览
1.2 未包含的主题

2 NoSQL潮流
2.1 动机和主要驱动力
2.2 批评
2.3 NoSQL数据库的分类和比较

3 基本概念,技术和模式
3.1 一致性
3.2 分区
3.3 存储分层
3.4 查询模型
3.5 使用MapReduce的分布式数据处理

4 键/值存储
4.1 Amazon Dynamo
4.2 Project Voldemort
4.3 其他键/值存储

5 文档数据库
5.1 Apache CouchDB
5.2 MongoDB

6 面向列的数据库
6.1 Google Bigtable
6.2 Bigtable衍生品
6.3 Cassandra

7 总结


1 介绍
1.1 介绍和概览
     如今,关系型数据库管理系统(RDBMSs)是web和商业应用中存储结构化数据的主要技术。从1970年Codds的论文“一种面相大共享数据集的关系型数据模型”[Cod70]开始,这类基于关系演算和使用SQL[CB74]进行全面的ad-hoc查询的数据存储方式,已经被广泛应用,并通常被视为多用户一致地读写数据存储的唯一方式。尽管近年有不同的技术出现如面向对象数据库和XML存储,但这些技术均为达到RDBMSs相同的适用性和市场份额。当然,这些变化要么已经被RDBMSs吸收(如允许储存XML并用于文本索引),或成为“利基产品”(如OLAP或流处理)。
     在过去的几年中,关于数据存储的“一刀切”思考被学术界和网络公司双方质疑,这已经导致了大量的各种替代数据库的出现。这类新的数据存储通常归入NoSQL下,“在web开发者中用来描述增加使用非关系型数据库”([Oba09a])。
     本文旨在对这一运动的动机和理由进行系统概述(第2章),常用的概念、技术和模式(第3章),NoSQL数据库的几种类型(键/值存储、文档数据库、面向列的数据库)和个别产品(第4-6章)。

1.2 未包含的主题
     本文不讨论将现有数据仓库中已有且不包含在NoSQL运动中的部分,如对象数据库,用于特殊用途的纯XML数据库和数据库管理系统(如作为分析或流处理)。图数据库也不包含在本文中,但一些资源的提供在附录A。介绍某种单独的NoSQL数据存储也超出本文范围,一般来说这会是一个对NoSQL数据运动和方法二者的误解,因为不是“一刀切”的解决方案。在所有可用的NoSQL数据库之间的深度比较也超出了本文的范围。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值