为什么有这么多数据库管理系统?我不是数据库专家,我从未想过使用除mySQL之外的其他数据库。
编程语言提供了不同的范例,因此选择特定语言是有意义的。
选择特定数据库管理系统有哪些因素?
答案 0 :(得分:10)
不同人的不同笔划:
我对非关系型DBMS几乎一无所知:NoSQL,MongoDB,db4o,CouchDB,BigTable。我建议用另一个问题来解决这些问题,因为它们的目标与传统的RDBMS不同。
答案 1 :(得分:3)
DBMS已存在很多年,对于过去,未来和未来的IT基础架构而言非常重要。所以很多人都试图进入这个行业。有很多办公套件,内部浏览器等等。
What are factors to choose a specific DB management system ?
答案 2 :(得分:0)
有明显的缺席,例如面向列(LucidDB),平台无关(德比),内存(hsqldb,虽然德比也适合这里),可能还有其他数据库,按其关键属性进行分类。
答案 3 :(得分:0)
如果范例相同,那也是一个市场共享问题..(它是否被跳过了?!?)否则,彼得的答案是相当可观的。
答案 4 :(得分:0)
“这个答案并没有真正回答'为什么',它只是回答'谁'。”
是的,但我想'为什么'的答案可能就是有这么多'谁'谁都认为他们能做到“比其他人更好”。
“更好”具有特定'谁'选择的差距填补的重要性:
我个人的宠物问题是对CREATE ASSERTION的支持。它自1992年以来一直在SQL标准中,并没有一只大象知道如何支持它。我做。
答案 5 :(得分:0)
在大多数情况下,如果您正在为RDBMS / SQLish市场写作,那么您应该问的第一个问题是,“我已经了解了什么?我的员工知道什么?”如果你有答案,那么你应该首先选择那个SQL引擎。我的内部数据库极客对此答案感到不满,但事实是,除非您的开发人员无论如何都是真正获得关系数据库的一小部分,否则您将使用与其他人一样的标准数据库错误。问题是你是否可以让你的系统足够快。
如果您吞下了NoSQL饮料的投手也可能是这样,因为您也必须选择您理解的东西。
但是,如果您已经能够理解所有这些差异,那么您将理解答案是“它取决于”。通常的四个维度归结为这些:给定工作负载配置文件的执行速度(这是数据库在特定类型的问题上是否优秀的问题:一些更快的查找,例如,其他人在高并发性下更好写作);目标区域中的SQL一致性(例如,Oracle有趣 - 即错误 - NULL处理,MySQL遍布地图,Postgres将不带引号的标识符包装为小写);货币费用立即和长期(包括硬件要求,雇用人员的费用,许可证);也许你想要的功能(如果你想要Oracle的RAC,你必须购买Oracle)。
答案 6 :(得分:-1)
数据库系统也提供不同的范例。例如,MySQL或MSSQL是关系型的,而db4o是面向对象的,而MongoDB是面向文档的。