SQL - Nested Sets und co.
Verfasst: 20.05.2009 14:48
Hiho,
Ich habe da mal eine frage bzw. brauche einen Denkanstoß ^_^
Ich muss in einer SQL DB eine Baumstruktur abbilden auf den ersten Blick würden sich Nested Sets dafür ja gut eignen weil sie super einfach auslesbar sind.
Nur mein Problem ist das dieser Baum ständig geändert werden muß und das bei Nested Sets Auswirkungen auf jeden nachfolgenden eintrag der Tabelle hat.
Wen aber jeder nachfolgende Eintrag einer Änderung unterzogen wird will ich mir gar nicht erst ausmalen was bei einem Fehler passiert oder wen die Auslastung den maximal bereich erreicht.
Nun gibt es ja noch die Möglichkeit das ganze nur mit Parent ID's zu bewerkstelligen hier hab ich dann den vorteil das änderungen super einfach sind aber ich muss den Baum rekursiv durchforsten um ihn auswerten zu können und Rekursion auf ner DB ist halt im gegensatz zu Nested Sets arg langsam
Oder ich mache es per Pfadangabe das wäre wohl der optimale Mittelweg was die Performance angeht.
Was meint ihr welches der Modelle sollte ich nehmen ich kann mich grad nicht entscheiden.
Ich habe da mal eine frage bzw. brauche einen Denkanstoß ^_^
Ich muss in einer SQL DB eine Baumstruktur abbilden auf den ersten Blick würden sich Nested Sets dafür ja gut eignen weil sie super einfach auslesbar sind.
Nur mein Problem ist das dieser Baum ständig geändert werden muß und das bei Nested Sets Auswirkungen auf jeden nachfolgenden eintrag der Tabelle hat.
Wen aber jeder nachfolgende Eintrag einer Änderung unterzogen wird will ich mir gar nicht erst ausmalen was bei einem Fehler passiert oder wen die Auslastung den maximal bereich erreicht.
Nun gibt es ja noch die Möglichkeit das ganze nur mit Parent ID's zu bewerkstelligen hier hab ich dann den vorteil das änderungen super einfach sind aber ich muss den Baum rekursiv durchforsten um ihn auswerten zu können und Rekursion auf ner DB ist halt im gegensatz zu Nested Sets arg langsam
Oder ich mache es per Pfadangabe das wäre wohl der optimale Mittelweg was die Performance angeht.
Was meint ihr welches der Modelle sollte ich nehmen ich kann mich grad nicht entscheiden.