ebiz-webhosting
- Ad -
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
BananaJo
 Registrierter Benutzer
Links : Onlinestatus : BananaJo ist offline
Registriert seit: Aug 2008
Beiträge: 249
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.550
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.550
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.583
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.550
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.550
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

MariaDB 5.5 veröffentlicht
MariaDB 5.5 veröffentlichtDie freie MySQL-Alternative MariaDB wurde in der stabilen Version 5.5.23 veröffentlicht und soll einige Verbesserungen gegenüber Oracles Communityversion von MySQL mitbringen.

16.04.2012 | Berni

Deutsche Yii Framework Community
Deutsche Yii Framework CommunitySeit dem 19.03.2012 gibt es für die Yii PHP Framework Community ein deutsches Zuhause.

20.03.2012 | dhcomputer

 

Aktuelle PHP Scripte

E-Mail-Coder Generator ansehen E-Mail-Coder Generator

E-Mail-Coder Generator, komplett in deutscher Sprache. Mit diesem Generator können Sie Ihre E-Mail-Adresse codieren und so gegenüber Spidern schützen.

23.05.2012 fullmedia | Kategorie: PHP/ Mail
EMO Realty Manager ansehen EMO Realty Manager

EMO Realty Manager is a complete realty listing management solution software. It is easily customized to reflect your creativity whether you are starting from scratch or integrating into an existing web site. EMO Realty Manager can be used to promote re

23.05.2012 myrephp | Kategorie: PHP/ Anzeigenmarkt
MatPo Image Hosting Script ansehen MatPo Image Hosting Script

Mit diesem PHP-Script (mini CMS) kann man .jpg, .gif und .png-Dateien auf den Server laden. Bildergröße beim Hochladen änderbar sowie eine Beschreibung zum Bild angegeben werden kann. Damit das Webspace nicht missbraucht werden kann gibt es jetzt auch

23.05.2012 MatPo | Kategorie: PHP/ Bilder
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 04:07 Uhr.