Diskussion:Nested Sets

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Bezeichnung "Nested Sets"[Quelltext bearbeiten]

Muss dieses Modell unbedingt die englische Bezeichnung „Nested Set“ haben? Diesen Ausdruck gibt es meiens Wissens im Englischen gar nicht.

Hallo liebe IP-Adresse, in allen im Artikel genannten Quellen wird dieser Begriff verwendet und auch die Suchmaschinen werfen für den Begriff eine nicht unerhebliche Ergenismenge aus. Die Übersetzung der Bezeichnung, nämlich "verschachtelte Mengen", trifft den Nagel ziemlich auf den Kopf. Ob diese Bezeichnung im Englischen üblich ist, kann ich nicht sagen. Leider nennst Du auch keine Belege dafür, dass es den Ausdruck im Englischen nicht gibt, weichst Deine Aussage im Gegenteil mit einem "meines Wissens" auf. Leider nennst Du weiterhin auch keine alternativen Vorschläge. Ich würde mich freuen, wieder von Dir zu hören, werden das Lemma aber bis auf weiteres bei "Nested Set" belassen. Danke & Gruß Togs 14:05, 28. Okt. 2006 (CEST)[Beantworten]

Bin auch nicht zufrieden mit dem nicht selbsterklärenden namen. Das schreckt nicht wissende leicht ab. Besser als verschachtelte Mengen finde ich "Intervallschachtelung" von nested intervals. Das ist möglicherweise eine etwas breitere deffinition wird aber vom bisherigen text nicht ausgeschlossen. Ein komplexeres interval wird z.B. hier beschrieben: http://www.grzm.com/fornow/archives/2004/07/10/static_hierarchies Alice wl 14:48, 03. Jan. 2007 (CEST)[Beantworten]

In den Quellen wird nicht Nested Set, sondern Nested Sets verwendet. Das ist in meinen Augen ein wichtiger Unterschied, da eine einzelne "verschachtelte Menge" keinen Sinn ergibt, mehrere ineinander verschachtelte Mengen dagegen schon. Der Begriff im Plural ist auch der Fachbegriff; der im Singular existiert gar nicht. -- daf? 19:48, 15. Feb. 2007 (CET)[Beantworten]
Ich habe den Artikel inhaltlich komplett überarbeitet und werde ihn nun auch auf das korrekte Lemma verschieben. -- daf? 19:57, 16. Feb. 2007 (CET)[Beantworten]

Ich finde die Grafik zur Veranschaulichung nicht wirklich geeignet. Was haltet Ihr von den Abbildungen in meinem Artikel? Insbesondere die Abbildung 4 hat - dem E-Mail-Feedback nach zu urteilen - einigen Menschen erheblich dabei geholfen, das Prinzip zu verstehen. Falls die Abbildungen gefallen, dürft Ihr sie gerne hier einbauen, sind sowohl unter der CC-BY-SA als auch unter der GFDL zu haben (siehe Lizenzhinweise am Ende des Artikels). -- akl 20:31, 23. Jun. 2007 (CEST)[Beantworten]

Im Artikel steht "Das Modell wurde im Buch SQL for Smarties von Joe Celko vorgestellt." Wurde das Modell dort zum ersten mal veröffentlicht? Kann ich mir kaum vorstellen. Wenn ja vll. ein "erstmals" einfügen, ansonsten löschen - klingt nach Werbung.

Die erste Erwähnung ist nicht im Buch von Joe Celko, sondern in http://www.dbmsmag.com/9603d06.html und http://www.dbmsmag.com/9604d06.html. Diese Artikel und eine Menge Leserpost zu diesem Thema sind dann die Grundlage des Buches gewesen. Die beiden Artikel sind auch die Grundlage meiner Präsentation http://kris.koehntopp.de/artikel/sql-self-references/ gewesen, das Buch gab es da noch nicht. -- Isotopp 12:01, 19. Feb. 2009 (CET)[Beantworten]
...wenn man bedenkt, daß z.b. Allaire's ColdFusion (ebenfalls seit 1996!) die technik des populating of a query in 3D-arrays with nesting <CFLOOP>s kannte - was noch ausgefeilter ist - dann glaube ich auch nicht so ganz daran... gruß, --ulli purwin 20:22, 23. Apr. 2008 (CEST)[Beantworten]
Sorry, aber ColdFusion ist eine prozedurale Programmiersprache und das Bearbeiten eines mehrdimensionalen Arrays in einer prozeduralen Programmiersprache mittels verschachtelter Schleifen ist etwas völlig anderes als die Darstellung einer hierarchischen Datenstruktur in Form von über ihre Grenzen definierter Mengen im Rahmen einer Datensatz-orientierten Datenhaltung. Das Hauptproblem, das mit Nested Sets gelöst wird, ist zudem, eine Limitation von traditionellen RDBMS zu umgehen. Wenn man in einer anderen Umgebung etwas ähnliches machen kann, ist das ebenfalls nicht relevant: Man kann mit fast allem Dinge machen, die ein RDBMS nicht kann oder die mit einem RDBMS schwierig sind. Das hilft dem RDBMS-Nutzer aber nicht; Nested Sets nach Joe Celko dagegen schon. -- daf? 08:45, 9. Mai 2008 (CEST)[Beantworten]
Nach meinen Informationen wurde das Modell tatsächlich in dem oben erwähnten Buch zuerst veröffentlicht. Dass ich selbst keine ältere Quelle kenne, ist natürlich kein Beweis dafür. Joe Celko wird aber i.Allg. als Erfinder genannt. -- daf? 08:45, 9. Mai 2008 (CEST)[Beantworten]

