从Effiproz看.NET开源数据库的发展轨迹

这篇文章本来应该写在上个周末, 可是临时有事给耽误了,上周五在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进行使用技巧上比对.

原文标题:由Effiproz DataBase来看.NET开源数据库发展

链接:http://www.cnblogs.com/chenkai/archive/2010/08/31/1813556.html

【编辑推荐】

  1. 用NoSQL来替代MySQL在Digg中的原因
  2. MongoDB CEO谈NoSQL的大数据量处理能力
  3. 专访盖国强:NoSQL很火 但还需市场检验
  4. 详解NoSQL数据库使用实例
  5. 云计算时代NoSQL当道 关系数据库日薄西山

 

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/301706.html<

(0)
运维的头像运维
上一篇2025-05-24 11:14
下一篇 2025-05-24 11:15

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注