php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
  #1 (permalink)  
Alt 18-08-2009, 22:36
Benutzerbild von BananaJo BananaJo
 Registrierter Benutzer
Links : Onlinestatus : BananaJo ist offline
Registriert seit: Aug 2008
Beiträge: 344
BananaJo kann nur auf Besserung hoffen
Standard Wie soll ich das Auslesen von riesigen Datenmängen optimieren?

Hallo,

ich habe hier eine Tabelle mit der ich Aktionen auf meiner Website protokolliere und diese nach ihrem Datum sortiert ausgebe.

Das Problem das ich habe ist, dass jeden Tag sehr viele Einträge dazu kommen und die Ladezeit deutlich gestiegen ist.

Könnt ihr mit irgendwelche Tipps geben, wie man das Auslesen bzw Strukturieren von solchen riesigen Tabellen strukturieren kann?

Also ich habe schon etwas Ahnung von mysql und habe die Datenbank auch in der 3. Normalform und redundanzfrei aufgebaut.

soo.. danke für jeden Tipp!

Geändert von BananaJo (18-08-2009 um 22:40 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 18-08-2009, 22:47
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Du musst ja nicht alles auf einmal anzeigen. Stattdessen könntest du nur jeweils einen Tag darstellen und zusätzlich eine Art anklickbaren Kalender, um den anzuzeigenden Tag zu wechseln.
Mit Zitat antworten
  #3 (permalink)  
Alt 19-08-2009, 04:28
Benutzerbild von CiaoSen CiaoSen
  Administrator
Links : Onlinestatus : CiaoSen ist offline
Registriert seit: May 2009
Beiträge: 30
CiaoSen befindet sich auf einem aufstrebenden Ast
Standard

cache die informationen in ne php als array und ließ sie da aus

mfg jura
__________________
Hab ich dir erfolgreich geholfen? Wenn ja, dann hilf mir auch und bewerte mich auf php-resource.de

Go and help me
Mit Zitat antworten
  #4 (permalink)  
Alt 19-08-2009, 04:39
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von CiaoSen Beitrag anzeigen
cache die informationen in ne php als array und ließ sie da aus
Inwiefern würde das denn helfen?

Gruß,

Anja
Mit Zitat antworten
  #5 (permalink)  
Alt 19-08-2009, 08:59
Slava
 PHP Senior
Links : Onlinestatus : Slava ist offline
Registriert seit: Nov 2002
Ort: Köln->Karlsruhe
Beiträge: 1.589
Slava befindet sich auf einem aufstrebenden Ast
Standard

bitte
1) 'show cteate table deinetabelle' anzeigen
2) query, die du bei bei der anzeige benztzt (ohne PHP-Variablen)
3) die grösse von Tabelle (select count(*) from tabelle)
__________________
Slava
bituniverse.com
Mit Zitat antworten
  #6 (permalink)  
Alt 19-08-2009, 13:58
Benutzerbild von CiaoSen CiaoSen
  Administrator
Links : Onlinestatus : CiaoSen ist offline
Registriert seit: May 2009
Beiträge: 30
CiaoSen befindet sich auf einem aufstrebenden Ast
Standard

@Amica

damit spart er sich die mysql abfragen von so vielen Datensätzen.
Die kannt er ja dann Monatlich cachen und die neuesten evt. aus der db lesen oder auch cachen und das ist dann um einiges schneller.

Speichern kann er die trotzdem noch in der db.

mfg jura
__________________
Hab ich dir erfolgreich geholfen? Wenn ja, dann hilf mir auch und bewerte mich auf php-resource.de

Go and help me
Mit Zitat antworten
  #7 (permalink)  
Alt 19-08-2009, 14:05
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

@CiaoSen

Wo sollen die denn hin gecachet werden? Das versteh ich nicht. Du meintest in ein PHP Array. Das ergibt doch keinen Sinn, etwas in einem Kontext zu cachen, der nur für den Bruchteil einer Sekunde existiert, wie z. B. ein PHP Skript.
Mit Zitat antworten
  #8 (permalink)  
