C#写的NoSQL开源项目/系统(系列)
http://www.cnblogs.com/unruledboy/archive/2013/01/07/CSharpNoSQL.html
闲扯
好久没写开源项目了,也没写对新开源项目的介绍,今晚看了几个项目,写一下。前言
一直推崇纯C#的解决方案,无论是多年写的各种文件格式的读写(如office系列的xls/xlsx/doc/docx之类,pdf之类),还有邮件收发(包括我9年前写的OpenPOP),文件压缩解压,数据库(SharpHSQL、C#写的Sqlite 等),我都相当热衷于介绍这些项目。NoSQL
NoSQL流行好几年了,相比于传统的SQL,NoSQL名字的“No”多少想要跟自己的前辈区分开了。SQL,是通过结构化的查询语句存取数据。NoSQL,一般是通过键值(Key/Value,或者常见的K/V)来存取数据。 NoSQL一般支持分布式存取、版本控制、多服务器同步,目的是提供高性能,大存储量的数据解决方案,可以说是专门为互联网而生的。著名
出名的NoSQL有Cassandra、MongoDB、Redis、CouchDB、Memcachedb、BigTable等。C#
RavenDB
Ravendb是个开源项目,但商业化,这个产品更多的作为文档数据库。VelocityDB
VelocityDB号称是全球基于.NET速度最快的对象数据库/NoSQL,但商业化,支持分布式。这里显示的性能比较相当惊人,插入速度几乎是MySQL的100倍!RaptorDB
C#写的NoSQL,我一直关注RaptorDB,作者对性能有较高的要求,作者说RaptorDB用的是他自创的MGindex做索引,比b+树写快15倍,读快21倍。该项目遵循CPOL,简单来说你可以免费用于商业。不支持分布式。STSdb
STSdb是个开源项目,遵循GPL,但要商业许可。有自己的虚拟文件系统,支持ACID、快照等,测试性能,我的THINKPAD T410 i5 + 6G RAM + 7200RPM硬盘 5秒插入100万记录。平均速度是MySQL的30倍!不支持分布式。Lucandra.NET
Lucandra.NET是Lucene 和 Cassandra的混合产物,目前不活跃,许可是Apache,简单点说可以用于商业。Akavache
Akavache比较活跃,许可是自由使用。DeNSo DB
DeNSo DB开源,要商业许可,特性包括支持REST/WCF访问。siaqodb
siaqodb开源,要商业许可,支持WinRT。不支持分布式。性能比较
![](https://images.cnblogs.com/cnblogs_com/unruledboy/19874/o_%E6%97%A0%E6%A0%87%E9%A2%98.png)