Mysql
專用表 VS 多用途表
我正在使用 MySQL 數據庫開發一個類似應用程序的論壇。我有任何其他論壇的文章、評論和回复。
目前我有一個文章表、一個評論/回复表和一個使用者/對象關係表。
最近,我一直在研究 WordPress CMS 數據庫結構,我注意到以上所有內容都在一個表下,並且有一個欄位“post_type”確定對象的類型(例如文章、評論或回复)。
我發現這對於本網站的目的非常靈活,但在速度方面是否明智?
此外,我正在考慮使用額外的數據庫,例如僅用於查詢的 ElasticSearch 和僅用於儲存的 MySQL。
您對這種方法有何看法?優點缺點?
先感謝您 :)
當數據模式相同並且數據可能相關時,這樣的設置是完全可以的,甚至是可取的,因為它使某些任務(例如支持搜尋功能)變得容易得多。有了適當的索引和可靠的查詢速度,就不應該擔心。
僅當您發現自己為了減少表而試圖強制數據適合模式時才應避免使用這種類型的表(例如決定將使用者數據保存為字元串表示形式以適合具有新類型的表)或使用類型來指示共享單個列的其他表的不同鍵引用,這將禁止使用外鍵並破壞您的關係模型。