这篇文章本来应该写在上个周末, 可是临时有事给耽误了,上周五在MSDN上看到Effiproz DataBase发布了1.2版本. 在Effiproz以前也用过几个嵌入式开源数据库. 不过Effiproz DataBase是纯C#编写的. 开发者就可以将它移植到具备CLR的大多数环境中,包括.NET Compact、Mono、Windows 7以及Silverlight. 和Windows Phone . EffProze所具有的特点对于.NET程序员来说 确实是非常诱人的.但是如果对Effiproz细究发展过程还是比较曲折的过程. 当然这个过程也绝非单单对Effiporz而言的. 同时也透漏出.NET开源数据库在演变中发展整个过程.

<1>初始 Effiproz

Effiproz官方对Effiproz宣传语:Effiproz Embedded C# DataBase Fast Light Weight  For .NEt  /Asp.Net/.NET CF/Silverlight /Windows Phone 7/Mono.

Effproz是一个针对.NET程序员的轻量级跨平台嵌入式数据库.如果你第一次接触直观了解Effproz 请参考EffiProz:面向.NET程序员的跨平台嵌入式数据库.

Effproz是一个用纯C#编写的开源数据库,我们可以发现很多.NET的开源项目都是从优秀的Java项目移植过来的:我用得比较多像NHibernate、DotLucene(暂停开发...)、iTextSharp、Quartz.NET等.Effproz本身是从java的HSQLDB 1.9/2.0移植过来的,支持独立和嵌入两种部署模式。带有ADO.net Entity Framework Provider. 其实在SQlite 2000年出现时 后来演变出来一个.NEt版本ADO.NET Provider for SQLite. 也正是在这个时候Mark Tutt,写了第一个.NET数据库(据我所知):SharpHSQL,这是从Java界应用非常广泛的HSQLDB移植过来的,而HSQLDB又是从HSQL衍生过来的,但Mark Tutt做完第一个版本就停止对它更新和维护. 其实这也没什么问题.但 Mark Tutt这个版本在应用比较突出问题是只能在内存中使用 一断电内存消失所有的数据也就彻底丢失了. 这就涉及到SharpHSQL无法由内存中数据写入硬盘上文件进行数据持久化.

但是转机出现在Mark Tutt之后,Andresv接过了SharpHSQL,并让它成功地让数据保存到文件,于是乎真正意义上第一个纯.NET版本数据库终于出现了. 但是可悲的Andrew仿佛得到前辈MarkTutt的真传, 在第一个版本推出后Andresv就停止了对SharpHSQL进行维护和更新. 以至目前Java的HSQLDB发展的热火朝天.而SharpHSQL还像一个弱女子一样在.NET中乱撞 弱不禁风.

在SharpHSQL短暂停滞后.关于.NET开源数据库呼声也渐渐沉寂下来.  也恰巧在这时出现以令人眼前一亮的Minosse Relational DataBase System[MRDS]一个大型的纯C#开源数据库系统. 不是一个单一的数据引擎.而是一个数据管理系统. 但是对>NET开源数据库而言 这样好景并不长.可悲的是 Mionsse最终页难逃开源的厄运, 在昙花一现喜悦之后,便就失去继续开发的动力. Mionsse最终夭折.开源中.NET数据库呼声再次跌入低潮. 直至今年推出的:Effiproz. 才渐渐发生扭转.

如上整个历程可谓是.NET开源数据库发展很曲折的一个过程. Effiporz出现在一定程度上打破这样的局面.

<2>.NET开源数据小结

写到这里我们大概了解.NET开源数据库.发展的整个过程. 那么日常开发中虽然.NEt平台开源的数据库选择远远比不上Java平台开源数据库在数量和质量上的优势. [Java开源数据库清单] 但相对而言 还有不少开源或免费的数据库程序可供.Net应用程序使用.

<1>SQlite从2000年出来到现在已经历经多个版本变革. 同时也在.NET开源中使用比较多开源数据库之一.。.Net程序可以使用来自phxsoftware的System.Data.SQLite,此外常用的还有sqlite-net,System.Data.SQLite和sqlite-net都是通过P/Invoke调用C/C++的DLL实现,而csharp-sqlite是纯C#代码实现的.Sqlite运用范围非常广. 诺基亚的手机操作操作系统塞班(Symbian)、Mozilla、Safari、Chrome和桌面应用程序等. 当然在国内运用最广当然是从属移动的短信平台——飞信上适用.

<2>MySQl就用多说了.都很熟悉.体积小、速度快、总体拥有成本低 尤其一点是开源特点.MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司收购,可是MySQL收购不到1年之久, 2009年4月20日美国数据软件巨头Oracle就把Sun连同所属业务收购. le.至于MySQL在收购后应用前景也引起争议.

<3>DB4O完全原生于Java和.NET, 100% 面向对象, 抛开对象-关系映射, 为嵌入式应用优化, 开源,.db4o 可节省研发的费用和时间 面向对象的数据库,有.Net和Java两个版本。支持C/S和Embed两种使用模式。.Net版本程序需要Full Trust Level权限..[很冷门 不常用] 如果有兴趣可以看看DB4O和其他数据库性能比对报告

<4>要说一下DeveelDB,基本和Effiporz发布时间前后先不长,它的开发语言是C#基于.NET平台.DeveelDB 是一个采用 .NET 开发的 SQL 数据库管理系统,实现了 SQL-99 规范,支持包括事务处理、触发器、存储过程和函数,发布在google code上:Google code_DeveelDB

时当然免费使用还有VistaDB、SQL Server CE、SQL Server Express 等常用.

<3>Effiporz展望

