【发布时间】:2011-12-01 13:51:31
【问题描述】:
我正在尝试制定用于存档目的的数据库结构。该应用程序旨在存储数据的主要目的是为了便于搜索和加快搜索速度以及未来的可扩展性。
例如具有 n 种主要数据类型的 db,例如 ARTICLE(数据库的主要内容)、Journal、Author 等,每个都有自己的表和 ID。但每篇文章可能有超过 1 个作者,并且可能已经在超过 1 个期刊上发表过。然后还有与每篇文章相关的内容信息相关的标签。
数据库需要可通过单个标签(也可以是分层的,例如 Wing Design > Swept Wing)、“期刊”、“作者”等进行搜索,并且这些标签都没有限制与每个“文章”。
在这种情况下,标准化是可能的,甚至是可取的吗?管道/空间分隔的数据是否足够?最好的方法是什么?
提前致谢! :)
编辑:添加一些说明:我正在为这个应用程序使用 MySQL。除了文章(即“作者”、“期刊”、“标签集1”、“标签集2”……“标签集-n”等),所有的 n 主要类型数据都处于同一级别的数据层次结构和可搜索性需求)
【问题讨论】:
-
你没有提到你的数据库引擎。它可能会对答案产生影响。例如,SQL Server 具有全文索引功能,在您的情况下可能比规范化更好。
-
目前我一直在使用 MySQL,我想在那里找到一种方法。不过感谢您提供的信息,如果找不到更好的选择,我可能愿意切换。
标签: database-design database-schema