AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datenbank für schnelle Bilder, Vorschläge bitte.
Thema durchsuchen
Ansicht
Themen-Optionen

Datenbank für schnelle Bilder, Vorschläge bitte.

Ein Thema von KodeZwerg · begonnen am 22. Apr 2018 · letzter Beitrag vom 28. Apr 2018
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Datenbank für schnelle Bilder, Vorschläge bitte.

  Alt 23. Apr 2018, 10:44
Mir ist nicht richtig klar, wie die Bilder "berechnet" werden sollen (oder ist es doch ein simpler Upload), auch die "Einzelplatzlösung lokal" ist mir nicht ganz klar, die Lösung existiert alles nur einmal an einem spezialisierten Arbeitsplatz?
Es ist kein Upload, wir haben binär Dateien, die, wenn Sie über das Hauptprogramm abgerufen werden, Analysiert werden, die Analyse wiederum ergibt neue Daten die als Bild dargestellt werden, ähnlich einem Diagramm. Ein zweites Bild optional für eine andere Art der Berechnung/Darstellung. Momentan wird leider jedes mal alles neu berechnet. Eine Berechnung dauert so circa 5-10 Sekunden, es ist kein Weltuntergang aber auf Dauer schon nervig. Die Bilder an sich spielen im Hauptprogramm nur eine untergeordnete Rolle, da geht es um etwas anderes, also Bilder sind nicht der primäre Task.
Um hier nun ein besseres Echtzeit-Erlebnis genießen zu können, so dachte ich jedenfalls, warum nicht die Bilder speichern wenn sie eh schon berechnet sind.
Dafür hatte ich mir ein Performance Konzept wie bereits beschrieben überlegt, eine DB mit den Dateinamen und einer CRC sowie einer ID die den Index der zweiten DB angibt wo letztendlich die Bilder/Blobs für die Dateien gespeichert sind.
Mit der Fileserver Methode wäre ich da aktuell im Worst-Case bei doppelt berechneten Bildern mit 1.35mio Dateien dabei was ich dem Dateisystem nicht antun möchte und da die Bilder nur Sinn im Zusammenhang mit einer Analysierten Datei ergeben, hielt ich eine DB für sinnvoll.
Ja es wird nur lokal von einem Ort aufgerufen, nein das Hauptprogramm geht nicht um die Welt es ist nur für einen Zweck an einem Ort gut.
Was ich verhindern wollte war ein Ergebnis wie das Bild von mensch72 zu erreichen (Hut ab übrigens, da bekomme ich Angst).
Ich hoffe ich habe mich klar genug ausgedrückt.
Danke für Deine Sichtweise zu den anderen Punkten!
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#2

AW: Datenbank für schnelle Bilder, Vorschläge bitte.

  Alt 23. Apr 2018, 11:00
Ok, danke für die Erläuterung. Ich wollte nicht ohne weiteres für Fileserver plädieren. Man sieht ja, auch wenn es ihr Job ist, müssen sie dabei nicht unbedingt glänzen.
Langsam ist also erstmal die Analyse/Berechnung des Bildes? Oder sogar das Laden der Binärdaten?
Dann wäre es evtl. spannend, diesen Prozess zu beschleunigen und sich das Bildcaching zu sparen. Dieser Vorschlag ist wahrscheinlich blöd, weil ihr das sicher bereits sinnvoll optimiert habt.

Je nach Ergebnis (der Berechnung), wäre vielleicht SVG eine gute Wahl (Vektordaten) als Bildformat. Das ist ja mittlerweile recht mächtig (und sehr schlank).
Gruß, Jo
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#3

AW: Datenbank für schnelle Bilder, Vorschläge bitte.

  Alt 23. Apr 2018, 11:01
Was macht ihr euch mit dem Datei-System so sehr in die Hose?

Natürlich muss man dem eine gewisse Aufmerksamkeit widmen, aber vor Angst erstarren?

Ein Verzeichnis mit 1.000.000 Einträgen lässt den Explorer bei der Darstellung ganz schön schwitzen, aber was ist denn mit 256 Einträgen? Das stellt gar kein Problem dar.

