`
mengxs
  • 浏览: 28797 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

NOSQL 简介

 
阅读更多

NoSQL概念

随着web2.0的快速发展,非关系型、分布式数据存储得到了快速的发展,它们不保证关系数据的ACID特性。NoSQL概念在2009年被提了出来。NoSQL最常见的解释是“non-relational”,“Not Only SQL”也被很多人接受。(“NoSQL”一词最早于1998年被用于一个轻量级的关系数据库的名字。)

 

NoSQL被我们用得最多的当数key-value存储,当然还有其他的文档型的、列存储、图型数据库、xml数据库等。在NoSQL概念提出之前,这些数据库就被用于各种系统当中,但是却很少用于web互联网应用。比如cdb、qdbm、bdb数据库。

 

传统关系数据库的瓶颈

传统的关系数据库具有不错的性能,高稳定型,久经历史考验,而且使用简单,功能强大,同时也积累了大量的成功案例。在互联网领域,MySQL成为了绝对靠前的王者,毫不夸张的说,MySQL为互联网的发展做出了卓越的贡献。

 

在90年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付。在那个时候,更多的都是静态网页,动态交互类型的网站不多。

 

到了最近10年,网站开始快速发展。火爆的论坛、博客、sns、微博逐渐引领web领域的潮流。在初期,论坛的流量其实也不大,如果你接触网络比较早,你可能还记得那个时候还有文本型存储的论坛程序,可以想象一般的论坛的流量有多大。

 

NOSQL的优势

易扩展

 

NoSQL数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性。数据之间无关系,这样就非常容易扩展。也无形之间,在架构的层面上带来了可扩展的能力。

 

大数据量,高性能

 

NoSQL数据库都具有非常高的读写性能,尤其在大数据量下,同样表现优秀。这得益于它的无关系性,数据库的结构简单。一般MySQL使用Query Cache,每次表的更新Cache就失效,是一种大粒度的Cache,在针对web2.0的交互频繁的应用,Cache性能不高。而NoSQL的Cache是记录级的,是一种细粒度的Cache,所以NoSQL在这个层面上来说就要性能高很多了。

 

灵活的数据模型

 

NoSQL无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式。而在关系数据库里,增删字段是一件非常麻烦的事情。如果是非常大数据量的表,增加字段简直就是一个噩梦。这点在大数据量的web2.0时代尤其明显。

 

高可用

 

NoSQL在不太影响性能的情况,就可以方便的实现高可用的架构。比如Cassandra,HBase模型,通过复制模型也能实现高可用。

 

 

NOSQL产品

 

 

http://nosql-database.org/ 写道
NOSQL数据库列表

Core NoSQL Systems: [Mostly originalted out of a Web 2.0 need]
Wide Column Store / Column Families  列存储

Hadoop / HBase: API: Java / any writer, Protocol: any write call, Query Method: MapReduce Java / any exec, Replication: HDFS Replication, Written in: Java, Concurrency: ?, Misc: Links: 3 Books [
123

Cassandra: API: many Thrift » languages, Protocol: ?, Query Method: MapReduce, Replicaton: , Written in: Java, Concurrency: eventually consistent , Misc: like "Big-Table on Amazon Dynamo alike",  initiated by Facebook, Slides » , Clients », Installation »

Hypertable:  API: Thrift (Java, PHP, Perl, Python, Ruby, etc.), Protocol: Thrift, Query Method: HQL, native Thrift API, Replication: HDFS Replication, Concurrency: MVCC, Consistency Model:  Fully consistent Misc:  High performance C++ implementation of Google's Bigtable.  Commercial support  »

Amazon SimpleDBMisc: not open source / part of AWS, Book »

Cloudata: Google's Big table clone like HBase. Article »
Cloudera: Professional Software & Services based on Hadoop.

SciDBArray Data Model for Scientists
, paper », poster », HiScaBlog »
HPCC: from LexisNexisinfoarticle
Stratosphere:  (research system) massive parallel & flexible execution, M/R generalization and extention (paperposter).

[OpenNeptune, Qbase, KDI]
:

Document Store 文档存储

MongoDB:  API: BSON, Protocol: lots of langs, Query Method: dynamic object-based language & MapReduce, Replication: Master Slave & Auto-Sharding, Written in: C++,Concurrency: Update in Place. Misc: Indexing, GridFS Links: Talk », Notes »

CouchDB:  API: JSON, Protocol: REST, Query Method: MapReduceR of JavaScript Funcs, Replication: Master Master, Written in: Erlang, Concurrency: MVCC,  Misc
Links: 3 CouchDB books », Couch Lounge » (partitioning / clusering),  Dr. Dobbs »


RavenDB
.Net solution. Provides HTTP/JSON access. LINQ queries & Sharding supported. Misc: »

Citrusleaf: 

Clusterpoint Server: (freeware+commercial) API: XML, PHP, Java, .NET Protocols: HTTP, REST, native TCP/IP Query Method: full text search, XML, range and Xpath queries; Written in C++Concurrency: ACID-compliant, transactional, multi-master cluster Misc: Petabyte-scalable document store and full text search engine.  Information ranking. Replication. Cloudable.

ThruDB: (please help provide more facts!) Uses Apache Thrift to integrate multiple backend databases as BerkeleyDB, Disk, MySQL, S3.

Terrastore: API: Java & http, Protocol: http, Language: Java, Querying: Range queries, Predicates, Replication: Partitioned with consistent hashing, Consistency: Per-record strict consistency, Misc: Based on Terracotta

SisoDB:  A Document Store on top of SQL-Server.

SDB: For small online databases, PHP /  JSON interface, implemented in PHP.

[RaptorDB, CloudKit, Perservere, Jackrabbit »]

Key Value / Tuple Store    key value 存储

DynamoDB: (will be inserted soon) 

Azure Table Storage:  Collections of free form entities (row key, partition key, timestamp). Blob and Queue Storage available, 3 times redundant. Accessible via REST or ATOM.

MEMBASE: API: Memcached API+protocol (binary and ASCII) , most languages, Protocol:Memcached REST interface for cluster conf + management, Written in: C/C++ + Erlang (clustering), Replication: Peer to Peer, fully consistent, Misc: Transparent topology changes during operation, provides memcached-compatible caching buckets, commercially supported version available, Links: Wiki », Article » 

Riak: API: JSON, Protocol: REST, Query Method: MapReduce term matching , Scaling: Multiple Masters; Written in: Erlang, Concurrency: eventually consistent (stronger then MVCC via Vector Clocks), Misc: ... Links: talk »,

Redis :  API: Tons of languages, Written in: C, Concurrency: in memory and saves asynchronous disk after a defined time. Append only mode available. Different kinds of fsync policies. Replication: Master / Slave, Misc: also lists, sets, sorted sets, hashes, queues. Cheat-Sheet: », great  slides »  Admin UI» From the Ground up »

LevelDB: Fast & Batch updates. DB from Google. Written in C++. Blog », hot Benchmark », Article » (in German). Java access.

Chordless: API: Java & simple RPC to vals, Protocol: internal, Query Method: M/R inside value objects, Scaling: every node is master for its slice of namespace, Written in: Java, Concurrency:serializable transaction isolationLinks:

GenieDB: Immediate consistency sharded KV store with an eventually consistent AP store bringing eventual  consistency issues down to the theoretical minimum. It features efficient record coalescing. GenieDB speaks SQL and co-exists /  do intertable joins with SQL RDBMs. 

Scalaris(please help provide more facts!) Written in: Erlang, Replication: Strong consistency over replicas, Concurrency: non blocking Paxos.

Tokyo Cabinet / TyrantLinks: nice talk », slides », Misc: Kyoto Cabinet »

GT.M: API: M, C, Python, Perl, Protocol: native, inprocess C, Misc: Wrappers: M/DB for SimpleDB compatible HTTP »MDB:X for XML »PIP for mapping to tables for SQL », Features: Small footprint (17MB), Terabyte Scalability, Unicode support, Database encryption, Secure, ACID transactions (single node), eventual consistency (replication), License: AGPL v3 on x86 GNU/Linux, Links: Slides »,

Scalien:  API / Protocol: http (text, html, JSON), C, C++, Python, Java, Ruby, PHP,Perl. Concurrency:Paxos.

Berkeley DB: API: Many languages, Written in: C, Replication: Master / Slave, Concurrency: MVCC, License: SleepycatBerkeley DB Java Edition: API: Java, Written in: Java, Replication: Master / Slave, Concurrency: serializable transaction isolation, License: Sleepycat

Voldemort: Open-Source implementation of Amazons Dynamo Key-Value Store. 

Dynomite: Open-Source implementation of Amazons Dynamo Key-Value Store. written in Erlang. With "data partitioning, versioning, and read repair, and user-provided storage engines provide persistence and query processing".

KAI: Open Source Amazon Dnamo implementation, Misc: slides , 

MemcacheDB: API: Memcache protocol (get, set, add, replace, etc.), Written in: C, Data Model: Blob, Misc: Is Memcached writing to BerkleyDB.

Faircom C-Tree: API: C, C++, C#, Java, PHP, Perl, Written in: C,C++. Misc: Transaction logging. Client/server. Embedded. SQL wrapper (not core). Been around since 1979.

HamsterDB:  (embedded solution) ACID Compliance, Lock Free Architecture (transactions fail on conflict rather than block), Transaction logging & fail recovery (redo logs), In Memory support – can be used as a non-persisted cache, B+ Trees – supported [Source: Tony Bain »]

STSdb: API: C#, Written in C#, embedded solution, generic XTable<TKey,TRecord> implementation,
ACID transactions, snapshots, table versions, shared records, vertical data compression, custom compression, composite & custom primary keys, available backend file system layer, works over multiple volumes, petabyte scalability, LINQ.

Tarantool/Box:  API: C, Perl, PHP, Python, Java and Ruby. Written in: Objective C ,Protocol:asynchronous binary, memcached, text (Lua console). Data model: collections of dimensionless tuples, indexed using primary + secondary keys. Concurrency: lock-free in memory, consistent with disk (write ahead log). Replication: master/slave, configurable. Other: call Lua stored procedures.

Maxtable API: C, Query Method: MQL, native API, Replication: DFS Replication, Consistency: strict consistency  Written in: C.

Pincaster: For geolocalized apps. Concurrency: in-memory with asynchronous disk writes. API:HTTP/JSON. Written in: C. License: BSD.

RaptorDB:  A pure key value store with optimized b+tree and murmur hashing. (In the near future it will be a JSON document database much like mongodb and couchdb.)

TIBCO Active Spaces: peer-to-peer distributed in-memory (with persistence) datagrid that implements and expands on the concept of the Tuple Space. Has SQL Queries and ACID (=> NewSQL).

allegro-C: Key-Value concept. Variable number of keys per record. Multiple key values, Hierarchic records. Relationships. Diff. record types in same DB. Indexing: B*-Tree. All aspects configurable. Full scripting language. Multi-user ACID. Web interfaces (PHP, Perl, ActionScript) plus Windows client.

nessDB: A fast key-value Database (using LSM-Tree storage engine), API: Redis protocol(SET,MSET,GET,MGET,DEL etc.), Written in: ANSI C

HyperDex: Distributed searchable key-value store. Fast (latency & throughput), scalable, consistent, fault tolerance, using hyperscpace hashing. APIs for C, C++ and Python.

Mnesia: (ErlangDB »
LightCloud:  (based on Tokyo Tyrant)
Hibari: Hibari is a highly available, strongly consistent, durable, distributed key-value data store

[Scality »KaTree », TomP2P »Kumofs » TreapDB », , NMDB, luxio, actord, keyspace, flare, schema-free, RAMCloud]


[SubRecord, Mo8onDb, Dovetaildb]

Graph Databases » 

Neo4J:  API: lots of langs, Protocol: Java embedded / REST, Query Method: SparQL, nativeJavaAPI, JRuby, Replication: typical MySQL style master/slave, Written in: Java, Concurrency:non-block reads, writes locks involved nodes/relationships until commit, Misc: ACID possible, Links: Video », good Blog »  

Infinite Graph: (by Objectivity) API: Java, Protocol: Direct Language Binding, Query Method: Graph Navigation API, Predicate Language Qualification, Written in: Java (Core C++), Data Model:Labeled Directed Multi Graph, Concurrency: Update locking on subgraphs, concurrent non-blocking ingest, Misc: Free for Qualified Startups.

Sones: OO Graph DB, API: .NET, Protocol: .NET embedded, REST, WebServices, Query Method:Graph Query LanguageLINQ (M/R), Replication: Master-Master, Written in: C#, Concurrency: MVCC 

InfoGrid:  API: Java, http/REST, Protocol: as API + XPRISO, OpenID, RSS, Atom, JSON, Java embedded, Query Method: Web user interface with html, RSS, Atom, JSON output, Java native, Replication: peer-to-peer, Written in: Java, Concurrency: concurrent reads, write lock within one MeshBase, Misc: Presentation »

HyperGraphDB:  API: Java (and Java Langs), Written in:Java,  Query Method: Java or P2P, Replication: P2P, Concurrency: STM, Misc: Open-Source, Especially for AI and Semantic Web.

Trinity: API: C#, Protocol: C# Language Binding, Query Method: Graph Navigation API, Replication:P2P with Master Node, Written in: C#, Concurrency: Yes (Transactional update in online query mode, Non-blocking read in Batch Mode) Misc: distributed in-memory storage, parallel graph computation platform

DEX: API: Java,.NET, C++, Blueprints Interface  Protocol: Embedded, Query Method: APIs (Java, .Net, C++) + Gremlin (via Blueprints), Written in: C++, Data Model: Labeled Directed Attributed Multigraph, Concurrency: yes, Misc: Free community edition up to 1 Mio nodes, Links: Intro », Tutorial » 

AllegroGraph: API: Java, Python, Ruby, C#, Perl, Clojure, Lisp Protocol: REST, Query Method:SPARQL and Prolog, Libraries: Social Networking Analytics & GeoSpatial, Written in: CommonLisp , Links: Learning Center », Videos »

BrightstarDB: A native, .NET, semantic web database with code first Entity Framework, LINQ andOData support. API: C#, Protocol: SPARQL HTTP, C#, Query Method: LINQ, SPARQL, Written in: C#

Bigdata:  API: Java, Jini service discovery, Concurrency: very high (MVCC), Written in: Java, Misc: GPL + commercial, Data: RDF data with inference, dynamic key-range sharding of indices, Misc: Blog » (parallel database, high-availability architecture, immortal database with historical views)

Meronymy:  RDF enterprise database management system. It is cross-platform and can be used with most programming languages. Main features: high performance, guarantee database transactions with ACID, secure with ACL's, SPARQL & SPARUL, ODBC & JDBC drivers, RDF & RDFS.  »

OpenLink VirtuosoHybrid DBMS covering the following models: Relational, Document, Graph

VertexDB

FlockDB: by twitter » »

AllegroGraph:

[Java Universal Network / Graph Framework, OpenRDF / Sesame, Filament, OWLim, NetworkX, iGraph, Jena]

List of SPARQL implementations can be found here.

Multimodel Databases

OrientDB: Languages: Java, Schema: Has features of an Object-Database, DocumentDB, GraphDB or Key-Value DB, Written in: Java, Query Method: Native and SQL, Misc: really fast, lightweight, ACID with recovery.

AlchemyDB: GraphDB + RDBMS + KV Store + Document Store. Alchemy Database is a low-latency high-TPS NewSQL RDBMS embedded in the NOSQL datastore redis. Extensive datastore-side-scripting is provided via deeply embedded Lua.



Soft NoSQL Systems: 
[Mostly NOT originalted out of a Web 2.0 need but worth a look for great non relational solutions]
Object Databases     (more info at ODBMS.org)

db4o: API: Java, C#, .Net Langs, Protocol: language, Query Method: QBE (by Example), Soda, Native Queries, LINQ (.NET),  Replication: db4o2db4o & dRS to relationals, Written in: Java,  Cuncurrency: ACID serialized, Misc: embedded lib, Links: DZone Refcard #53 », Book »,  

Versant: Languages/Protocol: Java, C#, C++, Python. Schema: language class model (easy changable). Modes: always consistent and eventually consistent  Replication: synchronous fault tolerant and peer to peer asynchronous. Concurrency:  optimistic and object based locks. Scaling: can add physical nodes on fly for scale out/in and migrate objects between nodes without impact to application code. Misc: MapReduce via parallel SQL like query across logical database groupings.

Objectivity: Languages: Java, C#, C++, Python, Smalltalk, SQL access through ODBC. Schema:native language class model, direct support for references, interoperable across all language bindings. 64 bit unique object ID (OID) supports multi exa-byte.  Platforms: 32 and 64 bit Windows, Linux, Mac OSX, *Unix. Modes: always consistent (ACID).  Concurrency: locks at cluster of objects (container) level. Scaling: unique distributed architecture, dynamic addition/removal of clients & servers, cloud environment ready. Replication: synchronous with quorum fault tolerant across peer to peer partitions.

Starcounter: API: C# (.NET languages), Schema: Native language class model, Query method:SQL, Concurrency: Fully ACID compliant, Storage: In-memory with transactions secured on disk, Reliability: Full checkpoint recovery, Misc: VMDBMS - Integrating the DBMS with the virtual machine for maximal performance and ease of use.


PerstAPI: Java,Java ME,C#,Mono. Query method: OO via Perst collections, QBE, Native Queries, LINQ, native full-text search, JSQL Replication: Async+sync (master-slave) Written in: Java, C#
Caching: Object cache (LRU, weak, strong), page pool, in-memory database Concurrency:Pessimistic+optimistic (MVCC) + async or sync (ACID) Index types: Many tree models + Time Series. Misc.: Embedded lib., encryption, automatic recovery, native full text search, on-line or off-line backup. 


ZODB: API:  PythonProtocol:  Internal, ZEO, Query Method: Direct object access, zope.catalog, gocept.objectquery, Replication: ZEO, ZEORAID, RelStorage Written in:  Python, C Concurrency:  MVCC, LicenseZope Public License (OSI approved)
 Misc:Used in production since 1998

Magma: Smalltalk DB, optimistic locking, Transactions, etc.

NEO:  API: Python - ZODB "Storage" interface,  Protocol: native,  Query Method: transactional key-value,  Replication: native,  Written in: Python,  Concurrency: MVCC (internally),  License: GPL "v2 or later",  Misc: Load balancing, fault tolerant, hot-extensible.

PicoLisp: Language and Object Database, can be viewed as a Database Development Framework. Schema: native language class model with relations + various indexes. Queries: language build in + a small Prolog like DSL Pilog. Concurrency: synchronization + locks. Replication, distribution and fault tolerance is not implemented per default but can be implemented with native functionality. Written in C (32bit) or assembly (64bit).

siaqodb: An object database engine that currently runs on .NET, Mono, Silverlight,Windows Phone 7, MonoTouch, MonoAndroid, CompactFramework; It has implemented a Sync Framework Provider and can be synchronized with MS SQLServer; Query method:LINQ;

Sterling: is a lightweight object-oriented database for .NET with support for Silverlight and Windows Phone 7. It features in-memory keys and indexes, triggers, and support for compressing and encrypting the underlying data.

Morantex: Stores .NET classes in a datapool. Build for speed. SQL Server integration. LINQ support.
[GemstoneProgress] 

EyeDB
EyeDB is an LGPL OODBMS, provides an advanced object model (inheritance, collections, arrays, methods, triggers, constraints, reflexivity), an object definition language based on ODMG ODL, an object query and manipulation language based on ODMG OQL. Programming interfaces for C++ and Java.

HSS Database:  Written in: 100% C#, Platform: .NET 4, SL4 and WP7/WP7.1, Single DLL API, Small licensing fee for support, 90 Day Trial Available, ~100KB footprint.

FramerD: Object-Oriented Database designed to support the maintenance and sharing of knowledge bases. Optimized for pointer-intensive data structures used by semantic networks, frame systems, and many intelligent agent applications. Written in: ANSI C.

[StupidDB », KiokuDB » (Perl solution), Durus » ]

Grid & Cloud Database Solutions

GigaSpaces: Popular SpaceBased Grid Solution.

Queplix: NOSQL Data Integration Environment, can integrate relational, object, BigData – NOSQL easily and without any SQL.

Hazelcast: P2P Data Grid Solution on java.util.*, On a 100 Noce EC2 Cluster »

Joafip

[GridGain, Infinispan, Coherence, eXtremeScale
]
 

XML Databases

Mark Logic Server:  (commercial system) API: Java, .NET Protocols
HTTP, REST Query Method:XQuery, XSLT Written in: C++ (code closed, API open) Concurrency: Share-nothing cluster architectureMisc: Petabyte-scalable XML server. Cloudable. Combines application server, transactional persistent storage (XML, text, and binary), and a full-text search engine. Developer Network » 

EMC Documentum xDB:   (commercial system) API: Java, XQuery, Protocol: WebDAV, web services, Query method: XQuery, XPath, XPointer, Replication: lazy primary copy replication (master/replicas), Written in: Java, Concurrency: concurrent reads, writes with lock; transaction isolation, Misc: Fully transactional persistent DOM; versioning; multiple index types; metadata and non-XML data support; unlimited horizontal scaling. Developer Network » 

eXist: API: XQuery, XML:DB API, DOM, SAX, Protocols: HTTP/REST, WebDAV, SOAP, XML-RPC, Atom, Query Method: XQuery, Written in: Java (open source), Concurrency: Concurrent reads, lock on write; Misc: Entire web applications can be written in XQuery, using XSLT, XHTML, CSS, and Javascript (for AJAX functionality). (1.4) adds a new full text search index based on Apache Lucene, a lightweight URL rewriting and MVC framework, and support for XProc.

Sedna: Misc: ACID transactions, security, indices, hot backup. Flexible XML processing facilities include W3C XQuery implementation, tight integration of XQuery with full-text search facilities and a node-level update language.

BaseX:  BaseX is a fast, powerful, lightweight XML database system and XPath/XQuery processor with highly conformant support for the latest W3C Update and Full Text Recommendations. Client/Server architecture, ACID transaction support, user management, logging, Open Source, BSD-license, written in Java, runs out of the box.

Qizx:  commercial and open source version, API: Java, Protocols: HTTP, REST, Query Method:XQuery, XQuery Full-Text, XQuery Update, Written in: Java, full source can be purchased, Concurrency: Concurrent reads & writes, isolation, Misc: Terabyte scalable, emphasizes query speed.

Berkeley DB XML: API: Many languages, Written in: C++, Query Method: XQuery, Replication: Master / Slave, Concurrency: MVCC, License: Sleepycat 

[Xindice Tamino ]

Multidimensional Databases

Globals: by Intersystems, multidimensional array.Node.js API, array based APIs (Java / .NET), and a Java based document API.

Intersystems CachePostrelational System. Multidimensional array APIs, Object APIs, Relational Support (Fully SQL capable JDBC, ODBC, etc.) and Document APIs are new in the upcoming 2012.2.x versions. Availible for Windows, Linux and OpenVMS.

Multivalue Databases

U2 (UniVerse, UniData): MultiValue Databases, Data Structure: MultiValued, Supports nested entities, Virtual Metadata, API: BASIC, InterCall, Socket, .NET and Java API's, IDE: Native, Record Oriented, Scalability: automatic table space allocation, Protocol: Client Server, SOA,  Terminal Line, X-OFF/X-ON, Written in: C, Query Method: Native mvQuery, (Retrieve/UniQuery) and SQL, Replication: yes, Hot standby, Concurrency: Record and File Locking (Fine and Coarse Granularity)

OpenInsight: API:  Basic+, .Net, COM, Socket, ODBC, Protocol: TCP/IP, Named Pipes, Telnet, VT100. HTTP/S Query Method: RList, SQL & XPath
 Written in: Native 4GL, C, C++, Basic+, .Net, Java  Replication: Hot Standby Concurrency: table &/or row locking, optionally transaction based & commit & rollback Data structure: Relational &/or MultiValuesupports nested entitiesScalability: rows and tables size dynamically

Reality
 (
Northgate IS): The original MultiValue data set database, virtual machine, enquiry and rapid development environment. Delivers ultra efficiency, scalability and resilience while extended for the web and with built-in auto sizing, failsafe and more. Interoperability includes Web Services, Java Classes, XML, ActiveX, Sockets, C and, for those that have to interoperate with the SQL world, ODBC/JDBCand two-way transparent SQL data access.

OpenQM
Supports nested data. Fully automated table space allocation. Concurrency control via task locks, file locks & shareable/exclusive record locks. Case insensitivity option. Secondary key indices. Integrated data replication. QMBasic programming language for rapid development. OO programming integrated into QMBasic. QMClient connectivity from Visual Basic, PowerBasic, Delphi, PureBasic, ASP, PHP, C and more. Extended multivalue query language. 

ESENT: (by Microsoft)  ISAM storage technology. Access using index or cursor navigation. Denormalized schemas, wide tables with sparse columns, multi-valued columns, and sparse and rich indexes. C# and Delphi drivers available. Backend for a number of MS Products as Exchange.

jBASE: more info »

other NoSQL related databases

IBM Lotus/Domino: Type: Document Store, API: Java, HTTP, IIOP, C API, REST Web Services, DXL, Languages: Java, JavaScript, LotusScript, C, @Formulas, Protocol: HTTP, NRPC, Replication:Master/Master, Written in: C
Concurrency: Eventually Consistent, Scaling: Replication Clusters

eXtremeDB
Type: In-Memory Database; Written in: C; API: C/C++, SQL, JNI, C#(.NET), JDBC; Replication: Async+sync (master-slave), Cluster; 
Scalability: 64-bit and MVCC

RDM Embedded: APIs: C++, Navigational C. Embedded Solution that is ACID Compliant with Multi-Core, On-Disk & In-Memory Support. Distributed Capabilities, Hot Online Backup, supports all Main Platforms. Supported B Tree & Hash Indexing. Replication: Master/Slave, Concurrency: MVCC. Client/Server: In-process/Built-in

ISIS Family: (semistructured databases) »
Prevayler: Java RAM Data structure journalling. 
Yserial
: Python wrapper over sqlite3

unresolved and uncategorized

VMware vFabric GemFire: »  (coming soon!)

Btrieve
: (by Pervasive Software) key/index/tupel DB. Using Pages.  » (faq »)

Tokutek: 

Recutils: GNU Tool for text files containing records and fields. Manual »

FileDB: Mainly targeted to Silverlight/Windows Phone developers but its also great for any .NET application where a simple local database is required, extremely Lightweight - less than 50K, stores one table per file, including index, compiled versions for Windows Phone 7, Silverlight and .NET, fast, free to use in your applications

illuminate Correlation Database », FluidDB (Column Oriented DB) »,Fleet DB », Btrieve , 
Twisted Storage », Ringo 
»Sherpa », tin », Dryad»SkyNet »Disco »
 
Possibly the oldest NoSQL DB: Adabas »

 

分享到:
评论

相关推荐

    walmtwang#note#NoSQL简介1

    NoSQL简介什么是NoSQL非关系型的数据库为什么需要NoSQLHigh performance - 高并发读写Huge Storage - 海量数据的高效率

    python 19、REDIS基础 1-2_NoSQL简介、Redis安装与配置、特点与应用、数据类型_Day01_pm.mp4

    python 19、REDIS基础 1-2_NoSQL简介、Redis安装与配置、特点与应用、数据类型_Day01_pm.mp4

    python 19、REDIS基础 1-1_NoSQL简介、Redis安装与配置、特点与应用、数据类型_Day01_am.mp4

    python 19、REDIS基础 1-1_NoSQL简介、Redis安装与配置、特点与应用、数据类型_Day01_am.mp4

    NoSQL简介.pdf

    NoSQL,全称为"Not Only SQL",是一种非关系型数据库技术,源于对传统关系型数据库在处理大规模数据和高并发场景下效率不足的反思。随着Web2.0时代的到来,尤其是社交网络(SNS)的崛起,NoSQL数据库因其特有的优势...

    1. NoSQL简介和分布式系统1

    NoSQL(Not Only SQL)是一种非关系型数据库技术,它与传统的SQL数据库有着显著的区别。在信息化时代,随着大数据和互联网应用的快速发展,NoSQL数据库因其高可扩展性、灵活性和高性能等特点,逐渐受到广泛关注。 ...

    NoSQL简介习题.pdf

    NoSQL,全称为"Not Only SQL",意为“不仅仅是SQL”,是一种非关系型的数据库管理系统设计模式。随着互联网技术的发展,大数据的涌现以及高并发访问的需求,传统的关系型数据库已经无法满足所有需求,因此NoSQL...

    NoSql简介.ppt

    High performance - 对数据库高并发读写的需求 关系数据库应付高并发的SQL写数据请求,硬盘IO会显得非常吃力,而对数据库高并发的读写需求往往是很多大型网站不可避免的需求 Huge Storage - 对海量数据的高效率存储...

    NoSQL数据库入门 高清PDF

    #### 一、NoSQL简介 NoSQL(Not Only SQL)是指非关系型数据库,它的出现主要是为了解决Web 2.0时代大量非结构化数据存储的需求。相比于传统的SQL(Structured Query Language)数据库,NoSQL数据库在扩展性、性能...

    NoSQL与Python学习

    一、NoSQL简介 NoSQL数据库是一种非关系型的、分布式的、面向文档的或键值对的数据存储系统。它不同于传统的SQL数据库,NoSQL数据库不使用固定的表结构,也没有严格的SQL规范。NoSQL数据库具有高度的可扩展性、灵活...

    web-335:NoSQL简介

    【标题】:“Web-335:NoSQL简介” 在当今大数据时代,传统的关系型数据库系统(RDBMS)在处理大规模、高并发的数据存储和访问时常常力不从心。这时,NoSQL数据库应运而生,为互联网应用程序提供了一种更灵活、可...

    NoSQL精粹 中文完整版.pdf

    ### NoSQL简介 NoSQL(Not Only SQL)是一种非关系型数据库管理系统,其设计目的是为了处理大数据量,提供灵活的数据模型,并实现高可用性和可扩展性。与传统的关系型数据库相比,NoSQL数据库通常具有更高的性能和...

    Web-335:NoSQL简介

    【标题】:NoSQL简介 在当今大数据时代,传统的关系型数据库系统(RDBMS)在处理海量数据和高并发场景时,往往力有不逮。此时,NoSQL(Not Only SQL)数据库应运而生,它提供了一种更为灵活、可扩展性强的数据存储...

    NoSQL非关系型数据库

    #### NoSQL简介 NoSQL,意为“不仅仅是SQL”(Not only SQL),而非“不是SQL”(Not SQL)。它代表着一种新兴的数据库技术,旨在解决传统关系型数据库(RDBMS)所面临的挑战。随着互联网的发展,特别是Web 2.0时代...

    大数据技术原理与应用之NoSQL数据库.pptx

    5.1 NoSQL简介 NoSQL数据库具有灵活的可扩展性、灵活的数据模型和与云计算紧密融合等特点。NoSQL数据库的兴起是由于关系数据库无法满足Web2.0的需求,主要表现在海量数据的管理需求、数据高并发的需求和高可扩展性...

    Chapter5-厦门大学-林子雨-大数据技术原理与应用-第五章-NoSQL数据库31.pptx

    5.1 NoSQL 简介 ---------------- NoSQL 数据库具有以下几个特点: * 灵活的可扩展性 * 灵活的数据模型 * 与云计算紧密融合 NoSQL 数据库不再强调关系数据库的严格事务机制和高效的查询机制,而是以灵活的数据...

    8-NoSQL数据库.ppt

    **5.1 NoSQL简介** NoSQL数据库的核心特点包括: 1. **灵活的可扩展性**:NoSQL数据库设计易于水平扩展,可以通过添加更多服务器来处理更大规模的数据和更高的并发请求。 2. **灵活的数据模型**:不同于RDBMS的固定...

    第5章-NoSQL数据库(详细介绍了SQL语句)

    #### 一、NoSQL简介 NoSQL数据库作为一种非关系型数据库,其设计理念在于灵活性、高并发读写能力和分布式存储,旨在满足大数据应用和实时Web应用的需求。与传统的关系型数据库相比,NoSQL数据库不依赖于固定的模式...

    NoSQL 简介

    NoSQL,全称为"Not Only SQL",是一种非关系型数据库技术,它的出现是对传统关系型数据库(RDBMS)的一种补充和创新。随着互联网的快速发展,每天都在产生海量的数据,尤其是非结构化和半结构化的数据,如社交媒体、...

Global site tag (gtag.js) - Google Analytics