我有一个简单的计划:我有一个一个应用程序来创建记录并插入数据库(每秒2到10个记录)和 3个或更多应用程序(如客户端)连接到DBMS服务器以快速查询(SELECT
语句以搜索和过滤结果)记录
我不使用这些SQL命令:delete,update。我的记录增长到 20亿!
根据此规范,有人可以建议哪种数据库最适合我的情况吗?
答案 0 :(得分:1)
在处理大量记录时,我们使用MySQL的经验并不是很好。 (200万条记录是巨大的)我觉得MySQL也不是那么频繁插入的最佳选择。
工作的同事们说,MS-SQL更好。然后您的DBMS服务器必须基于Windows。这是你的决定是否是一个问题。Oracle不会出错。但它非常昂贵。
您的应用程序中应该有一个单独的数据库访问层,为您的所有数据库操作定义一个接口。如果您使用.NET,实体框架将使您的生活更轻松。完成这些操作后,您将能够相对轻松地试验不同的数据库。至少在理论上。
只是我的两分钱。
编辑: 20亿??
如果您确实需要那么多记录,这是我的答案:聘请专家。
答案 1 :(得分:1)
MySQL是免费的,但有效支持/维护。我已经在我们的应用程序主表中使用了大约1000多万行,它很好。它还有一些时髦的SQL扩展 - 你可以用它做一些简单有效的东西,你不能在其他数据库中做(或者做起来非常痛苦)。
MS-SQL恕我直言不值得为此付出 - 像大多数(所有?)MS产品一样,他们以“小”心态(部门系统规模)开始,然后改进并发性和可扩展性,并想知道为什么东西不起作用。
甲骨文的价格非常昂贵,但很容易让承包商的工作人员帮助你(他们跟着钱),这是一个非常成熟的坚如磐石的产品。
另一种选择是postgres,我已经使用了很多。我非常喜欢postgres - 它是免费的,而且非常可靠。有一点需要注意 - 它最近才将实时的故障转移复制捆绑到它的产品中 - 这是mysql多年来所拥有的。
我会去MySQL看看会发生什么。