AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

SQL Optimierung möglich ?

Ein Thema von H3llsing · begonnen am 28. Jun 2011 · letzter Beitrag vom 11. Jul 2011
Antwort Antwort
H3llsing

Registriert seit: 12. Nov 2008
96 Beiträge
 
Delphi 2010 Enterprise
 
#1

SQL Optimierung möglich ?

  Alt 28. Jun 2011, 15:30
Datenbank: SQL/ADO • Version: 5.5 / 9 • Zugriff über: PHP/NUSOAP
Hallo Dpler,

ich steh grad bei meiner gefundenen Lösung vor einem Performance Problem.

Hintergrund: ich arbeite an einer Website die mit PHP und NUSOAP von einem anderen Server aus der WAWI Artikel für einen Webshop anzeigen lassen soll.

Schnell erledigt bis ich gemerkt habe das es anscheinend eine Obergrenze für Datenmengen bei Nusoap gibt. Also kann ich mir nich 1000 Artikel anzeigen lassen.
Dann dachte ich an eine Lösung, wo man sich 30 Artikel pro Seite anzeigen lassen kann und habs ausprobiert.
Funktioniert auch soweit aber bei steigender Seitenanzahl dauert die anfrage auch schonmal 6 sekunden. Und nimmt mit jeder Seite zu!

hier mein SQL
Code:
select TOP 10 a.artikel,a.herstartikelnr,a.bezeichnung1,a.bezeichnung2,a.ean,a.einheit,a.normalVK,a.matchcode
from artikel a
where a.exportieren = true and upper(a.typ) = 'B' and a.artikel like 'Y%'
and a.artikel not in (select top 300 artikel from artikel where exportieren = true and upper(typ) = 'B' and artikel like 'Y%' order by artikel )
order by a.artikel
Diese "select top 300 artikel" schließen also die ersten 10 Seiten aus! d.H ich lasse mir grade Artikel von Seite 11 anzeigen.

Hat jemand ne idee wie man die Performance verbessern könnte ? Oder vielleicht einen ganz anderen Lösungsansatz auch ohne Nusoap wenns für den Kunden schneller ist ?
Bislang wird mehrmals täglich ein Update vom Wawi auf die Online DB gemacht per Dienst was allerdings auch eine Ewigkeit braucht ! Deshalb der Gedanke mit Nusoap und direkt anzeigen lassen!

Viele Grüße
Helge
  Mit Zitat antworten Zitat
Benutzerbild von mischerr
mischerr

Registriert seit: 6. Feb 2004
Ort: Konz
243 Beiträge
 
Delphi 12 Athens
 
#2

AW: SQL Optimierung möglich ?

  Alt 28. Jun 2011, 15:40
MySQL? Arbeite zwar mehr mit FB, aber versuch mal:

SELECT ... FROM ... LIMIT 30 OFFSET 300
  Mit Zitat antworten Zitat
H3llsing

Registriert seit: 12. Nov 2008
96 Beiträge
 
Delphi 2010 Enterprise
 
#3

AW: SQL Optimierung möglich ?

  Alt 28. Jun 2011, 15:52
Arghs kann ich irgendwo das Thema nochmal bearbeiten ?

Die wawi Datenbank läuft mit Advanced Data Server und so wies aussieht gibts keine select TOP OFFSET Funktion
  Mit Zitat antworten Zitat
Benutzerbild von mischerr
mischerr

Registriert seit: 6. Feb 2004
Ort: Konz
243 Beiträge
 
Delphi 12 Athens
 
#4

AW: SQL Optimierung möglich ?

  Alt 28. Jun 2011, 16:05
Advantage? Ich glaube ab der 10'er geht:

SELECT TOP 30 START AT 300 FROM ... WHERE ...
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.655 Beiträge
 
Delphi 12 Athens
 
#5

AW: SQL Optimierung möglich ?

  Alt 28. Jun 2011, 16:06
Du meinst Advantage? Dann frag doch mal joachimd.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
H3llsing

Registriert seit: 12. Nov 2008
96 Beiträge
 
Delphi 2010 Enterprise
 
#6

AW: SQL Optimierung möglich ?

  Alt 28. Jun 2011, 16:16
ups natürlich mein ich Advantage Database Server ADS
Bin wieder vollkommen woanders mit meinen Gedanken

EDIT:
Der Start at befehl liefert schon ne deutliche Verbesserung mit der ich leben kann.
Nun benötigt die abfrage gestartet bei 550 knapp unter 600ms.

Vielen Dank!

Geändert von H3llsing (28. Jun 2011 um 16:21 Uhr)
  Mit Zitat antworten Zitat
H3llsing

Registriert seit: 12. Nov 2008
96 Beiträge
 
Delphi 2010 Enterprise
 
#7

AW: SQL Optimierung möglich ?

  Alt 29. Jun 2011, 10:11
Es würde mich stark interessieren obs vielleicht noch bessere Lösungen gibt!
Wir nutzen ein internes WAWI-System, dessen Artikel aber auch auf einem externen Webserver / Onlineportal angezeigt werden sollen.
Das Update erfolgt durch 2 Dienste mehrmals am Tag und dauert ca 10 minuten.

Wie würdet ihr eine solche Synchronisation verwirklichen?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz