Performance Problem mit sehr grossen Tabellen
Von: MBR (mat_braun@web.de) [Profil]
Datum: 08.06.2008 08:38
Message-ID: <484b7e5f$0$27448$9b4e6d93@newsspool4.arcor-online.net>
Newsgroup: de.comp.datenbanken.mysql
Datum: 08.06.2008 08:38
Message-ID: <484b7e5f$0$27448$9b4e6d93@newsspool4.arcor-online.net>
Newsgroup: de.comp.datenbanken.mysql
Hilfe! Ich habe zwei normalisierte Tabellen; während die eine über relativ wenige Einträge verfügt (Dimensionstabelle counter_dim, ~300 Einträge), ist die andere relativ gross (Facttabelle counter_fact, ~90 Mio Einträge). Definiert als MyISAM-Tabellen ist die Performance ok, aber wenn man InnoDB mit Fremdschlüsseln definiert, dann sind selbst simple Queries extrem langsam, z.B. "select (*) from counter_fact". CREATE TABLE `counter_fact` ( `LAC` smallint(5) unsigned NOT NULL, `counterId` smallint(5) unsigned NOT NULL, `countervalue` smallint(6) default NULL, KEY `LAC` (`LAC`), KEY `CI` (`CI`), KEY `counterId` (`counterId`), CONSTRAINT `counterId_ibfk_1` FOREIGN KEY (`counterId`) REFERENCES `counter_dim` (`counterId`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=latin1; CREATE TABLE `counter_dim` ( `counterId` smallint(5) unsigned NOT NULL auto_increment, `countername` varchar(255) default NULL, PRIMARY KEY (`counterId`), UNIQUE KEY `countername` (`countername`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;[ Auf dieses Posting antworten ]
Antworten
- Axel Schwenke (08.06.2008 15:11)
