Linux中国 | Linux.cn - 我们的Linux中文社区

 找回密码
 加入

QQ登录

QQ登录

搜索
go

SQL数据库的终结(第二篇)?

查看: 926|回复: 0
wxy 发表于 2010-9-1 14:22 |显示全部帖子
在 “SQL数据库的终结? (第一篇/共三篇)”   里我简要介绍了一下关于SQL语言和关系型数据库的背景知识,包括它的过去和将来,介绍了一些以隐藏数据库编程的复杂度为目的模式框架的流行和NoSQL 数据库的兴起。在本文的第二篇里,我将介绍一些现有的开源的或非开源的NoSQL数据库。之后,在第三篇里,我将引导你去发现网上的关于NoSQL的资 料,告诉你一些跟NoSQL相关的已经发生的和即将发生的一些事件,给软件开发者提供一些这方面的指导。
你想象不到,如今竟然有了那么多开源的/非开源的NoSQL数据库产品。而同时,每天都有新的品种出现。如果我的列举中遗漏了你喜爱的NoSQL数 据库,请发评论告诉我。下面你将看到的就是各种不同类型的NoSQL数据库产品:面向文档的,面向集合的,面向列的,面向对象的,面向图的,面向有序集合 的,面向行的,等等。
   AllegroGraph

    公司/组织: Franz Inc.   类型: Graph   简介: Modern, high performance, persistent graph database.   存储方案: Disk based, meta-data and data triples.   API(s): SPARQL, Prolog    BerkleyDB

    公司/组织: Oracle   类型: Key/Value   简介: C language embeddable library for enterprise-grade, concurrent,
transactional storage services. Thread safe to avoid data corruption or
loss   存储方案: B-tree, hash table, persistent queue   API(s): C, C++ and Java   备注: Use BerkleyDB XML layer on top of BerkleyDB for XML based
applications. Comparison
of BerkleyDB and relational databases
    BigTable

    公司/组织: Google   类型: Sparse, distributed, persistent multidimensional sorted map.   简介: Distributed storage system for structured data. Data model provides
dynamic control over data layout and format. Data can live in memory or
on disk.   存储方案: Data is stored as an uninterpreted array of bytes. Client
applications can create structured and semi-structured data inside the
byte arrays.   API(s): Python, GQL, Sawzall API, REST, various.   备注: Overview: Bigtable: A
Distributed Storage System for Structured Data
(PDF format)    Cassandra

    公司/组织: Apache   类型: Dimensional hash table   简介: Highly scalable distributed database. Combines Dynamo’s distributed design and Bigtable’s column
family data model.   存储方案: Clusters of multiple keyspaces. The keyspace is a name space for
column families. Columns are comprised of a name, value and timestamp.   API(s): Java, Ruby, perl, Python, C#, Thrift framework.   备注: Open sourced by Facebook in 2008. Wiki, FAQ, Examples    CouchDB

    公司/组织: Apache   类型: Document   简介: Distributed database with incremental replication, bi-directional
conflict detection and management.   存储方案: Ad-hoc and schema-free with a flat address space.   API(s): RESTful JSON API. JavaScript query language.   备注: CouchDB Introduction, Technical
Overview
    db4o

    公司/组织: Versant   类型: Object   简介: Java and .NET dual license (commercial and open source) object
database.   存储方案: Data objects are stored in the way they are defined in the
application.   API(s): Java, .NET languages.   备注: db4o db4o
database runtime engine
, about db4o    Dovetaildb

    公司/组织: Millstone Creative Works   类型: JSON-based   简介: Schemaless database similar to Amazon’s SimpleDB. Open source,
standalone Java application server.   存储方案: JSON data format, “bags” (similar to tables).   API(s): HTTP and Javascript APIs   备注: Dovetaildb JavaScript
API
reference manual    Dynomite

    公司/组织: Cliff Moon   类型: Key/Value   简介: Open source Amazon