Alt 19-08-2009, 14:20
Benutzerbild von CiaoSen CiaoSen
  Administrator
Links : Onlinestatus : CiaoSen ist offline
Registriert seit: May 2009
Beiträge: 30
CiaoSen befindet sich auf einem aufstrebenden Ast
Standard

also entwerder verstehst du mich nicht oder ich dich.

was ich meine ist, er will ja aktionen protokolliere, es könnten sachen für statistiken sein oder die schritte die gemacht werden bevor ein fehler passiert.
Und solche sachen cached man für eine längere Zeit, deswegen die informationen in eine php datei schreiben die über php erzeugt wird.
Und diese daten sollen in dem erzeugtem file als array stehen, damit er es später leichter hat die auszugeben.
Wie er es anstellen will weiß ich nicht, aber das ist nur ein vorschlag um die ladezeit der seite zu verkürzen.

mfg jura
__________________
Hab ich dir erfolgreich geholfen? Wenn ja, dann hilf mir auch und bewerte mich auf php-resource.de

Go and help me
Mit Zitat antworten
  #9 (permalink)  
Alt 19-08-2009, 14:27
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Ich hab dich nicht verstanden, jetzt weiß ich aber, dass du eine Datei meinst.
Mit Zitat antworten
  #10 (permalink)  
Alt 23-08-2009, 17:49
phaselapfel
 Registrierter Benutzer
Links : Onlinestatus : phaselapfel ist offline
Registriert seit: Aug 2009
Beiträge: 5
phaselapfel befindet sich auf einem aufstrebenden Ast
Standard

Was soll jetzt optimiert werden? Das INSERT oder SELECT?

Wenn SELECT: Wie CiaoSen schon sagte, könntest du die Daten irgendwie cachen. Das habe ich zwangsweise auch mal gemacht, da eine normale Seite um die 3 Sekunden zum Generieren gebraucht hat.

Ich habe mir dann eine lookup-table programmiert, die direkt den ganzen Output einer Seite mit ob_start() und Familie gespeichert hat.

Logik war dann beim Aufruf folgende:

Code:
if (is_cached("startseite"))
    print_cache("startseite");
else
    startseite_generieren_cachen_ausgeben();
Immer, wenn sich dann etwas auf der Startseite verändert hat, wird der Cache-Eintrag "startseite" gelöscht und neu generiert. Natürlich muss man nicht direkt eine ganze Seite cachen, man kann auch nur Teile einer Seite cachen. Das könnte nützlich sein, wenn du auf ältere Daten stehst (bzw. könnteste auch automatisch jede Minute den Cache aktualisieren).

Alternativ könnte ich mir vorstellen, dass es viel helfen würde, wenn du die Tabelle kleinhälst. Das heißt, wenn du z.B. mehr als eine Millionen Einträge hast, legst du eine neue Tabelle an. Das sollte eigentlich gut funktionieren, denn ich glaube nicht, dass du immer 100% der Daten auf einmal anzeigen musst.

hope dat helps
Mit Zitat antworten
Antwort

Lesezeichen


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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
txt datei soll nur die 10 häufigsten namen auslesen major_peter PHP Developer Forum 8 18-07-2007 17:51
if-Verzweigung optimieren tomstig PHP Developer Forum 9 08-06-2006 19:20
Verzeichnis auslesen, alle 10 Bilder soll neue Seite erscheinen... israelsson PHP Developer Forum 2 07-11-2004 17:14
[SQL allgemein] Ich soll aus einem DB Feld das Timestampt ist ein Datum auslesen! Morpheus2100 SQL / Datenbanken 21 12-10-2004 12:04
opendir soll URL auslesen cowboy PHP Developer Forum 10 12-05-2003 18:01

Themen-Optionen
Thema bewerten
Thema bewerten:

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 12:05 Uhr.