您如何看待Postgres和Firebird数据库?

时间:2009-08-26 01:43:19

标签: asp.net database postgresql firebird

我想在postgre和firebird数据库之间做出选择。该数据库将安装在带有asp.net 3.5的Windows 2003服务器上。我不想因为价格问题而使用sql server而且我不想要MySQL我对它以及.net连接器和会员提供商有不好的经验。

18 个答案:

答案 0 :(得分:10)

我一直对Postgres印象深刻;它传统上具有比MySQL更完整的功能集(在ACID合规性,对高级查询的支持等方面),它具有可靠的Windows ODBC驱动程序,并且其文档严格指出它偏离SQL标准的任何领域。 (似乎所有数据库都在一个方面或另一个方面有所偏差,但Postgres是我见过的唯一一个确保你知道什么时候这样做的人。)我没有尝试过你描述的使用场景,但是我在Linux上运行它并从Windows ODBC和Linux客户端访问它都没有问题。

我对Firebird没有任何经验;遗憾。

答案 1 :(得分:10)

我从1.0开始使用firebird数据库

我很满意

我正在使用Windows和Linux

前一段时间,我曾经和odbc合作过。没问题,很容易

易于安装,维护非常小,岩石

在多个文件中划分数据库是一个选项,但我不建议你这样做

服务器崩溃(电子问题或完整硬盘)后,系统继续工作,无需任何维护

我有关于测试的第2.1节和关于生产的1.5

我正在使用flamerobin来管理两个版本

海伦的书非常适合学习火鸟

我还测试并阅读了关于postgresql的内容。

它看起来很棒的数据库服务器

很长一段时间以来,他们一直在使用多代记录(自从开始以来,在groton数据库之前的interbase之前就像火鸟一样)

在postgresql上,现在你需要腾出记录(在firebird上它被称为扫描)

有人告诉你,这不是postgresql的必要条件,但我不这么认为

postgresql有更好的语言。你可以用这种语言编写自己的函数(在firebird上你必须在c,c ++等上编写新函数)。

postgresql有更多数据类型。事实上,你有几个。 您还可以完整搜索。

在postgresql上你也有正常的表达(我想在哪里,因此有替代选项)。这个功能将很快在firebird上准备好

无论如何,我对火鸟和它的进化感到非常满意。

Postgresql和firebird正在改进,而且它们之间存在差异

许多评论firebird和postgresql的评论都是从...复制的 http://www.firebirdsql.org/dotnetfirebird/blog/2005/03/firebird-advantages-over-postgresql.html

这是一个古老的比较。我不认为.net上的postgresql驱动程序现在还不成熟

使用firebird,您无法从一个数据库连接到另一个数据库(在短期内可能会连接)

Firebird比postgresql更小更容易,但它在性能,稳定性和低维度方面也非常出色

再见

答案 2 :(得分:8)

我已经使用Firebird好几年了。它坚如磐石,我很高兴。 Borrie的“The Firebird Book”& amp;它的更新。使用IBexpert可以获得令人敬畏的管理功能。

答案 3 :(得分:8)

我在6年多前一直在使用PostgreSQL,Firebird,Oracle,MySQL,MSSQL,而我的首选是Firebird和PostgreSQL。我不喜欢MySQL,因为商业许可证不便宜,MySQL缺乏一些功能。 我问你FB和Pg之间我最喜欢的是什么......它的要求和需求各不相同。当速度是必须的时候,我觉得Firebird的效果更好。我一直在使用非常大的数据库环境,我没有遇到任何问题。 PostgreSQL在用PHP,Python和Ruby开发的网站和互联网应用程序中表现更好,但我认为这不会有太多时间。在过去的几个月里,大公司都希望FB成为一个非常严肃的数据库。我建议你FB。尝试一下,给它一个机会,你不会失望。

答案 4 :(得分:5)

我们从出生就开始使用Firebird。其实我们喜欢这个数据库:)

答案 5 :(得分:5)

我喜欢使用Postgres - 它功能强大,快速,可靠且记录完备。 PL / PgSQL语言的功能与您可以想象的一样强大,我无法想到我遇到的一个严重问题。大多数问题往往是用户创建的问题,并在深入研究文档后得到解决。

如果您对“成年”数据库(即不是MS Access之类的)有所了解,或者准备好学习,我会全心全意地推荐Postgres。

无法对Firebird发表评论,因为我还没有使用它

答案 6 :(得分:5)

Firebird + FreeadhocUDFs + IBExpert,只是编程。

我们有2个生产系统已有6年 (20个域,200个表,50个视图,370个存储过程,600个触发器, 205个生成器,11个,角色等等)已经过测试迁移到PostgreSQL(仅限 测试,我们喜欢Firebird)。

在具有传统数据类型的表中(整数,varchar,日期,数字等) 在适当的情况下,差异可以是其中一个或另一个 但在存储过程中,Firebird比Postgresql强大得多, 更加简单和优雅。

两三年,任何Linux发行版,不包括Firebird,只有Mysql和Postgresl。 今天不是没有,但tradicionesles发行(ubunutu / opensuse / fedora / centos等等)和 Firebird包含在他们的存储库中。

Postgresql并不是说比Firebird差,Firebird并不比Postgresql好多少。 但我毫不犹豫地说Firebird没有什么可以羡慕Postgresql,并且在很多方面更强大。

(抱歉我的英语不好)

答案 7 :(得分:4)

自2005年以来,我一直在使用Firebird,在Delphi,C#和ASP.NET中编写应用程序。我的项目中从未有过腐败的数据库。我从不需要使用其他数据库。 为什么Firebird而不是PostgreSQL? 因为Firebird是:

  • 易于安装和配置;
  • 非常稳定;
  • 轻量级(Firebird 2.5下载: 6,4MB / Postgresql 9.0下载: 47MB);
  • 开放源代码;
  • 轻松部署(PSQL);
  • Crossplatform(Win32 / Win64 / Linux x86 / Linux AMD64 / MacOS X / Solaris / HP-UNIX);
  • 不需要DBA;
  • 嵌入式引擎;

好。如果您使用Firebird,则不需要其他数据库。 :)

答案 8 :(得分:4)

他们都很酷。然而,Firebird的一大优势是它的.net数据提供商。良好的成熟解决方案,与buggy npgsql(或一些付费的Postgres驱动程序)。因此,主要选择您更熟悉的数据库或您的开发团队技能是什么。

Postgres和Firebird都是出色的数据库。

答案 9 :(得分:4)

Firebird非常棒,坚固,易于维护,安装和维护占地面积小(嵌入式版本) 唯一的缺点是:您必须进行备份和还原以消除物理上删除的记录。 所以对于一个必须24/7/365的系统来说这是一个巨大的限制。这不是我的情况所以没有问题。

PostgreSQL没有那个问题(但我从未使用过它)。 一位朋友在PostgreSQL上使用linux服务器运行一家拥有数百万笔交易的整个运输公司。 java和他很开心。但是维护比火鸟更重。

此外,如果您使用delphi,Firebird更适合。

答案 10 :(得分:3)

Firebird Rocks man,见link Firebird Advantages over PostgreSQL

成熟的Windows支持。 Windows上支持Firebird很长一段时间,并且经过了很好的测试。自8.0以来,PostgreSQL本身支持Windows。还只有几个月......

成熟的ADO.NET提供商。 Npqsql(PostgreSQL ADO.NET提供商)仍处于测试阶段。 Firebird ADO.NET提供程序支持嵌入式Firebird,服务API(备份,恢复,统计,批量SQL执行......)。

嵌入版。嵌入式版本(2 MB运行时和轻松切换到独立服务器)似乎是Firebird的最大优势之一。

