AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Grundsätzliche Frage zu Datenbank
Thema durchsuchen
Ansicht
Themen-Optionen

Grundsätzliche Frage zu Datenbank

Ein Thema von Surrounder · begonnen am 29. Aug 2006 · letzter Beitrag vom 29. Aug 2006
Antwort Antwort
Benutzerbild von Surrounder
Surrounder

Registriert seit: 26. Sep 2003
Ort: Stuttgart
177 Beiträge
 
Delphi 2006 Professional
 
#1

Grundsätzliche Frage zu Datenbank

  Alt 29. Aug 2006, 12:30
Datenbank: NexusDB • Version: 2.05 • Zugriff über: Datasource
Hallo Forum,

ich hab schon einige Threads gelesen in denen es um die Größe einer DB geht und ob die Datenbank da überhaupt noch schnell genug ist. Ich arbeite seit ein paar Jahren an einem Projekt das ich übernommen habe und hab da jetzt im Prinzip das gleiche Problem dass mir denke ich die Größe ein Problem bereitet.

Ich vermesse mit meiner Software ein Objekt das bis zu 20 Messtellen haben kann. Die Messdaten jeder Messstelle erzeugen ca. 20 KByte Daten in meiner Tabelle in der ich die Messwerte ablege. Ich habe pro Messtelle 5 Messkurven mit je ca. 1000 Messwerten und diese lege ich in jeweils einem Blob Feld ab. Das macht pro Messobjekt bis zu 400 kByte. Die Messobjekte laufen mit 30s durch die Anlage und mit kurzem Stillstand komme ich so auf ca. 2500 Messobjekte pro Tag. Somit kommen ich pro Tag auf ca. 1 GByte Daten die ich in die DB füllen muss pro Tag.

Worum es mir jetzt geht, wie würdet ihr das machen?

Ich hatte schon überlegt die Messkurven als jpg in die db abzulegen, aber um auf dem jpg die Messkurve zu erkennen würde das Bild größer als die Daten die ich jetzt habe. oder hat jemand noch eine andere Idee?

Was habt ihr mir für tipps dass ich das ganze trotzdem noch schnell genug ist?
In C geschrieben und schön war zuletzt Franz Schuberts 9. Symphonie
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#2

Re: Grundsätzliche Frage zu Datenbank

  Alt 29. Aug 2006, 12:36
brauchst Du die 1000 messwerte wirklich, oder reichen Dir davon auch 100 und den Rest kannst Du interpolieren?

Musst Du die Daten wirklich in einen Blob abspeichern, oder kannst Du auch was anderes nehmen?
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Grundsätzliche Frage zu Datenbank

  Alt 29. Aug 2006, 12:39
1 GB pro Tag: Das ist wirklich sehr viel. Selbst bei "normalen" SQL-Servern kommst Du innerhalb kurzer Zeit an Grenzen.

Die Frage die sich mir stellt (ohne die Daten jetzt genau zu kennen) ist welche Daten jetzt für längere Zeiten bezüglich Auswertungen, Analysen, ... schnell verfügbar sein müssen. Muß wirklich 1 GB an Daten für jeden Tag in relativer kleiner Aufteilung in der DB vorhanden sein oder kann man diese konzentrieren. Die "Rohdaten" werden dann z.B. im Filesystem in einem Binärfile (oder Textfile) für Archivierungszwecke neben der DB gehalten.

Alternativ wäre es die Meßdaten nicht in eine Tabelle zu konzentrieren sondern z.B. für jeden Tag eine Meßtabelle zu erzeugen um damit den Obermoloch an Meßdatentabelle zu vermeiden. Auß diesen werden regelmäßig Grundauswertungen gefahren um die wichtigsten Meßdaten für schon in komprimierter Form vorrätig zu halten (wie oben auch).
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Surrounder
Surrounder

Registriert seit: 26. Sep 2003
Ort: Stuttgart
177 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Grundsätzliche Frage zu Datenbank

  Alt 29. Aug 2006, 12:59
Problem ist dass ich eine Rückverfolgbarkeit in der Software haben muss und der Kunde also in einem unbestimmten Zeitraum wenn er feststellt dass es Probleme mit dem Produkt gibt anhand der Daten schauen möchte ob er das hätte schon früher erkennen können. Bei weniger Messwerten müsste ich halt wirklich interpolieren und es könnte sein dass ich Sprünge nicht erkenne.

Nein Blob Felder müssen nicht sein, ich dachte ja auch schon an ein jpg aber das wäre meinen Überlegungen nach größer als ein Blob.

Das speichern außerhalb des DB hatte ich auch schon mal auf dem Plan, Problem ist nur dass ich da Probleme mit den Backups und der Bedienung durch den Endkunden habe dem ich ja erklären muss was er wie sichern muss damit er alles wieder einlesen kann
In C geschrieben und schön war zuletzt Franz Schuberts 9. Symphonie
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Grundsätzliche Frage zu Datenbank

  Alt 29. Aug 2006, 17:38
Hallo,

dann musst du das Backup -> Restore halt kundenfreundlicher gestalten,
also so, dass er kaum Einflussmöglichkiten hat

Bei der Menge Daten könnte man eine DB pro Tag erzeugen.

Der Kunde wählt den Zeitraum aus,
der gebackupt werden soll,
und du schreibst die Tage dann in eine eigene Tabelle,
damit du weisst, wer wann welchen Tag gebackupt hat.

Beim Restore gehst du genauso vor,
nur dass du ja durch die Protokolltabelle
weisst, welche Tage / Zeitraum er maximal zurückholen kann.

Das könnte man auch automatisieren
("geplante Vorgänge" und standardbackupzeitraum , z.B. alles > 1 Woxche weg)


Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von Surrounder
Surrounder

Registriert seit: 26. Sep 2003
Ort: Stuttgart
177 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Grundsätzliche Frage zu Datenbank

  Alt 29. Aug 2006, 19:10
ja das ist auch meine geplante vorgehensweise. Momentan schreibe ich jede Woche die DB in einen Extra Ordern weg. Ich muss auch in der Lage sein eine Statistik zu machen, aber das kann ich bei laufender Anlage vergessen. Eine Statistik über einen Monat zu erstellen dauert etwas länger

Ihr würdet also die Messdaten in eine extra Tabelle machen oder in extra Dateien auf dem Laufwerk ablegen? Prinzipiell ist das verwenden von Blobfeldern aber doch das beste oder hab ich alternativen?
In C geschrieben und schön war zuletzt Franz Schuberts 9. Symphonie
  Mit Zitat antworten Zitat
Antwort Antwort


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 20:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz