|
Off-Topic Hier ist die allgemeine Plauder-Ecke. Alles, was sonst nirgends reinpasst kommt hier rein |
|
Themen-Optionen | Ansicht |
|
13.10.2010, 16:31 | #1 | |||||||||||
Böser Mod / NvT Terrorist
Registriert seit: 16.09.2009
Ort: Cyberspace
Beitr?ge: 2.470
Abgegebene Danke: 188
Erhielt 562 Danke für 126 Beiträge
Downloads: 11
Uploads: 0 Nachrichten: 10609 Renommee-Modifikator:
4016 |
Filesystem oder Datenbank? Wo Bilder abspeichern
Hi,
Hab heute (für mich was ganz was neues) erfahren, das man auch Bilder etc, problemlos in der Datenbank ablegen kann. Jetzt stellt sich mir natürlich die Frage, ist es nicht gescheiter diverse Bilder wie zB Avatare, Cover für Torrents, Bitbucket in die Datenbank zu lagern? Klar die Datenbank wird dadurch groß, aber die Verwaltung und verminderung von Ghost-Files würde sich sicher minimieren, da zB avatare und cover beim löschen des users bezw des torrents ja mitgelöscht werden. Das könnte man doch sicher auch für die .torrent files auch machen. Damit minimiert man die Dateien eines laufenden trackers sicher um einiges. Hat jemand genau Informationen wie sehr sich das denn auf die Performance auswirkt, bilder aus der datenbank anzuzeigen? Lg Lex |
|||||||||||
13.10.2010, 16:34 | #2 | |||||||||||
Erfahrener Benutzer
Registriert seit: 10.11.2008
Ort: im backbone
Beitr?ge: 131
Abgegebene Danke: 19
Erhielt 0 Danke für 0 Beiträge
Downloads: 3
Uploads: 0 Nachrichten: 6 Renommee-Modifikator:
150 |
Die Speicherung von Daten im BLOB ist nicht förderlich für die Performance. Die Bilder direkt auf die Festplatte speichern ist am besten. Arbeite schon länger nicht mehr mit Tracker Sourcen, aber das löschen von Usern+ zugehörige Bilder stellt im Normalfall kein Problem dar(ich weis bei der NV ist alles anders ).
__________________
________________________ MfG bastelfreak |
|||||||||||
13.10.2010, 16:49 | #3 | |||||||||||
Böser Mod / NvT Terrorist
Registriert seit: 16.09.2009
Ort: Cyberspace
Beitr?ge: 2.470
Abgegebene Danke: 188
Erhielt 562 Danke für 126 Beiträge
Themenstarter
Downloads: 11
Uploads: 0 Nachrichten: 10609 Renommee-Modifikator:
4016 |
Klar gibt möglichkeiten für Scripte etc, die zugehörigen Dateien zu löschen. Interessant is es ja, da durch löschen des User-datensatzes
die zugehörigen Bilder im selben zug zu löschen Lg Lex |
|||||||||||
13.10.2010, 17:16 | #4 | |||||||||||
König
Registriert seit: 15.06.2008
Beitr?ge: 1.846
Abgegebene Danke: 150
Erhielt 199 Danke für 35 Beiträge
Downloads: 10
Uploads: 0 Nachrichten: 984 Renommee-Modifikator:
2988 |
Bilder in der db zu speichern ist überhabt kein prob.
einige db-manager haben zum beispiel extra da drauf optimierte binärtypen mit im gepäck. Kann man auch mit mysql oder ms-sql machen. meine radio webseite läuft schon immer so das sich die meisten bilder in der db befinden. alle moderatoren oder interpreten zb sind als files nicht existend. Es ist im übrigen eher vorteilhaft für die performance bilde rin der db zu speichern, die ist nämlich dafür gedacht viele daten in möglichst geringer zeit bereit zu stellen, das normale filesystem kommt da schon ewig nicht mehr hinterher. jetzt komm mir keine rmit "aber die db liegt doch auf der hd, also muss das fs doch sowieso..." nein muss es nicht der db-.manager öffnet son db file und danach hat das fs damit ziemlich wenig bis nichts mehr mit zu tun. wenn du viele icons und kleine bilder anzeigen willst bricht das in der db speichern alle recorde. von der optimierten funktion abgesehen greift natürlich noch der db cache grad bei icons und grafken die auf dem tracker angezeigt werden, mit vielen gleichzeitigen zugriffen. allerdings benötigt die db dann auch mehr speicher, am besten soviel geht für indexierung und caching bereit stellen. nen mysql mit standart config unoptimiert machst du natürlich tot wenn du alle grafken in einer db speicherst. ich tippe mal das bastelfreaks erfahrung daher rührt .torrent files sind auch kein prob hab ich schon mit experimentiert, soll eine funktion meiner source werden, weil mich habend ie dinger schon immer genervt. warum auch nicht was macht der tracker den? das .torrent was er bekommt legt er in den ordner. und wenn du kommst und es saugst wird es zerlegt und mit deinen daten da drin wieder zu einem file verknüpfelt um es dir zu senden, da smachste mit nem binärfile aus der db um einiges eleganter. mal ein kleines beispiel wie so ein kleines php aussehen kann um bilder aus der db anzuzeigen. das schnippselchen würde als ersatz für das bild in der img src stehen PHP-Code:
__________________
- Der Bezug zum eigentlichen Thema nimmt mit jedem Post kontinuierlich ab -
- Jedes Thema kann ganz leicht in etwas komplett anderes geändert werden - Ge?ndert von Feudas (13.10.2010 um 17:42 Uhr) |
|||||||||||
14.10.2010, 15:37 | #5 |
Master Coder
Registriert seit: 10.03.2008
Ort: Zuhause
Beitr?ge: 8.037
Abgegebene Danke: 1.199
Erhielt 2.928 Danke für 266 Beiträge
Downloads: 28
Uploads: 9 Nachrichten: 357 Renommee-Modifikator:
10 |
also ich persönlich würds nicht mit in die db machen alleine weil dann leute die möglichkeit haben in meien db etwas hochzuladen 2 grund wär die db würde mir zu gross werden und nur damit mann weniger müll hat es gibt doch schon den bilder cleaner von cerb für die nv da ist doch dann garnix mehr mit bild müll auf der hdd und denn mod kann mann sich doch auch super für die torrentfiles anpassen
__________________
Code:
require_once('include/gehirn.php'); session_start(); if(empty($action)) { echo "<td class="tablea">Kopf anstrengen und Nachdenken</td>"; } else { echo "<td class="tablea">Kopf zuviel angestrenkt nun Qualmt er ;)</td>"; } |
14.10.2010, 15:43 | #6 | |||||||||||
Böser Mod / NvT Terrorist
Registriert seit: 16.09.2009
Ort: Cyberspace
Beitr?ge: 2.470
Abgegebene Danke: 188
Erhielt 562 Danke für 126 Beiträge
Themenstarter
Downloads: 11
Uploads: 0 Nachrichten: 10609 Renommee-Modifikator:
4016 |
Hab mich fürs erste mal entschieden die Covers / Screens für die Torrents in die DB zu packen, wie man am 2. Thread erkennt.
Die Argumente von Feudas haben doch sehr positiv geklungen, und absichern muss man das ganze sowieso. Ob jetzt in die DB laden, oder ins Filesystem ist im Grunde egal, gesichert muss beides werden. Vorallem denk ich ist es "sicherer" da die bilder ja per funktion in binär zerlegt werden, wudurch sämtliche gefahr "decodiert" ist. Einene weiteren Vorteil sehe ich darin, mich nicht mehr um Pfade kümmern zu müssen Lg Lex |
|||||||||||
14.10.2010, 16:05 | #7 |
Master Coder
Registriert seit: 10.03.2008
Ort: Zuhause
Beitr?ge: 8.037
Abgegebene Danke: 1.199
Erhielt 2.928 Danke für 266 Beiträge
Downloads: 28
Uploads: 9 Nachrichten: 357 Renommee-Modifikator:
10 |
naja jeder halt wie er meint nech
__________________
Code:
require_once('include/gehirn.php'); session_start(); if(empty($action)) { echo "<td class="tablea">Kopf anstrengen und Nachdenken</td>"; } else { echo "<td class="tablea">Kopf zuviel angestrenkt nun Qualmt er ;)</td>"; } |
14.10.2010, 18:03 | #8 | |||||||||||
Erfahrener Benutzer
Registriert seit: 06.12.2008
Ort: /dev
Beitr?ge: 433
Abgegebene Danke: 12
Erhielt 77 Danke für 8 Beiträge
Downloads: 10
Uploads: 0 Nachrichten: 331 Renommee-Modifikator:
791 |
Glaub für die Torrentfiles in der DB hab ich irendwo noch was liegen. Ich such das mal raus... Die werden "on the fly" erzeugt etc.pp.
|
|||||||||||
14.10.2010, 20:28 | #9 | |||||||||||
König
Registriert seit: 15.06.2008
Beitr?ge: 1.846
Abgegebene Danke: 150
Erhielt 199 Danke für 35 Beiträge
Downloads: 10
Uploads: 0 Nachrichten: 984 Renommee-Modifikator:
2988 |
jo genau so dachte ich mir das auch, was anderes wird da im momment ja auch nicht gemacht, nur das der ausgangspunkt ne datei ist und kein datencache, wobei aus der datei im ersten schritt auch nur noch nen datencache gemacht wird
__________________
- Der Bezug zum eigentlichen Thema nimmt mit jedem Post kontinuierlich ab -
- Jedes Thema kann ganz leicht in etwas komplett anderes geändert werden - |
|||||||||||
19.10.2010, 14:47 | #10 | |||||||||||
Böser Mod / NvT Terrorist
Registriert seit: 16.09.2009
Ort: Cyberspace
Beitr?ge: 2.470
Abgegebene Danke: 188
Erhielt 562 Danke für 126 Beiträge
Themenstarter
Downloads: 11
Uploads: 0 Nachrichten: 10609 Renommee-Modifikator:
4016 |
So, hab mir jetzt mal mehrere Möglichkeiten ausprobiert.
Dabei hab ich alerdings volgendes Problem. Zum Darstellen innerhalb eines Contents ist die Variante das Bild im Binär zu speichern und dann per <img src=""> auszugeben auf jeden fall die einfachere Möglichkeit, da man imagepng(); nur verwendne kann wenn man sonst keinen Content hat. Ich müsste also zum Auflisten der Cover die <img src="'data:image/*;base64,' . base64_encode($hash);"> Variante benutzen, und als direktlink für die lightbox den imagepng(); Kommt mir unnötig doppelt und kompliziert vor. Vorallem da mir die Variante von Feudas besser gefällt, da man auch thumbs anlegen kann, was ja nicht schlecht ist. Hat jemand ne Idee wie ich das umsetzen könnte? Ich will nicht wirklich beide varianten benutzen, würde auch die Datenbank unnötig belasten. Lg Lex --======================================-- --== Beitrag erstellt: 14:47 um 12:39 ==-- --== geantwortet auf Beitrag vom ==-- --== automatische Beitragszusammenführung ==-- --======================================-- Lex schrieb nach 2 Stunden, 7 Minuten und 11 Sekunden: So, nach einem kurzen Denkanstoß von Feudas im ICQ hab ichs nun doch noch geschafft. Vielen Dank an alle beteiligten ^^ Lg Lex Korrekter Code PHP-Code:
|
|||||||||||
Stichworte |
base64, bilder, cover, datenbank, ghostdaten, speichern, torrents |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, G?ste: 1) | |
|
|