Bildbeschreibung fehlt bei [[Bild:Nestedsets.svg]][Quelltext bearbeiten]

Der Artikel enthält ein Bild, dem eine Bildbeschreibung fehlt, überprüfe bitte, ob es sinnvoll ist, diese zu ergänzen. Gerade für blinde Benutzer ist diese Information sehr wichtig. Wenn du dich auskennst, dann statte bitte das Bild mit einer aussagekräftigen Bildbeschreibung aus. Suche dazu nach der Textstelle [[Bild:Nestedsets.svg]] und ergänze sie.

Wenn du eine fehlende Bildbeschreibung ergänzen willst, kannst du im Zuge der Bearbeitung folgende Punkte prüfen:
  • Namensraum Datei: Bilder sollte im Namensraum Datei liegen. Bitte ändere die alten Bezeichnungen Bild: und Image: in Datei:.
  • Skalierung: Außerhalb von Infoboxen sollten keine festen Bildbreiten (zum Beispiel 100px) verwendet werden. Für den Fließtext im Artikelnamensraum gibt es Thumbnails in Verbindung mit der automatischen Skalierung. Um ein Bild/eine Grafik in besonderen Fällen dennoch größer oder kleiner darzustellen, kann der „upright“-Parameter verwendet werden. Damit erfolgt eine prozentuale Skalierung, die sich an den Benutzereinstellungen orientiert. --SpBot 23:56, 1. Mär. 2009 (CET)[Beantworten]

Anzahl aller Knoten eines Teilbaums?[Quelltext bearbeiten]

»Somit kann die Anzahl der Knoten im gesamten Baum ermittelt werden, indem der Wert rechts minus dem Wert links der Wurzel durch zwei geteilt und (ab-)gerundet wird.«

Meiner Ansicht wäre in obiger Aussage »(auf-)gerundet« korrekt. (Es sei denn man wollte die Wurzel des betrachteten Teilbaumes nicht mitzählen.) -- 83.65.195.12 18:13, 10. Okt. 2010 (CEST)[Beantworten]

Das Abfragen der direkten Kinder eines Knotens ist schwierig.[Quelltext bearbeiten]

Ist es nicht mit folgendem Statement getan? Z.B. für die direkten Kinder von "Mammal" aus dem Beispiel:

 SELECT (COUNT(parent.id)-1) AS depth, node.id
 FROM tree AS node, tree AS parent
 WHERE node.l BETWEEN parent.l AND parent.r
 AND node.l BETWEEN 2 AND 13 -- l und r von "Mammal"
 GROUP BY node.id
 HAVING depth = 2 -- depth von "Mammal" + 1
 ORDER BY node.l

BrezelBen 11:32, 18. Jan. 2012 (CET)[Beantworten]

Teilbaum entfernen bzw. Knoten löschen[Quelltext bearbeiten]

Vielleicht könnte man noch erwähnen, dass beim Löschen eines Knotens ohne Bearbeitung der anderen Knoten der Baum trotzdem noch eindeutig ist.

        1A16
     /        \
    2B9       10F15
 /   |  \    /     \
3C4 5D6 7E8 11G12 13H14


Nach dem Löschen des Knoten B:


       1A16
 /   /  |     \
3C4 5D6 7E8   10F15
             /     \
           11G12 13H14

Auswertungen wie "Anzahl aller Knoten eines Teilbaums" stimmen in dem Falle aber nicht mehr automatisch.

Die Neuberechnung von l und r für die verbliebenen Knoten kann in bestimmten Anwendungsfällen so auch später erfolgen, z.B. wenn mehrere einzelne Knoten (nicht Teilbaum!) in einem Baum gelöscht werden.

      1A14
 /   /  |     \
2C3 4D5 6E7   8F13
             /    \
           9G10 11H12

-- 00:49, 21. Okt. 2021 (CEST) peterdd