Toon posts:

[MySQL] MyISAM & InnoDB...combineren?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben me op het moment wat in het verdiepen in de combinatie van transacties & een MySQL database.

Dit is even een redelijk verhaal voor een relatief korte vraag, maar het maakt de situatie wel duidelijker (denk ik) ;)

Ik las over de nadelen van een MyISAM tabel wat betreft locking (alleen op tabel- en niet op rij-niveau) toen ik mij het volgende af vroeg:

MyISAM is erg snel met SELECT queries maar kan eigenlijk niet transacties verwerken, InnoDB tabellen daarintegen kunnen een stuk beter met transacties over weg;

Een fictieve case:

Stel ik heb een website met een behoorlijk groot aantal bezoekers.

Ik heb een paar tabellen waarvan:

1 met informatie die zelden een INSERT krijgt
(bijv. nieuwstracker)

Er is ook een tabel met bijv. de voorraad van een bepaald product dat besteld kan worden. Je wilt graag dat het bestellen van dit product goed gaat, dus je gaat transacties gebruiken.

Vraag:

Is het dan wel of niet een goed idee om:

Tabel 'Nieuws' een MyISAM tabel te laten zijn en de tabel 'Voorraad' een 'InnoDB' tabel te laten zijn?

Anders gezegd: is het wel of niet aan te raden dit soort tabel types te combineren binnen een database? (als het uberhaupt mogelijk is :o)

Zijn er toevallig wat mensen met wat praktijkervaring hiermee? :)

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Jahoor, je kan prima tabel A in myisam en tabel B in innodb maken.

Ookal zou ik alles zelf in innodb doen ;) (het forum waar je nu post is er een voorbeeld van waar het goed gaat).

Verwijderd

Topicstarter
Op woensdag 01 mei 2002 19:52 schreef ACM het volgende:
Jahoor, je kan prima tabel A in myisam en tabel B in innodb maken.

Ookal zou ik alles zelf in innodb doen ;) (het forum waar je nu post is er een voorbeeld van waar het goed gaat).
Mooi, het kan in ieder geval..
(als was het alleen maar om dat te weten ;))

Maar was InnoDB niet wat trager met SELECT queries??

of is dat allemaal wat 'relatief gebrabbel' :D

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Op woensdag 01 mei 2002 19:54 schreef Glorfindel het volgende:
Maar was InnoDB niet wat trager met SELECT queries??

of is dat allemaal wat 'relatief gebrabbel' :D
PER query is myisam wel iets sneller ja :)
Maar door de table-locking (ipv record/row-locking) is het in de praktijk hier op got (en op t.net) vele malen trager.
Als je dus redelijk veel inserts/updates hebt zou ik echt niet meer naar myisam kijken :)

[edit]
Het enige waar innodb ECHT trager mee is, is het 'select count( * )' gedoe als er geen where is, dan leest mysql het bij myisam uit de file-definitie. Bij innodb wordt het echt geteld.

Verwijderd

Topicstarter
Op woensdag 01 mei 2002 20:06 schreef ACM het volgende:

[..]

[edit]
Het enige waar innodb ECHT trager mee is, is het 'select count( * )' gedoe als er geen where is, dan leest mysql het bij myisam uit de file-definitie. Bij innodb wordt het echt geteld.
Nu wordt het allemaal al weer een stuk duidelijker.. :P

Zijn er nog meer 'uitzonderingen' zoals die 'select count ( * )' ?

:)

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Op woensdag 01 mei 2002 20:21 schreef Glorfindel het volgende:
Zijn er nog meer 'uitzonderingen' zoals die 'select count ( * )' ?
Geloof het niet :)
Pagina: 1