Wenn man jetzt Dateien anhand einer ID (UInt32) abspeichern möchte, dann baut man sich den Pfad dazu wie folgt:
Code:
ID = 123456789
ID(hex) = $075BCD15
Pfad = .\07\5B\CD\075BCD15.dat
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.882 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Datenbank für schnelle Bilder, Vorschläge bitte.

  Alt 23. Apr 2018, 11:06
Ist es wichtig unabhängig von dem Programm auf die "Dateien" zuzugreifen, dann Dateisystem. Wenn nicht dann eine DB. Ein embedded DBMS muss in der Regel nicht installiert werden und stellt daher auch kein großer Mehaufwand dar.
Markus Kinzler
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Datenbank für schnelle Bilder, Vorschläge bitte.

  Alt 23. Apr 2018, 11:07
Man kann vieles machen, wenn man denn möchte. Aber er fragte halt nach einer DB - und so völlig abstrus ist der Gedanke ja auch nicht, für eine Datensammlung eine Datenbank nutzen zu wollen.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.740 Beiträge
 
Delphi 6 Enterprise
 
#6

AW: Datenbank für schnelle Bilder, Vorschläge bitte.

  Alt 23. Apr 2018, 11:21
Oder halt eine Kombination von beidem, wie bei einem Dokument-Verwaltungs-System?

Die Dateien liegen (ggf. unter einem kryptischen Namen) in einem dafür ausgelegten Filesystem.
In der Datenbank ist dieser Ablageort samt Dateinamen gespeichert, zusammen mit den Attributen, durch die das Bild ggf. zugeordnet werden soll.
Die DB ermöglicht nun eine schnelle Suche, ob es das Bild (zu gewissen Werten o.ä.) schon gibt und liefert den Ort, von dem es geladen werden kann.
Ralph
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.882 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Datenbank für schnelle Bilder, Vorschläge bitte.

  Alt 23. Apr 2018, 11:32
Wenn Datenbank, würde ich alles in diese speichern.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Datenbank für schnelle Bilder, Vorschläge bitte.

  Alt 23. Apr 2018, 11:44
er fragte halt nach einer DB - und so völlig abstrus ist der Gedanke ja auch nicht, für eine Datensammlung eine Datenbank nutzen zu wollen.
Ja Danke dafür, also DB ist schon das Ziel, alle Fileserver oder kryptische Dateinamen o.ä. Möglichkeiten kenne ich, vielen Dank für alle Dateisystem basierten Vorschläge aber die scheiden partout aus. Vorgabe ist eine DB oder etwas was die Funktionen die ich brauche schnell bereitstellen kann. Es gibt ja auch virtuelle Dateisysteme, darüber habe ich auch schon nachgedacht, was da halt performanter wäre im Vergleich zu einer DB. Das wäre für mich die einzige alternative, so das lokal nur ein paar Zusatzdateien entstehen aber die Bilder in einer großen zusammengefasst werden (bei virtuellem Dateisystem wahrscheinlich dann egal).
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
rokli

Registriert seit: 21. Mär 2009
Ort: Rödinghausen
302 Beiträge
 
Delphi 10.4 Sydney
 
#9

AW: Datenbank für schnelle Bilder, Vorschläge bitte.

  Alt 23. Apr 2018, 12:14
Hallo,

vielleicht teilst Du Deine Daten in 2 Bereiche:

1. Verwaltung in einer DB/Tabelle -> Name des Bildes, ID des Bildes, weitere Informationen insbesondere zum Suchen und in der
2. DB/Tabelle -> die Bilddaten mit ihrer ID.

Der Vorteil ist, dass Deine Verwaltung schlank bleibt und beim Suchen von Bildern mit wenigen Daten ausgekommen wird.

Gruß
Rolf
wenn nicht anders angegeben, schreibe ich zu D7, XE2 und MS SQL - ansonsten fragen Sie ihren Administrator oder einen Operator. Update 06/2020: Delphi 10.4 Sydney
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.882 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Datenbank für schnelle Bilder, Vorschläge bitte.

  Alt 23. Apr 2018, 12:21
Blobs werden aber sowieso gesondert gespeichert. in der eigentlichen Tabelle wird nur ein Verweis(BLOBID) gespeichert.
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 05:32 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