Forum: Datenbanken
by jobo,
12. Jul 2014
Nein, es gibt auch Optimierer, die nach festen Regeln arbeiten.
Aber was Du schlussfolgerst, läuft auf das hinaus, was ich auch rüberbringen wollte. Es macht wenig Sinn, einen nicht regelbasierten Optimizer "verstehen" zu wollen. Unabhängig von der Qualität der Statistiken, die von manchen Systemen herangezogen werden, sagt man gewissen Systemen nach, dass bspw. sogar physikalische...
Forum: Datenbanken
by jobo,
12. Jul 2014
Ich kann Dir das ehrlich gesagt nicht erklären und ich hab da auch keine Ambitionen, mich in die Optimierungsalgorithmen beliebiger Optimizer reinzudenken. In der Realität gibt es mit verschiedenen RDBMS und deren Versionen eine beträchtliche Anzahl von Varianten / Verfahren, wie ein Optimizer sich verhält. (Genaugenommen auch nochmals abhängig von Datenlage aka Statistiken, die wiederum falsch...
Forum: Datenbanken
by jobo,
11. Jul 2014
Ich setze keine Indizes zusammen, ich überlasse es dem Optimizer, die beste Kombination zu verwenden. Der ist sehr wohl in der Lage, mit dem was er vorfindet, sinnvolle Rangescans usw. durchzuführen.
Und meinetwegen, wenn es wirklich nur ein "Querypattern" gibt- was laut Plan so sein mag, in der Praxis aber vlt ganz anders aussieht- kann es auch ein Kombiindex sein.
Da es ursprünglich auch um...
Forum: Datenbanken
by jobo,
10. Jul 2014
Ich würde es mit getrennten Indizes machen. Das ist flexibler. Ein kombinierte Index greift u.U. nicht, wenn weitere Bedingungen ins Spiel kommen.
Die uniqueness kannst Du separat per constraint definieren. NOrmalerweise tuen RDBMS einem den "Gefallen" abhängig vom Constraint direkt auch einen Index zu bauen, aber das kann man unterbinden, löschen, ändern.
Das kann man pauschal nicht...