<强>许可即可。 LGPL(Npgsql被LGPL覆盖)似乎不如IPL商业友好(至少它是一种不那么清晰的语言)。

Firebird开源数据库服务器赢得SourceForge Community Choice Award(在“最佳企业项目”类别中)。

再见。

答案 11 :(得分:3)

我已经使用Firebird 8年了,而且非常强大。

检查此链接http://www.ib-aid.com/articles/item104,看看Firebird是一个非常好的数据库。

Postgres的.NET驱动程序并不成熟,而firebird .net提供程序甚至支持实体框架!!

答案 12 :(得分:3)

我推荐Firebird,大多数功能都相同 1. FB - 支持表中的多个排序规则 2. FB - 成熟司机的更多选择 3. FB - 由Thread或Process管理的连接取决于您的使用/设置 4. FB - 嵌入式支持

不推荐 远离MS SQLExpress

有点退缩 如果下面的条件属实,FB-blob处理不是很好 但是如果你将blob列移动到分离的表中,那么blob没有问题    一个。大规模数据挖掘/操作    湾blob列是用其他数据列定义的

答案 13 :(得分:2)

我们从1.0v开始使用Firebird。它稳定,坚固,开箱即用,极易安装和维护。

我们使用.Net和Delphi开发。

如果您选择FB,如果您需要一些提示,请随时与我们联系。

Paulo Junqueira。

http://www.rt1.com.br

答案 14 :(得分:2)

功能否1:Firebird需要0管理,比Postgresql更易于使用 (想想sqlite就像oracle / postgresql一样易于使用)

2.Firebird确实具有嵌入式模式,并且在2.5

中完全是多线程的

3.And Firebird完全是多线程的,其中Postgresql不是

所以我们在这个领域领先至少2年或更长时间

“所有后端在一个进程中作为线程运行(不需要) 这消除了我们从当前设置中获得的过程保护。线程创建通常与现代系统上的进程创建相同,因此使用纯线程模型似乎是不明智的,MySQL和DB2已经证明线程引入的问题与它们解决的问题一样多。已经讨论了线程化的特定操作,例如I / O,seq扫描和连接管理,并且可能会实现这些操作以启用特定的性能功能。 迁移到线程引擎还需要暂停PostgreSQL上的所有其他工作一到两年。

稍后我将更新帖子,其中包含更多功能和链接原因 http://mapopa.blogspot.com/2010/10/where-firebird-is-better-than.html

答案 15 :(得分:1)

正如其他人所指出的那样,PostgreSQL在功能,速度和可靠性方面非常出色。但是,在开发了一个企业.Net应用程序之后,我不得不说它不像SQL Server那样容易与Visual Studio相结合。除此之外,SQL Server vs PostgreSQL有点像Windows GUI和Linux shell:一个很容易使用,但另一个更快,更强大,ONCE你已经习惯了。

显然你不能通过ODBC驱动程序使用LINQ,如果你使用有时连接的移动设备开发系统,你将失去自动同步的选项,否则你将无法使用SQL Server和SQL Server Compact。< / p>

答案 16 :(得分:0)

Firebird 的一个分支是 Oracle克隆,名为 Fyracle ,甚至可以运行 Compiere 。在this页面上,您可以找到作者选择Firebird优于 PostgreSQL 的原因,这也可能有助于您做出决定。从这句话中可以看出这种Oracle仿真的成功程度:

  

Firebird-Fyracle支持专业   基于Oracle的ERP / CRM应用程序   “Compiere” - 几乎没有变化   到Compiere代码库。 Fyracle有   从版本开始支持Compiere   2.4.2b,包含超过20,000行的PL / SQL。目前的发布,   2.5.3c,将大多数PL / SQL移动到用Java编写的存储过程中,   这也得到了支持   火鸟-Fyracle。

答案 17 :(得分:-5)

为什么不尝试SQL Express从Microsoft免费使用的缩小版SQL。