AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Killen viele BLOB-Felder die DB-Performance?
Thema durchsuchen
Ansicht
Themen-Optionen

Killen viele BLOB-Felder die DB-Performance?

Ein Thema von Gecko · begonnen am 20. Mai 2007 · letzter Beitrag vom 23. Mai 2007
 
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#9

Re: Killen viele BLOB-Felder die DB-Performance?

  Alt 22. Mai 2007, 17:36
Zitat von Gecko:
Killen viele BLOB-Felder die DB-Performance?
Das würde ich mit einem eindeutigen Ja beantworten.
Ich habe folgenden Test mit dem MS SQL Server 2000 durchgeführt:
Alle Daten einer Tabelle (~30 Felder) mit 50000 Records werden mit "Select * FROM Tabelle" abgerufen.
Dann habe ich zwei Blob-Felder eingefügt.
Fast alle Blob-Felder waren leer, ungefähr bei 10 Datensätzen waren kurze Inhalte eingetragen.
Zwischen den Testläufen wurde jeweils der gesamte Cache gelöscht.
Ergebnis: ca. 15% weniger Leistung.

Meine Erklärung:
ein Blob-Feld löst allein schon durch sein Vorhandensein zusätzliche Aktionen in der DB aus.
Vorallem werden Blob-Daten physikalisch auf anderen Seiten als die Tabelle gespeichert.
Daher ergeben sich zusätzliche Festplattenzugriffe.

Workaround:
Man speichert die Blobdaten nicht direkt in der Tabelle, sondern in einer eigenen Tabelle.
Dies erfordert einen zusätzlichen Primärschlüssel für die Blobtabelle und einen Fremdschlüssel (pro Blobfeld) für die Orginaltabelle. (Datentyp int32 verwenden!)
Falls man die Blob-Daten wirklich braucht, kann man gezielt nur Blobdaten für den aktuellen Datensatz abrufen.
Andreas
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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 aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz