我想在 mysql 表中对如下所示的层次结构/目录进行建模。你可以在下面看到我在想的表模式。但是,我谈论的目录将由 100.000 个元素组成,深度约为 5-10 级。此外,我们将有一个标签池,目录的每个元素都可以链接到一个或多个标签。所以我想知道是否有更好的方法。我读到有些人决定设计不规范的表来影响高性能,我也在评估这个案例。
ps:有些人使用多路树在编程语言级别对此进行建模,所以问题是如何在数据库中结束的。
hierarchy:
A
| -> 1
|->1
|->2
| -> 2
| -> 3
B
| -> 1
| -> 2
table:
___________________________
| id |element | father |
|---------------------------|
| 000 | A | null |
| 001 | 1 | 000 |
| 002 | 1 | 001 |
| 003 | 2 | 001 |
| 004 | 2 | 000 |
| 005 | 3 | 000 |
| 006 | B | null |
| 001 | 1 | 006 |
| 002 | 2 | 006 |
-----------------------------