我有一个当前的数据库结构,似乎为了索引目的而拆分了一些数据。主tickets
表有更多的“精简”字段,例如外键、整数和日期,并且该tickets_info
表具有可能更大的数据,例如文本字段和 blob。这是继续下去的好主意,还是我应该合并表格?
例如,当前结构看起来像这样(假设与索引上的外键一对一的关系):
`tickets`
--------------------------------------------
id | customer | vendor | opened
--------------------------------------------
1 | 29 | 0 | 2013-10-09 12:49:04
`tickets_info`
--------------------------------------------
id | description | more_notes
--------------------------------------------
1 | This thing is broken! | Even longer...
我的应用程序执行的 SELECT 比 INSERT/UPDATE 多,因此我可以看到在为概览页面(每页 250 多个结果列表)一次查询大量工单时拆分的理论上的好处。然后将在页面上使用更大的详细信息,该页面仅显示一张票及其使用简单 JOIN 的详细信息(在外键上的其他几个 JOIN 中)。
这些表目前是 MyISAM,但如果有任何不同,我将在重组它们后将它们转换为 InnoDB。目前表格中大约有33列,tickets
表格中有4列tickets_info
;该tickets_info
表可能有更多列,具体取决于安装(我实现的类似于 PHPBBv3 的“自定义字段”)。