Neu Managed Server bei hetzner läuft an der Leistungsgrenze wegen dieser Query

jav666

Gut bekanntes Mitglied
5. August 2010
200
1
Hallo Community, wir haben hier einen Man. Server bei hetzner (MX90) der schon recht OK ist, so mit 16 GB RAM und i7 2600 Quadcore. Trotzdem reagiert der Server manchmal erst nach 8-10 sek. Laut Support haben wir hier eine SQL Anweisung, die bringt alle Kerne auf 100% und dann geht nichts mehr. Es ist immer diesselbe. Und zwar die hier:

Code:
SELECT merkmalartikel.kArtikel, merkmalartikel.kVaterArtikel
                    FROM (
                        SELECT DISTINCT tartikelmerkmal.kArtikel, tartikel.kVaterArtikel,
                            tartikelmerkmal.kMerkmal, tartikelmerkmal.kMerkmalWert
                        FROM tartikelmerkmal
                        JOIN tartikel ON tartikel.kArtikel = tartikelmerkmal.kArtikel
                            AND tartikel.kVaterArtikel != 15336
                            AND (tartikel.nIstVater = 1 OR tartikel.kEigenschaftKombi = 0)
                        LEFT JOIN tartikelsichtbarkeit
                            ON tartikelsichtbarkeit.kArtikel = tartikel.kArtikel
                            AND tartikelsichtbarkeit.kKundengruppe = 5
                        WHERE tartikelsichtbarkeit.kArtikel IS NULL
                            AND tartikelmerkmal.kArtikel != 15336


                    ) AS merkmalartikel
                    JOIN tartikelmerkmal similarMerkmal
                        ON similarMerkmal.kArtikel = 15336
                        AND similarMerkmal.kMerkmal = merkmalartikel.kMerkmal
                        AND similarMerkmal.kMerkmalWert = merkmalartikel.kMerkmalWert
                    GROUP BY merkmalartikel.kArtikel
                    ORDER BY COUNT(similarMerkmal.kMerkmal) DESC
                 LIMIT 3

"tartikelmerkmal" hat ca. 155 000 Einträge. Könnte das ein Problem sein?
 

Xantiva

Sehr aktives Mitglied
28. August 2016
1.795
316
Düsseldorf
Setzt mal ein EXPLAIN vor das SQL und führe die Anfrage mal über phpMyAdmin o.ä. aus. Dann bekommst Du einen Hinweis, wie viele Zeilen durchsucht werden müssen, welche Inidizes verwendet werden können, usw.

(OT: Das Denglisch im JTL-Code finde ich immer wieder sehr befremdlich: "similarMerkmal")
 

jav666

Gut bekanntes Mitglied
5. August 2010
200
1
die abfrage befindet sich in der "\includes\artikel_inc.php" - je nach version in zeile 1000+ bis 1100+ und fängt an mit

Code:
$oArtikelMerkmal_arr = Shop::DB()->query(
SELECT merkmalartikel.kArtikel, merkmalartikel.kVaterArtikel
 

Xantiva

Sehr aktives Mitglied
28. August 2016
1.795
316
Düsseldorf
Naja, zuerst wird die innere Abfrage (ID 2) ausgeführt und auf dem Ergebnis wird dann die äußere Abfrage (ID 1) ausgeführt. Für die das Ergebnis der inneren Abfrage existiert dann aber kein Index, was sich dann aber schmerzlich bei dem Group By und Order By bemerkbar macht.

Hier ist ein ähnliches Problem beschrieben:
https://stackoverflow.com/questions/16018839/select-distinct-statement-in-mysql-is-taking-10-minutes

Ich würde dazu ein Ticket bei JTL aufmachen, da mit sich dort ein Datenbank-Spezialist mal die Abfrage unter Berücksichtigung solcher Tabellengrößen anschaut.
 

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
529
Halle
Hallo,

bitte setze einmal im PhpMyAdmin die beiden Befehle
SQL:
ANALYZE TABLE tartikel;
ANALYZE TABLE tartikelmerkmal;
ab. MySQL hat manchmal Probleme mit der automatischen Aktualisierung der Tabellenstatistiken und wählt dann ungünstige (nicht zur Anzahl der Datensätze passende) Ausführungspfade für bestimmte Abfragen.
Vergleiche dann mal die Laufzeiten vor und nach der Analyse und poste bitte das EXPLAIN-Ergebnis.
 

jav666

Gut bekanntes Mitglied
5. August 2010
200
1
geht zur zeit nicht.

Service Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems.


fakt ist: der artikel im bsp ganz oben (mit der ID 15336) hat kVaterArtikel - ID 8353. und alleine unter der 8353 finden sich 264 variantionskombis. das kann bei möbeln absolut vorkommen. ich denke, man kann das dann nicht mit vari-kombis lösen oder?
 

jav666

Gut bekanntes Mitglied
5. August 2010
200
1
update: da wir nun wussten, das es zu 100% an den variantionskombis liegen muss, haben wir alle neuen gelöscht, alle prozesse beendet und der shop rennt nun wieder. ist natürlich keine lösung. wir hoffen auf einen anruf. nur mal so am rande. 600 EUR für telefonsupport ist natürlich eine frechheit. wir werden sehen.
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Fehler DHL Versenden 4.0 - DHL Authorisation Server. JTL-ShippingLabels - Fehler und Bugs 1
Neu Fehler Datenbank auf neuem Server mit Wawi 2.0.6 JTL-Wawi - Fehler und Bugs 5
Neu AVIF Bildeinstellung = 500 Server Error Allgemeine Fragen zu JTL-Shop 1
Neu JTL-ShippingLabels-Server ist nicht erreichbar JTL-Wawi - Fehler und Bugs 0
Neu POS Server crashed mit Wawi Version 1.11.10 JTL-POS - Fehler und Bugs 0
Neu S360 Custom Sort: „Request error: parsererror" – Solution360-Server nicht erreichbar? Plugins für JTL-Shop 3
Neu Dedicated SQL Server am Limit Merkmale Betrieb / Pflege von JTL-Shop 1
ändern von Servernamen nach Neuinstallation von SQL und Verbindung mit neuem Server in der Wawi JTL-Wawi 2.0 2
welche Microsoft SQL Server Version läuft am stabilsten? JTL-Wawi 2.0 2
Neu MS Server und MS SQL Installation von JTL-Wawi 6
Für Ihren SQL-Server wurde ein Service Pack zur Verfügung gestellt - nö, gelogen, wie kriege ich die Meldung weg? JTL-Wawi 1.11 15
Keine Datenübertragung trotz bestehender Verbindung und funktionierendem Server JTL-Wawi 2.0 35
„Wer hat Lust auf einen Erfahrungsaustausch bei Kaffee und Kuchen?“ – aber diesmal ohne Shop-Themen? Starten mit JTL: Projektabwicklung & Migration 1
Neu Selektieren aller Artikel, bei denen NICHT 'Preis aus Registerkarte JTL Wawi" eingestellt ist? User helfen Usern - Fragen zu JTL-Wawi 1
"Wer hat Lust auf einen Erfahrungsaustausch bei Kaffee und Kuchen?". Starten mit JTL: Projektabwicklung & Migration 3
Neu JTL-POS DATEV-Export – Kassendifferenz nicht nur bei Mehrzweckgutscheinen JTL-POS - Fehler und Bugs 2
„Wer hat Lust auf einen Erfahrungsaustausch bei Kaffee und Kuchen?“. Starten mit JTL: Projektabwicklung & Migration 43
Neu JTL-POS DATEV-Export – Kassendifferenz bei Mehrzweckgutscheinen Allgemeine Fragen zu JTL-POS 0
Neu JTL POS Crasht bei Druckerauswahl JTL-POS - Fehler und Bugs 11
Neu POS Display crasht bei Kundeninteraktion JTL-POS - Fehler und Bugs 5
Neu Nutzlose Tabellenspalte bei Inventur innerhalb der Wawi User helfen Usern - Fragen zu JTL-Wawi 1
Buchungsdaten VCS Lite sind Offen und unbekannte Rechnungen bei Amazon JTL-Wawi 1.11 3
Neu JTL-Wawi 2.0.6: eBay-Rahmenbedingungen bei bestehenden Angeboten/Vorlagen nicht mehr änderbar eBay-Anbindung - Fehler und Bugs 11
Fehler bei Installation: Powershell V2 JTL-Wawi 2.0 8
Neu Shop rechnet Sa+So bei Lieferzeit mit ein Betrieb / Pflege von JTL-Shop 0
Ständiger Absturz bei Wawi 1.11.11 nach Artikelaktualisierung JTL-Wawi 1.11 1
Neu Abgleiche für zweiten Mandanten bei Worker-Neustart deaktiviert JTL-Wawi - Fehler und Bugs 0
Neu Identische Aufträge bei mehreren Fulfillment-Kunden sinnvoll trennen? Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 4
Neu Versandetikett bei Aufträgen aus dem JTL Shop Arbeitsabläufe in JTL-Wawi 0
Neu Wawi 2.0.6 Fehler bei Druckerzuordnung und Nachdruck JTL-ShippingLabels - Fehler und Bugs 12
Neu Login-Fehler 403 bei app.shipping.jtl-cloud.com seit 17.07.2026 JTL-ShippingLabels - Fehler und Bugs 7
Neu Checkbox im Bestellvorgang bei Gebrauchtartikeln Allgemeine Fragen zu JTL-Shop 2
Neu ++ Menge bei laufenden Ebay Angeboten Arbeitsabläufe in JTL-Wawi 1
Neu Seit heute Morgen werden bei Amazon keine Rechnungen mehr hochgeladen Amazon-Anbindung - Fehler und Bugs 13
Neu Canonical-Tag bei Merkmalwert-URLs mit Parameter "m" Betrieb / Pflege von JTL-Shop 11
Neu Kind-Artikel nicht bei Ebay anbieten Allgemeine Fragen zu JTL-Shop 1
Neu Wie ändere ich das vorausgewählte Lager bei Bestellungen? User helfen Usern - Fragen zu JTL-Wawi 2
Neu Fehlender Rabattabzug bei Amazon Multirabatten Amazon-Anbindung - Fehler und Bugs 0
In Diskussion Workflow bei fehlerhaften Bankabgleich JTL-Workflows - Ideen, Lob und Kritik 4
Gelöst: Störung bei LInk11 - JTL- Shops teilweise nicht erreichbar Störungsmeldungen 1
Neu JTL Wawi 1.11.11 - Zahlungsabgleich bei FYRST Bank verlangt immer Passwort User helfen Usern - Fragen zu JTL-Wawi 0
Kundengruppenrabatte werden bei einzelnen Artikeln nicht übernommen – „Rabatte ignorieren“ springt nach Speichern zurück JTL-Wawi 2.0 2
Neu [API] Zahlungen bei salesOrders verbuchen Schnittstellen Import / Export 0
Neu Unerwünschtes Scrollen/Springen zum Seitenanfang bei Footer-Menüs (Mobile) JTL-Shop - Fehler und Bugs 5
Frage stellen bei Bestellung JTL-Wawi 1.11 1
Bei Update auf 2.05 kam folgende Meldung JTL-Wawi 2.0 2
Neu Fehleretikett bei OTTO Bestellungen bzgl. Adresszusatz JTL-ShippingLabels - Fehler und Bugs 2
Skonto wird bei Zahlung setzen nicht berücksichtigt JTL-Wawi 1.11 2
Wawi 1.11.9 Ständige Abstürze bei Aktualisierung Artikelstammdaten JTL-Wawi 1.11 6
Neu Helfen Lösungen wie Unicorn wirklich, um die teuren Preise bei JTL zu vermeiden? Amazon-Anbindung - Ideen, Lob und Kritik 1

Ähnliche Themen