【问题标题】:WhichdDatabase would prove efficient?WhichdDatabase 会被证明是有效的?
【发布时间】:2009-10-22 14:06:36
【问题描述】:

我必须用 Java 开发一个 Web 应用程序,这是一个相当大的应用程序,需要存储和操作大量数据。我还打算使用 Hibernate 和 Spring。

现在有很多可用的数据库,如 MSSQL Server、MySQL Server、Oracle、db2 等。你推荐哪一个?

我寻找的功能是

  • Java - 数据库连接应该高效且易于实现

  • 良好的数据库服务器管理用户界面

  • 数据存储容量

  • 支持

  • 显然还有成本因素。

我们将不胜感激所有有价值的建议。在此先感谢:-)

已编辑:Web 应用程序将托管在 Linux 服务器上。

【问题讨论】:

标签: java mysql database database-management


【解决方案1】:

一切都适用于 Java,只要您付费,您就可以获得任何支持。

我的个人经历:

  1. 您的服务器是 Windows 机器吗?如果没有,MSSQL 就出局了。否则 MSSQL 有相当不错的 GUI。我没有尝试过使用它和 Java —— Visual Studio 对使用它进行开发的支持非常好。

  2. 我还没有发现 Oracle 物有所值。我在一个支付支持费用的地方工作,但他们仍然花了很长时间才承认 JDBC 驱动程序中的数据修改错误(仍然没有修复,我上次检查过)。

  3. MySql 的使用很简单——如果您需要复杂的功能,请检查以确保它受支持

我的 2 美分:坚持使用 MySql 或 Postgres,简单的 SQL,尽量不要制作任何存储过程或使用专有 SQL。如果你发现你超过了它,那将是一个微不足道的端口。

你越是尝试利用专有功能,你就越会被锁定。

【讨论】:

    【解决方案2】:

    只要数据库设计得当(针对 OLTP 进行规范化,针对 OLAP 进行非规范化),您提到的所有数据库都可以很好地扩展。

    在所有其他条件相同的情况下,如果成本是一个很大的因素,那么 MySQL 可能会比其他的便宜。

    【讨论】:

    • PostgeSQL 与 MySQL 价格相同(=它也是免费的),并且在功能和实际速度测量方面都比 MySQL 性能更高。
    • 性能更高?你能支持这个说法吗?我很想看看文档
    【解决方案3】:

    除了 MySQL、Postgresql 和 MS SQL Server,您可能还想查看 Apache Derby(又名 IBM Cloudscape,又名 JavaDB)。它非常便携:数据库代码只是一个 jar 文件;数据库文件也可以毫无问题地从一个平台复制到另一个平台。它支持SQL99 and SQL-2003 standardsin memory databases,既可以用作嵌入式数据库,也可以用作网络数据库。它没有自己的用户界面,您可以从众多 JDBC SQL 前端之一中进行选择,例如 Squirrel SQLAqua Data StudioSQL Developer(等等)。更多参考资料可以在IBM's web site找到。

    我也同意这里的其他发帖者,Oracle 不值得付出代价或头痛。一个值得注意的头痛是它的 JDBC 驱动程序返回非标准的日期对象,因此您的 Java 代码将需要包含 Oracle 特定的 hack。

    【讨论】:

      【解决方案4】:

      您可以查看Firebird

      【讨论】:

        【解决方案5】:

        Java、Hibernate 和 Spring 几乎可以用于任何数据库。 Squirrel 之类的工具也简化了跨数据库的数据库管理。

        关键是成本。我推荐PostgreSql。它非常出色:容量巨大,功能强大,拥有稳固的用户社区,并且是免费/开源的。

        【讨论】:

          【解决方案6】:

          我建议你

          • 获取DBVisulizer,这是我遇到的最好的数据库开发工具
          • 使用像DerbyH2 这样的嵌入式数据库进行原型设计
          • 使用上述数据库之一进行负载测试,以确定其是否足以满足您的生产需求
          • 如果不是,请使用 MySQL 或 Postgres 进行生产。根据您的 Linux 发行版,它们可能会像 'apt-get install mysql' 或类似的东西一样简单地安装
          • 在创建对象模型并对其进行调整后,使用Hibernate tools 生成架构,而不是先尝试启动架构,除非您在架构创建方面非常有经验。

          【讨论】:

            【解决方案7】:

            我更喜欢 MS SQL Server 的速度、支持等 大多数 Windows 主机以象征性的费用提供 MS SQL 支持。 这是一个免费的 GUI SQl Manager http://sqlmanager.net/en/products/mssql/manager/download SQL Server 管理工作室也有 :)

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2022-07-19
              • 2012-02-22
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2021-06-13
              相关资源
              最近更新 更多