2013-10-25T13:07:16 pqdu kannst innodb auch so konfigurieren, dass pro tabelle eine datei angelegt wird. weiss jetzt den konfig-parameter nicht auswendig.
Quoteist schon mal ein Anfang.[mysqld]
innodb_file_per_table
2013-10-25T13:07:16 pqRAM ist natürlich immer gut, aber es gibt bestimmt ne menge anwendungen, die mehr als 16GB daten haben und trotzdem nicht mehr RAM. kann mir nicht vorstellen, dass das wirklich notwendig ist.
wenn du keine transaktionssicherheit brauchst, könnte es sich bzgl. performance aber durchaus mal lohnen, MyISAM zu testen. pauschal lässt sich das aber nicht voraussagen, ob es schneller ist.
2013-10-25T13:37:38 kristian2013-10-25T13:07:16 pqRAM ist natürlich immer gut, aber es gibt bestimmt ne menge anwendungen, die mehr als 16GB daten haben und trotzdem nicht mehr RAM. kann mir nicht vorstellen, dass das wirklich notwendig ist.
wenn du keine transaktionssicherheit brauchst, könnte es sich bzgl. performance aber durchaus mal lohnen, MyISAM zu testen. pauschal lässt sich das aber nicht voraussagen, ob es schneller ist.
Jein, gefühlt ist es so, dass ich bei MyISAM für den ersten Zugriff auf die DB extrem viel Zeit brauche, danach ist der table wohl im Ram aber der erste Zugriff ist deutlich im Sekundenbereich, das sehe ich bei InnoBD derzeit nicht.
2013-10-25T15:18:15 jan2013-10-25T13:37:38 kristianJein, gefühlt ist es so, dass ich bei MyISAM für den ersten Zugriff auf die DB extrem viel Zeit brauche, danach ist der table wohl im Ram aber der erste Zugriff ist deutlich im Sekundenbereich, das sehe ich bei InnoBD derzeit nicht.
Das ist merkwürdig und solltest Du vielleicht mal genauer untersuchen.
Praktisch ist MyISAM immer massiv viel schneller als InnoDB, dafür gibt's halt keine Transaktionen, keinen Foreign Key, kein Row Level Locking etc pp. Aber wenn MyISAM langsamer ist als InnoDB, dann stimmt irgendwas vermutlich nicht.
2013-10-25T16:10:09 kristian2013-10-25T15:18:15 jan2013-10-25T13:37:38 kristianJein, gefühlt ist es so, dass ich bei MyISAM für den ersten Zugriff auf die DB extrem viel Zeit brauche, danach ist der table wohl im Ram aber der erste Zugriff ist deutlich im Sekundenbereich, das sehe ich bei InnoBD derzeit nicht.
Das ist merkwürdig und solltest Du vielleicht mal genauer untersuchen.
Praktisch ist MyISAM immer massiv viel schneller als InnoDB, dafür gibt's halt keine Transaktionen, keinen Foreign Key, kein Row Level Locking etc pp. Aber wenn MyISAM langsamer ist als InnoDB, dann stimmt irgendwas vermutlich nicht.
Wieder mal jein ;-)
Man muss es differenziert sehen.
Solange es nur um die Ausgabe der Daten geht habe ich kein Problem, weder mit MyISAM noch mit InnoDB.
Wenn ich aber Daten aus einer Table ausgeben will in die gerade geschrieben wird - und das kommt häufig vor - dann wird es eng.
2013-10-25T16:39:06 janKlar, das ist dann defintiv ein Killer für MyISAM weil die ganze Tabelle gelockt wird. Da bist Du mit InnoDB sicher besser beraten -- aber vielleicht kannst Du auch mischen, Schreib/Lese-Intensive Tabellen als InnoDB, reine Lese-Tabellen (oder solche, die sich selten akut ändern) als MyISAM.
Oder Du wirfst mehr Hardware drauf, das wird wohl das einfachste sein. Mit Tablespaces um Tabellen und Indizes ordentlich zu trennen erhöhst Du die Performance nochmals.
Allerdings natürlich auch die Frage: ist MySQL zwingend? MyISAM ist super, aber InnoDB habe ich schon öfter von PostgreSQL geschlagen gesehen, was Performance angeht.
2013-10-25T20:20:18 janZum Thema Hardware: das kommt doch sehr auf den Provider an.
Klar, das hängt alles mit der Uptime zusammen, die Du brauchst, aber ich fahre z.B. allgemein sehr gut mit Hetzner. Damit könntest Du Hardware auf das Problem werfen, ohne dich gleich zu verausgaben.
2013-10-25T17:09:08 GwenDragonWenn du bitte sagen würdest, was du nicht verstehst, wär's besser.
2013-10-25T12:49:29 kristian(Hervorhebung von mir)ich plane eine größere Datenmenge in einer MySQL-Datenbank abzulegen
2013-10-25T17:03:36 biancaBin ich jetzt gerade zu doof?
2013-10-25T16:39:01 RaubtierIst mysql gesetzt? Sonst könntest du auch mal postgres ausprobieren. Muss es eigentlich auch eine relationale DB sein?
2013-10-25T16:39:01 RaubtierIst mysql gesetzt? Sonst könntest du auch mal postgres ausprobieren. Muss es eigentlich auch eine relationale DB sein?