我目前正在评估我们工程师使用的内部应用程序的设计和可能的重新实现。
尽管该应用程序处理大量数据,但仅保存两组值(浮点数),以及数据的简单名称和描述。在我看来,当前的应用程序使用规范化访问数据库来存储相当于7个字符串和浮点数字段的内容,有些过度。
从何时开始考虑从平面文件或序列化XML转换为关系数据库或反之亦然?
我目前正在评估我们工程师使用的内部应用程序的设计和可能的重新实现。
尽管该应用程序处理大量数据,但仅保存两组值(浮点数),以及数据的简单名称和描述。在我看来,当前的应用程序使用规范化访问数据库来存储相当于7个字符串和浮点数字段的内容,有些过度。
从何时开始考虑从平面文件或序列化XML转换为关系数据库或反之亦然?
即使只有单个表格和少量数据,数据库也比平面文件具有巨大的优势。
如果你拥有大量数据并需要快速查询其中一个值,数据库可以显著提高查询速度 - 通过索引从数据库中获取一个关键值,可以避免解析整个文件并搜索。
尝试为少量数据甚至为少数用户重新创建任何值得信赖的RDBMS的ACID原则,将会破坏你成功的机会。此外,你也不会拥有备份、自定义查询和许多其他RDBMS“开箱即用”的功能。
数据库将更好地查询数据。如果您指的是7个值,请使用平面文件。如果您指的是7个字段,其中可能有数百或数千条记录(每个记录包含7个字段),则请使用数据库 - 特别是如果您需要对这些记录进行排序或其他查询。
当我需要维护大量相关数据实体时,我会开始工作。
当您在数据中拥有多对多或多对一类型的关系时,就应该考虑使用关系型数据库来维护关系完整性。
请注意,原文中的“related”和“relational”为近义词,因此可以将其翻译成相同的中文词语“相关的”。