Dynamo
clone written in Erlang.   存储方案: Distributed key/valve store, Pluggable storage engines.   API(s): Thrift API   备注: Dynomite Wiki    eXtreme
Scale


    公司/组织: IBM   类型: In-memory grid/cache   简介: Distributed cache processes, partitions, replicates and manages data
across servers.   存储方案: Data and database cache, “near cache” for local subset of data. Java
persistent cache. Map reduce support.   API(s): Java APIs, REST data service   备注: eXtreme Scale Document
library
web site    GT.M

    公司/组织: FIS   类型: Hierarchical, multi-dimensional sparse arrays, content associative
memory   简介: Small footprint, multi-dimensional array with fill support for ACID
transactions, optimistic concurrency and software transactional memory.   存储方案: Unstructured array of bytes. Can be Key/Value, document oriented,
schema-less, dictionary or any other data model.   API(s): Mumps, C/C++, SQL   备注: GT.M FAQ    hamsterDB

    公司/组织: Christoph Rupp   类型: Embedded storage library   简介: Lightweight embedded database engine. Supports on disk and in memory
databases.   存储方案: B+tree with variable length keys.   API(s): C++, Python, .NET and Java   备注: hamsterdb FAQ, examples, tutorial    HBase

    公司/组织: Apache   类型: Sparse, distributed, persistent multidimensional sorted map.   简介: Open source, distributed, column-oriented, “Bigtable like” store   存储方案: Data row has a sortable row key and an arbitrary number of columns,
each containing arrays of bytes.   API(s): Java API, Thrift API, RESTful API   备注: Part of Apache Hadoop project. HBase Wiki, FAQ    Hypertable

    公司/组织: Zvents Inc.   类型: Sparse, distributed, persistent multidimensional sorted map.   简介: High performance distributed data storage system designed to run on
distributed filesystems (but can run on local filesystems). Modeled
after Google Bigtable.   存储方案: Row key (primary key), column family, column qualifier, time stamp.   API(s): C++, Thrift API, HQL   备注: Hypertable Architectural
overview
, FAQ    Infinispan

    公司/组织: JBoss Community   类型: Grid/Cache   简介: Scalable, highly available, peer to peer, data grid platform.   存储方案: Key/Value pair with optional expiration lifespan.   API(s): Java, PHP, Python, Ruby, C   备注: Infinispan FAQ, Wiki    InfoGrid

    公司/组织:
   类型: Graph   简介: Internet graph database made up on nodes and edges. Supports
in-memory and persistent storage alternatives including RDBMS, file
system, file grid, and custom storage.   存储方案: Nodes (meshobjects) and edges (relationships). Meshobjects can have
entity types, properties and participage in relationships. MeshObjects
raise events.   API(s): RESTful web services.   备注: InfoGrid Overview, FAQ    Keyspace

    公司/组织: Scalien   类型: Key/Value   简介: Distributed (master/slave) key-value data store delivering strong
consistency, fault-tolerance and high availability.   存储方案: Uses BErkeleyDB library for For local storage. Key/Value pairs and
their state are replicated to multiple servers.   API(s): C/C++, Python, PHP, HTTP   备注: Keyspace Overview, FAQ    MemcachedDB

    公司/组织:
   类型: Key/Value   简介: High performance, high realiability persistent storage engine for
key/value object storage.   存储方案: Uses BerkeleyDB as storage library/backend.   API(s): Memcache protocol, C, Python, Java, perl   备注: MemcacheDB complete
guide
(PDF format)    Mnesia

    公司/组织: Ericsson   类型: Key/Value   简介: Multiuser distributed database including support for replication and
dynamic reconfiguration.   存储方案: Organized as a set of tables made up of Erlang records. Tables also
have properties including type location, persistence, etc.   API(s): Erlang   备注: Mnesia Reference
manual
    MongoDB

    公司/组织: 10gen   类型: Document   简介: Scalable, high-performance, open source, schema-free,
