SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)
Hilfe Community Kalender Heutige Beiträge Suchen

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 19.01.2014, 00:20:33
Aleksander Aleksander ist offline
Anfänger
 
Registriert seit: Jan 2014
Alter: 55
Beiträge: 1
Einfaches SQL Query mit dramatischer Performance. HILFE!

Guten Abend,
ich weiß nicht ob ich hier richtig bin, vielleicht kann mir doch jemand bei meinem Problem helfen.

Ich führe eine einfache Abfrage über 2 Tabellen durch, das Ergebnis wird in eine MEMORY Tabelle geschrieben. Soweit so gut, jedoch dauert die Abfrage fast 2 Stunden!

Query:

CREATE TABLE tbl_1 engine=heap
SELECT
res_db.sub_id,
res_db.kw_id,
res_db.kw
FROM res_db , dom_db
WHERE
dom_db.index_1 IN ( 'a', 'b' ) AND
res_db.sub_id = dom_db.sub_id

Die Tabelle res_db hat ca. 50.000.000 Datensätze,
Die Tabelle dom_db ca. 16.000.000 Datensätze

Die Abfrage der dom_db SELECT COUNT(*) FROM dom_db WHERE index_1 IN ( 'a', 'b' ) liefert ca. 2.500.000 Datensätze zurück.

In die MEMORY Tab tbl_1 werden ca. 4.500.000 Datensätze geschrieben.

Indexe res_db :
Index 1: PRIMARY auf AI der Tabelle
Index 2: sub_id

Indexe dom_db :
Index 1: PRIMARY auf AI der Tabelle
Index 2: sub_id, index_1
Index 3: index_1, sub_id

EXPLAIN liefert:
res_db: TYPE:all, POSSIBLE_KEYS: sub_id, KEY:null
dom_db: TYPE:eq_ref, POSSIBLE_KEYS:PRIMARY,sub_id,index_1, KEY: xx_db.res_db.sub_id

Grenze ich die Abfrage ein, z.B. WHERE ... IN ('a'), folgt
'1', 'SIMPLE', 'db__domains', 'range', 'PRIMARY,sub_id,index_1', 'index_1', ?, NULL, '1540437', 'Using where; Using index'
'1', 'SIMPLE', 'res_db', 'ref', 'sub_id', 'sub_id', ?, 'xx_db.db__dom.sub_id', '26', ''

An der Abfrageschwindigkeit ändert sich jedoch nichts.

Rechner: Opteron 1.8gHz mit 2 Kernen, 8GB Ram, CentOS 5, Mysql 5.0.45
Auf dem Rechner läuft nichts anderes als MySQL

Mir ist klar, dass die Abfrage etwas Zeit erfordert und event. ein Tabellenscan durchgeführt wird, jedoch tut der Rechner nichts:
HD Durchsatz lesen: 800-1500kBytes/s (im Vergleich 70.000kBytes/s bei LOAD INDEX INTO CACHE), CPU liegt bei ca. 7%

Habe schon so einiges versucht, unter anderem
SELECT ... FROM res_db WHERE sub_id IN (SELECT sub_id FROM dom_db WHERE index_1 in ('a','b')
FORCE INDEX (sub_id)

Nichts hat sich geändert.

Kann mir jemand helfen?

Vielen Dank im Voraus,
Aleksander
Mit Zitat antworten
  #2  
Alt 26.01.2014, 12:41:34
Broco Broco ist offline
Anfänger
 
Registriert seit: Jan 2014
Alter: 38
Beiträge: 2
AW: Einfaches SQL Query mit dramatischer Performance. HILFE!

Welche Storage-Engine verwendest du denn?
Mit Zitat antworten
Antwort

Stichworte
mysql abfrage, performance


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Brauche Hilfe Partygirl MySQLi/PDO/(MySQL) 10 01.03.2011 08:18:11
Freeradius-Server Abfrage disem MySQLi/PDO/(MySQL) 13 10.01.2011 21:01:51
SQL Query optimierung / beschleunigung nivadis MySQLi/PDO/(MySQL) 11 19.06.2009 15:43:55
To Many Connections ProGamer11 PHP Grundlagen 0 18.06.2003 23:52:56


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:29:19 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt