SQL服务器VS MySql vs Oracle为大型政府项目

我负责决定哪个数据库用于大型政府项目:

  • 1亿条logging(估计在一个大表中)
  • 可用性和数据可靠性是至关重要的。
  • 性能不如可用性和可靠性重要。
  • 表结构相当平坦,有一些20-30表。
  • SQL查询或多或less简单,没有复杂的联接。
  • 降低成本是一个重要的因素。
  • 用户数范围在100-200(同一时间)。
  • 必须在集群(2台服务器)或服务器冗余(两台服务器之间)
  • 所有服务器将配备RAID / SAS硬盘和多核双CPU
  • 可以根据RDBMSselect聘请适当的DBpipe理员

mySQL是否足够成熟来处理这种configuration?

请帮忙。

你可能在授权方面有“先有技术”,这可以使你的决定更清晰。 举个例子,我有很多政府客户,他们有ORACLE的企业范围的许可证,所以站在一个新的服务器是一个没有问题的硬件考虑。 与您的客户检查现有的企业解决scheme。

如果这是一个通用的解决scheme,那么您可能要考虑任何映射层解决scheme集,这将允许您在后端部署方面具有灵活性,例如适当地使用ODBC,JDBC或JMS从下一个下游层进行连接到数据库,从configuration文件中提供连接的设置。 这样就可以避免一定程度的locking。当然,如果这个解决scheme是单一的客户特定的,而且你不希望向其他人出售,那么你可以避免这样的体系结构考虑……除非他们拥有多个数据库供应商,并且他们希望在任何后端执行灵活性。

我想所有提到的数据库都足够成熟。 如果你的场景很简单,我会select你打算使用的开发平台的系统。

例如,在.NET中进行开发时,MS SQL Server 2008为您提供了许多很好的集成function,集成这个数据库比MySQL更容易。 甲骨文是一个通用的select,但价格要高得多。 在Windows服务器上,我更喜欢MS SQL 2008,在Linux MySQL或Oracle上。 但我知道所有的系统都在两个平台上实现。

所有这些系统都是类似的可靠的,并在许多24/7应用程序中使用(MySQL也不例外)。

一个很大的决定性因素是数据库pipe理和开发经验给你带来了什么? 如果您目前是Oracle专卖店,而且您必须聘请MySQL DBA来pipe理MySQL数据库,那么从长远来看,这将比新的Oracle许可证花费更多。

什么是“100兆logging(估计)”是什么意思? 那应该是1亿? 所有列出的三个可以处理的数据量,只要你给服务器足够的CPU和内存来处理工作量。

有一点需要弄清楚的是数据库的RPO和RTO。 这将帮助您devise您需要的解决scheme。

你的需求是模糊的,但我会select在Re​​d Hat Linux上运行的主/从冗余模式的x64(12核,48 GB RAM)的MySQL企业版。

你想要通用的build议,这是一个价格便宜的强大系统。 2台服务器每台将花费10K,软件每台支持一台机器大约7K(5K MySQL EE,2K RHEL)。 您现在在MySQL上受Oracle支持。 您也可以用相同的价格交换Oracle Enterprise Linux。

你所说的一切都表明你需要更多的东西。 主/从MySQL是一个众所周知的configuration,比集群要容易得多,并且在主服务器出现硬件故障后的15分钟内将会备份。 像Bart说的那样,地理隔离确实会有所帮助,通常你不能在集群上这样做,但是你可以用MySQL复制。