Closed Blaimi closed 2 years ago
Ja es ist ein logischer PK aber bei der Entwicklung war es extrem nervig wenn dir der Ladejob um die Ohren fliegt, weil aus irgendeinem Grund doppelte Zeilen auftauchen. Deshalb ist es kein "harter" PK. Technisch sehen ich da auch keinen Unterschied - außer die RowIds die man sparen könnte (~4MB).
Jeder Index verbraucht Platz im DB file. Das verbraucht Bandbreite, CPU beim entpacken und IO beim lesen. Vorallem bei SD Karten ist IO ein Problem. Deshalb ist das DB file so klein wie möglich gehalten. Die Felder die du ansprichst sind (im default!!!) nicht selektiv. Im default werden Sendungen < 5min und zukünftige Show (trailer) ausgeblendet. Das ist hilfreich aber nicht selektiv genug für ein Index. Bei Channel und Show könnte man jetzt diskutiren aber ich z.B. benutzer für alles die Suche - welche (meistens) nur auf die Namen geht.... Du kannst gerne bei dir verschiedenes ausprobieren und die Ergebnisse hier posten...
No follow up…closing
Hi,
gibt es irgendeinen Grund, warum auf der mysql-datenbank lediglich auf dem hash ein index erstellt wird? und warum ist der nicht primary-key, der wird ja auch als ein solcher verwendet.
Ich würde den hash zum primary machen und auf die felder
dtCreated
,channel
,showid
,aired
undduration
. Das sind zumindest die Felder die ich auf die schnelle mal identifizieren konnte, die in irgendwelchen WHERE auftauchen.