tabellenstruktur

  • diese frage richtet sich speziell an andre mundo oder herrn loechner.
    ich habe ebenfalls ein, meiner meinung nach tolles newsletterskript geschrieben, das multible mailinglisten verwalten kann.
    nun, möchte ich fragen, wie soll die tabellenstruktur in mysql aussehen, speziell für die abonenten.
    ich habe eine tabelle, mit drei spalten,
    mlid(mailinglistenid), email(abonentenemail) und time(timestamp),
    nun, ich habe das system nicht richtig getestet, aber wenn ich jetzt 100.000 abonenten in verschiedenen mailinglisten verwalte, wird das nicht ein wenig langsam???
    wie löst ihr ein solches problem, ihr werdet ja nicht für jede mailingliste eine eigene tabelle anlegen, oder?
    gibt es in sql einen befehl, der die abonenten, automatisch beim hinzufügen eines neuen abonenten, nach der malingliste, also der id, sortiert?
    vielen dank schon im voraus,
    thiemo fetzer

  • Hi Thiemo,
    na da wollen wir mal der Konkurrenz ( *gg* ) ein bisschen unter die Arme
    greifen...
    Also wenn Du ein normales Select über alle Inhaber eines Kontos machst,
    ist die Tabelle so ausreichend. Aber: Du möchtest Deinen Usern ja
    bestimmt eine Suche o.ä. ermöglichen, hier musst Du unbedingt eine
    weitere Spalte einfügen, welche Du als Primary Key führst. Nach der
    solltest Du dann Deine gesamte Liste & deren Arbeit aufbauen.
    Ab einer Adress-Menge von 1 Mio kannst Du damit dann Indexe aufbauen,
    vorher bringt dies aber auf keinen Fall etwas. Selbst später nicht, da
    Du ja nur 3 Datensätze pro. Index gespeichert hättest.
    Zum Thema Geschwindigkeit: Dein Server wird es nie schaffen, dass er auf
    die Ergebnis-Menge des Selects warten muss, dazu ist MySQL (oder DBen
    allgemein) zu schnell. Mach Dir also keinen Kopf!
    > gibt es in sql einen befehl, der die abonenten, automatisch
    >beim hinzufügen eines neuen abonenten, nach der malingliste,
    >also der id, sortiert?
    Den gibt es schon, aber von order by und Co würde ich Dir abraten, denn
    diese kosten Zeit und Speicher - dann bekommst Du Performance -
    Probleme.....
    Eine Datenbank "lebt" davon sich selber zu organisieren und wenn Dein
    E-R-Modell richtig stimmt und keine Unstimmigkeiten zulässt, dann läuft
    das schon.
    Ich hoffe, ich konnte Dir helfen.
    Bye Andre
    --
    Webmaster of http://pc-special.de/ - kostenloser OnlineSupport in 24h
    Informatikstudent an der HTWK-Leipzig (FH)
    IRC: irc.belwue.de / #pc-special