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! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

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: 64
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.709
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: 64
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.709
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: 64
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.709
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

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 03:34 Uhr.