EffiProz的作者Irantha Suwandarathna 在一次采访中透露下一个版本中.Effiporz将支持移动平台[我会在后面演示]. 此外,EffiProz还支持Entity Framework,下一版本(1.3)将支持MonoTouch。对MonoDroid的支持也在计划当中. 我会在后面逐篇幅介绍Effiporz多个方面使用. 以及于SQlExpress和SQLite进行使用技巧上比对.

参考资料:

OpenSource DAtaBase in C#

Wiki Effiporz [Wiki百科上关于所有开源数据库小结 非常全面 可供参考]

DBO4 Express Page

Java开源数据分类列表

开源中国社区-.NET开源数据库

本文转自chenkaiunion 51CTO博客,原文链接:http://blog.51cto.com/chenkai/764705

由Effiproz DataBase来看.NET开源数据库发展相关推荐

  1. 开源数据库产品平民化,为打破商业数据库垄断提供一条路径 ▏开源数据库系列谈之四...

    " 开源然数据库促使数据库产品走向平民化,为打破商业数据库垄断提供了一条切实可行的路径. " ---刘学习 对于Oracle的忠实粉丝来说,开放源代码对这家数据库巨头产生冲击是不容 ...

  2. 国产开源数据库的讲解

    ocean base 4.0--从分布式到单机,从单机到分布式 近年来,国产开源数据库如雨后春笋,遍地开花.据某技术平台不完全统计,国产开源数据库已经达到200多个.对于这些数据库的名字,即使作为多年 ...

  3. 开源数据库该怎么玩?

    9月13日,北京,巨杉数据库主办的"极客Cool" 沙龙第一期圆满结束.沙龙上,开源数据库的三个重要代表SequoiaDB巨杉数据库CTO王涛(NoSQL),阿里云RDS for ...

  4. 开源数据库成为发展自主可控产品的主要途径 ▏开源数据库系列谈之三

    利用开源的资源和机制,国内出现了众多的基于开源系统的数据库产品,涉及种类繁多,应用扩大.目前,开源数据库已经成为国产数据库实现突围,发展自主可控产品的主要途径. -------- 作者:刘学习 在信息 ...

  5. 疫情下开源数据库逆势增长,新基建下国产数据库迎机遇

    2020年5月DB-Engines 数据库流行度排行大家都看了吗? 虽然 Top 10 与上月没有任何变化,但仔细观察本月的排行榜,Oracle 较上月几乎持平,仅微涨 0.02 分:相较而言,MyS ...

  6. 国产数据库发展十策(二):数据库难在研发还是难在生态?

    数据库属于基础软件,在信息系统中的重要性不断增强,今天最广泛采用的 RDBMS 技术,也已经经历了50年的发展演进历程.然而在中国国产数据库领域,仍然存在"卡脖子"的难题,那么问题 ...

  7. 2020年5月数据库流行度排行:疫情下开源数据库逆势增长,新基建下国产数据库迎机遇...

    关注我们,数据库行业精彩不错过! 2020年5月号 DB-Engines 数据库流行度排行新鲜出炉.虽然 Top 10 与上月没有任何变化,但仔细观察本月的排行榜,Oracle 较上月几乎持平,仅微涨 ...

  8. 开源数据库在平安的应用实践

    2019年5月9日,平安科技数据库产品及存储产品部总经理在第十届数据库技术大会DTCC上分享了<开源数据库在平安的应用实践>,本文根据演讲内容整理,围绕以下几个方面进行分享: 1.平安为什 ...

  9. 数据库发展与PostgreSQL生态系列文章二

    作者:魏波,中国PG分会培训认证执行总监.资深数据库工程师,十多年的数据库运维管理及培训经验,掌握PostgreSQL架构部署.性能优化等,致力于推动PostgreSQL在中国的发展. 数据库发展概要 ...

最新文章

  1. 和12岁小同志搞创客开发:手撕代码,做一款亮度可调节灯
  2. 借助阿里云数加,小小的美甲行业被美甲帮玩出了天价。
  3. 201521123060 《Java程序设计》第10周学习总结
  4. To Java程序员:切勿用普通for循环遍历LinkedList
  5. 【通知】有三AI更新420页14万字视觉算法工程师成长指导手册,可下载收藏打印...
  6. 人脸识别(一)——从零说起
  7. io流,装饰者模式_流与装饰器
  8. nyoj239 月老的难题 二分图 匈牙利算法
  9. 每日一测4(装箱与拆箱)
  10. 世界银行开放数据目录:后宫数据集三千个,人生赢家就是你
  11. Java RMI(远程方法调用)入门
  12. 改变ALERT组件的背景色和背景透明度.
  13. win7下dynamips类模拟器桥接到本地PC,但是无法ping通的解决办法
  14. git ssh密钥生成与配置
  15. 信息系统分析与设计 第十章 系统总体设计
  16. 杰里之2M 包加入来电铃声和来电报号的问题【篇】
  17. linux2019排行网站,2019年Linux系统TOP100排行 国产Deepin排名第十
  18. HDMI之EDID使用说明
  19. Servlet学习之Servlet概念与运行流程
  20. 米兰2:2战平巴萨 席尔瓦最后关头致命一击

热门文章

  1. Python双版本下创建一个Scrapy(西瓜皮)项目
  2. RocketMQ-单机版安装与启动详细步骤
  3. jsp mysql demo_利用JSP+MYSQL实现注册+登入的demo----0001
  4. 最新发布丨游戏市场“超预期”增长背景下,如何加速产品精品化 运营精细化?
  5. 小站教育携手神策数据,数据赋能留学语言培训教育的智能化探索
  6. 神策数据出席 TIC 2018 大会,共同赋能大数据时代
  7. Quarkus 0.12.0 发布,下一代 K8s 原生 Java 框架
  8. 浅谈Android中Lifecycle
  9. Shell编程基础---shell的结构、执行及变量
  10. 高并发下的static类成员可能存在安全隐患