- Ad -
php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 14-07-2010, 00:24
xserio
 Registrierter Benutzer
Links : Onlinestatus : xserio ist offline
Registriert seit: Jun 2008
Beiträge: 63
xserio ist zur Zeit noch ein unbeschriebenes Blatt
Standard Datenbank oder Ordner auslesen -> Performance

Moin,

ich arbeite gerade an einem Wordpress/Buddypress Projekt. Meine User haben die Möglichkeit, Bilder hochzuladen, diese werden vom Script (BP Album+) in einer Datenbank gespeichert. Ich habe das Script so angepasst, dass das ganze jetzt in etwa so aufgebaut ist:

User 1 Galerie
--- Kategorie 1
--- Kategorie 2
--- Kategorie 3
User 1 Galerie
--- Kategorie 1
--- Kategorie 2
--- Kategorie 3

etc.
Der User muss also vor dem upload festlegen, in welche Kategorie das Bild kommt und dieses wird im entsprechenden Ordner gespeichert. Es gibt 7 Kategorien, also 7 Ordner pro User.
Ich kann schon relativ genau sagen, dass maximal 100 User, also 700 Ordner mit grob geschätzten 5000 Bildern angepeilt sind. Wobei pro Bild immer 3 Versionen abgespeichert werden (Thumbnail, Original, Webseitenansicht), also sind es eher 15000 Bilder...

Für die Bildausgabe habe ich mir jetzt ein Script geschrieben, welches alle User-Ordner der bestimmten Kategorie ausliest und die Bilder aus selbigen darstellt. Dabei muss auch noch der Dateiname ausgelesen und mit den str-funktionen zerschnibbelt werden um die Bild-ID auszulesen, die im Dateinamen gespeichert ist...

Ich würde gerne wissen, ob es sinnvoller wäre, die Kategorie zusätzlich in der schon vorhandenen Datenbank zu speichern(momentan sind da Bild-Id, Url, etc gespeichert, aber nicht das Bild selbst) und von dort aus die Bilder auszulesen. Ich habe kaum Erfahrung mit Datenbanken, hab also keine Vorstellung davon, was performanter wäre. Wäre nett wenn mich da jemand beraten könnte, bevor ich das ganze Script jetzt auf Datenbank-Abfrage umschreibe. Google hat diesbezüglich nicht viel hergegeben...

Gruss,
Alex

Geändert von xserio (14-07-2010 um 00:40 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 14-07-2010, 00:41
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

Hallo,

ich frage mich gerade, wofür du die Bild-ID aus dem Dateinamen extrahieren musst, wenn du es nur anzeigen willst. Oder fragst du anhand dieser dann für jedes Bild die DB ab, um Kommentare, Bewertungen oder ähnliches abzurufen?

Gruß,

Amica
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #3 (permalink)  
Alt 14-07-2010, 01:02
xserio
 Registrierter Benutzer
Links : Onlinestatus : xserio ist offline
Registriert seit: Jun 2008
Beiträge: 63
xserio ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von AmicaNoctis Beitrag anzeigen
Hallo,

ich frage mich gerade, wofür du die Bild-ID aus dem Dateinamen extrahieren musst, wenn du es nur anzeigen willst. Oder fragst du anhand dieser dann für jedes Bild die DB ab, um Kommentare, Bewertungen oder ähnliches abzurufen?

Gruß,

Amica
Hi,

ich lese nur die Ordner aus, garnicht die Datenbank. Die ID im Dateinamen lese ich aus, da ich die Bilder anhand dieser von Neu nach Alt sortieren kann...Die ID ist 100% einzigartig, da diese wiederrum aus der ID der Datenbank beim bild-upload in den Dateinamen geschrieben wird (in der DB per auto-increment aufgefüllt)

Gruss,
Alex
Mit Zitat antworten
  #4 (permalink)  
Alt 14-07-2010, 01:29
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

In diesem Falle denke ich, dass dir da die Datenbank beim reinen Anzeigen der Bilder keinen Performance-Vorteil bieten könnte und der Zugriff auf das Dateisystem mit dieser Struktur schon der sinnvollste Weg ist. Die paar Stringoperationen tun nicht weiter weh – wenn du dabei auch auf Regex verzichten kannst, erst recht nicht.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #5 (permalink)  
Alt 14-07-2010, 01:58
xserio
 Registrierter Benutzer
Links : Onlinestatus : xserio ist offline
Registriert seit: Jun 2008
Beiträge: 63
xserio ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ah super, das freut mich!
Wenn so ein Projekt viel umfangreicher wird greift man auf Datenbaken zurück? Gibt es da irgendwelche Richtlinien, ab welcher Datenmenge, oder kommt das immer ganz auf individuelle Einstellungen an?

gruss&danke,
alex
Mit Zitat antworten
  #6 (permalink)  
Alt 14-07-2010, 02:15
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

Konkrete Richtlinien sind mir da nicht bekannt, aber in deinem Falle geht es um hierarchisch geordnete (User, Kategorie, …) Binärdaten (Bilder), die untereinander nicht verknüpft sind. Da drängt sich das Dateisystem praktisch auf. Sobald du aber deine User die Bilder von anderen kommentieren, bewerten oder sonstiges machen lässt, hast du Verknüpfungen, die sich im Dateisystem nur schlecht verwalten lassen und da hat dann eine Datenbank wieder die Nase vorn.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
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
News aus Datenbank oder XML auslesen? carapau BRAINSTORMING PHP/SQL/HTML/JS/CSS 12 15-02-2008 18:19
Performance - Array oder Datenbank? Click PHP Developer Forum 4 01-03-2007 22:19
Performance: Session und/oder Datenbank? Zerofab PHP Developer Forum 7 04-05-2006 17:47
MyQL auf Linux oder Windows - Performance? boisbleu SQL / Datenbanken 1 29-09-2005 10:06
Performance - file_get_contents oder File JayQ PHP Developer Forum 7 21-06-2005 08:36

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

EM 2012 Tipp-Spiel ansehen EM 2012 Tipp-Spiel

Online Tipp-Spiel zur Fussball Europameisterschaft 2012, basierend auf php-Script mit hinterlegter mySql-Datenbank

27.05.2012 tippimnetz | Kategorie: PHP/ Spiele
Advanced Login ansehen Advanced Login

Login-System und Kundenverwaltung, die sich spielend leicht in bestehende Webseiten einbauen lässt und einen enormen Funktionsumfang bietet. Ihre eigene Webseite muss mit Advanced Login nicht umständlich an ein fertiges System angepasst werden.

25.05.2012 Madden | Kategorie: PHP/ Kundenverwaltung
BROM CMS/BelCal 3 ansehen BROM CMS/BelCal 3

Spezielles CMS für Betreiber von Ferienwohnungen. Komplette Seitenerstellung online, Verwaltung mehrerer Objekte, Reservierungssystem mit sofortigem Abgleich im Belegungskalender und vieles mehr bietet dieses Content Management System.

25.05.2012 belcal2 | Kategorie: PHP/ CMS
 Alle PHP Scripte anzeigen

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