document-oriented database   存储方案: JSON-like data schemas, Dynamic queries, Indexing, replication,
MapReduc   API(s): C,C++, Java, JavaScript, perl, PHP, Python, Ruby, C#, Erlang, Go,
Groovy, Haskell, Scala, F#   备注: MongoDB Documentation
Index
    Neo4J

    公司/组织: Neo Technology   类型: Graph   简介: Embedded, small footprint, disk based, transactional graph database
written in Java. Dual license – free and commercial.   存储方案: Graph-oriented data model with nodes, relationships and properties.   API(s): Java, Python, Ruby, Scala, Groovy, PHP, RESTful API.   备注: Neo4J Wiki, API, FAQ    Redis

    公司/组织:
   类型: Key/Value   简介: Key/Value store with the dataset kept in memory and saved to disk
asynchronously. “not just another key-value DB”   存储方案: Values can be strings, lists sets and sorted sets.   API(s): Python, Ruby, PHP, Erlang, Lua, C, C#, Java, Scala, perl   备注: Redis Wiki    SimpleDB

    公司/组织: Amazon   类型: Item/Attribute/Value   简介: Scalable Web Service providing data storage, query and indexing in
Amazon’s cloud.   存储方案: Items (like rows of data), Attributes (like column headers), and
Values (can be multiple values)   API(s): SOAP, REST   备注: SimpleDB FAQ, Getting
Started Guide
, Developer
Guide
, API    Tokyo Cabinet

    公司/组织: Mikio Hirabayashi   类型: Key/Value   简介: Library (written in C) of functions for managing files of key/value
pairs. Multi-thread support.   存储方案: Keys and Values can have variable byte length. Binary data and
strings can be used as a key and a value.   API(s): C, perl, Ruby, Java, Lua.   备注: Tokyo Cabinet Specifications, presentation(PDF
format). Also available: Tokyo Tyrant (remote service), Tokyo Distopia
(full text search), Tokyo Promenade (content management).    Voldemort

    公司/组织: LinkedIn   类型: Hash Table   简介: “It is basically just a big, distributed, persistent, fault-tolerant
hash table.” High performance and availability.   存储方案: Each key is unique to a store. Each key can have at most one value.
Supported types: JSON, string, identity, protobuf, java-serialization.   API(s): Java, C++, custom clients   备注: Project Voldemort Wiki, Client
how-to
  有如此多的非关系型数据库可选择真是一件好事。积累一些NoSQL相关的知识和初步体验能帮助管理人员、架构师、开发人员将所知道的关系型数据库的 长处和短处跟NoSQL数据库进行对比。关系型数据库和SQL查询语言目前在各种数据库应用程序的设计、开发和管理过程中仍是主要元素和中枢系统。但当我 们需要开始使用云数据库结构时,所有的我们了解的知识和收集的资料都能保证我们能迅速的进行迁移。这完全是根据用户和业务的需求,我们才能做出到底是使用 现有的关系型数据库技术还是使用NoSQL进行替换。
在”SQL 数据库的终结 – 第三篇” 中,我将会告诉大家一些因特网上关于 NoSQL 的资料,过去和将要发生的事件,以及一些相关指导。
你是否正在使用非关系型数据库呢?你是否已经放弃了SQL和关系型数据库呢?你是否正在把你的数据转移到一个公共的或私有的云数据库里呢?请发表评论。
编程就是人生!
译文:http://www.aqee.net/2010/03/29/the-end-of-sql-and-relational-databases-2/

帖子信息

Rank: 8

经验
18149  
金钱
11130  
贡献
43  
注册时间
2005-11-30 
最后登录
2012-2-9 
在线时间
268 小时 

元老勋章

回复 引用 收藏0 分享0 支持0 反对0
分享到外站: QQ空间 腾讯微博 腾讯朋友 新浪微博

举报 返回顶部

无觅相关文章插件