Paul Graham向我们展示了一个有趣的比较各种编程语言的方法:阐述各种编程语言都是用来解决什么问题的。我发现这种方法放在数据库上同样好用:
oracle: 我们需要企业级数据库。
mysql: Oracle不开源。
PostgreSQL: MySQL的功能不够多。
SQLite: 你可以把我嵌入到任何地方。这样,4种数据库够大家用了。
MongoDB: 为什么我们要用join和模式(schema)?
CouchDB: 为什么我们要有集合(collection)?
redis: 为什么我们要面向文档?
Memcached: 为什么我们要用硬盘?
Neo4j: SQL缺乏足够的关系。
Bigtable: MongoDB的对web的扩展性不管好。
Hbase: Bigtable不开源。
Cassandra: Bigtable不是Facebook开发的。
Riak: Cassandra不是用Erlang语言编写的。
OrientDB: 让我们把所有东西都放到同一个数据库里!
英文原文:What Databases Fix
相关文档:为什么会有这么多编程语言
欢迎大家阅读《为什么会有这么多种的数据库》,跪求各位点评,若觉得好的话请收藏本文,by 搞代码