Jag brukar rekommendera en design som heter Closure Table .
Se exempel i mitt svar till Vad är det mest effektiva/eleganta sättet att analysera ett platt bord till ett träd?
Jag designade även denna presentation:Modeller för hierarkisk data med SQL och PHP . Jag utvecklade en PHP-app som återger ett träd på 0,3 sekunder, från en samling hierarkiska data med 490k noder.
Jag bloggade om Closure Table här:Rendering Trees with Closure Tabell .
Jag skrev ett kapitel om olika strategier för hierarkisk data i min bok, SQL Antipatterns:Avoiding the Fallgropar med databasprogrammering .