This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Was bringt der FSAsset für Vorteile?
#4
Deduplizierung ist in der Tat immer eine schöne Sache, wenn sie denn gut funktioniert und vor allem performant ist.

Der Hauptvorteil von FSAsset aber liegt in einem anderen Bereich, und zwar der besseren Leistung.

Wenn Assets als BLOBs in einer Datenbank gespeichert werden, dann erzeugt dies ziemlich viel Komplexität, wenn ein Asset vom Server angefordert wird, weil:

1. es kommt die Anfrage per TCP/IP oder Socket
2. die Datenbank muss die SQL-Anfrage bearbeitet werden
3. dann muss das Asset gefunden werden, d.h. erneut Suche in der Datenbank und Zugriff auf das Filesystem
4. Dann wird das an den Server geliefert
5. Der Server liefert es an den Client

Die Probleme daran sind, dass die meisten Datenbanken einfach nicht dafür gedacht sind und daher absolut unoptimiert, um ein großer BLOB-Storage zu sein. Auch macht es die Backups der Datenbank sehr schnell und sehr groß, ebenso hat es Einfluss auf die Replikation. Weil die Datenbank sehr viel bei der Auslieferung des Assets beteiligt ist, durchläuft damit eine Anfrage auch hier mehrere Bereiche, also TCP/IP-Stack des Betriebssystem, sehr viel Datenbank und dann noch Dateisystem.

Wenn dagegen das BLOB auf dem Dateisystem direkt angelegt ist - das ist genau FSAsset - und in der Datenbank nur der Dateipfad gespeichert wird, dann wird es einfach deswegen deutlich schneller geladen, da zum Bekommen der Daten nicht mehr das komplette Datenbanksystem mit all seiner Komplexität bemüht werden muss, sondern statt dessen direkt das Betriebssystem mit seinem Dateisystem. Und das ist dann nunmal deutlich schneller.

Es gibt dazu auch ein Paper namens "To blob or not to blob" von Microsoft aus dem Jahr 2006, das einfach zu lesen ist und 11 Seiten hat. Dort wird BLOB-Storage in einem SQL-Server von der Performance her mit reinem Dateissystem (NTFS) verglichen. Die wesentliche Aussage ist, dass damals bis 256 KB Dateisystemgröße die Datenbank schneller arbeitet, ab 1 MB aber das Dateisystem. Sicher ist jedenfalls, wenn man eine Menge an Daten hat dann ist das Dateisystem fast immer gegenüber einer SQL-RDBMS besser.
Zitieren


Nachrichten in diesem Thema
RE: Was bringt der FSAsset für Vorteile? - von Bartholomew Gallacher - 01.04.2022, 09:13
RE: Was bringt der FSAsset für Vorteile? - von Bartholomew Gallacher - 01.04.2022, 17:53
RE: Was bringt der FSAsset für Vorteile? - von Bartholomew Gallacher - 01.04.2022, 22:27
RE: Was bringt der FSAsset für Vorteile? - von Bartholomew Gallacher - 10.04.2022, 22:49
RE: Was bringt der FSAsset für Vorteile? - von Bartholomew Gallacher - 13.04.2022, 20:56
RE: Was bringt der FSAsset für Vorteile? - von Bartholomew Gallacher - 15.04.2022, 21:55

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste