myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
   » Plugin für Firefox
   » Plugin für IE
   » Gadget für Windows
» Regeln
» Wie poste ich richtig?
» Datenschutzerklärung
» wbb-FAQ

Mitglieder
» Liste / Suche
» Stadt / Anleitung dazu
» Wer ist wo online?

Angebote
» ASP.NET Webspace
» Bücher
» Zeitschriften
   » dot.net magazin

Ressourcen
» guide to C#
» openbook: Visual C#
» openbook: OO
» MSDN Webcasts
» Search.Net

Team
» Kontakt
» Übersicht
» Wir über uns
» Impressum

» Unsere MiniCity
MiniCity
» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Rund um die Programmierung » Anwendung zur Messdatenaufbereitung und Datensammlung in einer Datenbank - Was ist eure Meinung?
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Anwendung zur Messdatenaufbereitung und Datensammlung in einer Datenbank - Was ist eure Meinung?

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
anj100xl anj100xl ist männlich
myCSharp.de-Mitglied

Dabei seit: 12.01.2017
Beiträge: 3
Entwicklungsumgebung: Visual Studio 2010
Herkunft: München


anj100xl ist offline

Anwendung zur Messdatenaufbereitung und Datensammlung in einer Datenbank - Was ist eure Meinung?

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo liebe Community!

Ich habe bereits ein Tool entwickelt welches Messdaten nach bestimmten Anforderungen und via COM-Schnittstellen durch weitere Tools aufbereitet. Das funktioniert alles auch einwandfrei. Nun werde ich (leider) Opfer meines Erfolgs und die Anwendung soll wie folgt erweitert werden.

Die Anwendung soll nun am besten auf einem Server oder extra Rechner laufen und immer über Nacht eine riesen Datenmenge im Stapelprinziep durchlaufen. Die dabei gewonnenen Daten sollen in einer Datenbank zentral abgelegt werden. Die Datenbank wird mit Sicherheit schnell wachsen und sollte beliebig erweiterbar sein.

Zudem soll eine Useranwendung entwickelt werden mit der es Möglich ist auf die Datenbank zugreifen zu können.

Leider habe ich von Datenbanken und Server/Client-Anwendungen mal absolut überhaupt keine Ahnung. Vielleicht kann mir jemand mit mehr Kompetenz als ich einen Denkanstoß geben. Mich interessiert das allgemeine Vorgehen, Was ist der Stand der Technik, Wie würdet ihr an die Aufgabe herangehen?

Wenn die grundlegende Herangehensweise klar ist, würde es mir erheblich leichter fallen in die richtige Richtung zu recherchieren und mir die benötigten Grundlagen anzueignen.

Ich Danke euch vielmals im Voraus für eure Bemühungen und freue mich auf eure Kommentare! smile
12.01.2017 09:03 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Taipi88 Taipi88 ist männlich
myCSharp.de-Mitglied

images/avatars/avatar-3220.jpg


Dabei seit: 02.02.2010
Beiträge: 523
Entwicklungsumgebung: VS 2010
Herkunft: Mainz


Taipi88 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hi,

das kann man anhand deiner Infos jetzt schlecht beurteilen.

Wo kommen die Daten her?
Wer soll die Bearbeitung anstoßen?
Was genau soll denn die Oberfläche eigentlich genau anzeigen?

Im simpelsten Fall - kann man hingehen - eine SqlServer installieren (SqlExpress z.B.) - eine Datenbank erstellen. Dann entwickelt man ein simples Kommandozeilentool, was die Auswertungen in die DB schreibt und beispielsweise über die Windows-Aufgabenverwaltung täglich gestartet wird. Dann noch eine WinForms oder WPF-Anwendung zum drüberschauen (denk an Paging!) - und du hast was womit man arbeiten könnte.

Lässt sich natürlich auch als WebServer aufziehen - aber wenn du noch nie etwas mit Datenbanken gemacht hast - würde ich an deiner Stelle ohnehin mal ein paar Tutorials machen mit ADO.NET (pur), EntityFramework, etc. damit du einen Überblick bekommst...

LG
12.01.2017 09:24 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
anj100xl anj100xl ist männlich
myCSharp.de-Mitglied

Dabei seit: 12.01.2017
Beiträge: 3
Entwicklungsumgebung: Visual Studio 2010
Herkunft: München

Themenstarter Thema begonnen von anj100xl

anj100xl ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo Taipi88!

Besten Dank für deine Antwort. :)

Die Daten entstehen als Produkt einer Auswertung der Messdatein. Ich erläutere das mal an einem Beispiel.

Auf einem Laufwerk landen tagtäglich eine Menge von Messdatein. Diese Messdaten stammen von unterschiedlichen Loggern. Die Anwendung nimmt sich nacheinander eine Messdatei und überprüft die Messdatei hinsichtlich gewisser Trigger (Bis hier funktioniert alles). Nun soll jetzt die Anwendung bespielsweise abends um acht damit beginnen die neu hinzugekommen Messdatein abzuarbeiten. Wurde in einer Messdatei von Logger_1 ein Trigger_1 und Trigger_2 registriert so soll nun diese Detektion mit Zeitstempel in einer Datenbank abgelegt werden.

Die User möchten nun morgens nachschauen welche Logger welche Trigger detektiert hat. Dabei sollen sie auch suchen und filtern können, am besten mit einer grafischen Benutzeroberfläche. Da die User auf die Auswertungen angewiesen sind, muss die Benutzeroberfläche einfach bedienbar und wartungsfrei arbeiten können. Die WebServer-Idee gefällt mir ganz gut. Wäre es auch ratsam einen extra Rechner als Server aufzubauen?

VG.
12.01.2017 10:18 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
OlafSt OlafSt ist männlich
myCSharp.de-Mitglied

Dabei seit: 02.05.2011
Beiträge: 41
Entwicklungsumgebung: VS 2015 Community
Herkunft: HH


OlafSt ist online

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

IMHO sieht das nach einer Zweiteilung aus. Teil 1 ist eine simple Konsolenanwendung, die einfach per geplantem Task angestoßen wird und die Dateien bearbeitet. Ich bin mir ziemlich sicher, das da schon ein SQL-Server existiert - an den kannst du dich bestimmt "dranhängen" und dort deine usgewerteten Daten hineinschreiben. Teil 2 wäre dann eine GUI-Anwendung, die einfach aus den Daten aus dem SQL-Server die gewünschten Infos extrahiert und zur Anzeige bringt.

Webserver halte ich da für eher ungeeignet.
12.01.2017 12:55 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Taipi88 Taipi88 ist männlich
myCSharp.de-Mitglied

images/avatars/avatar-3220.jpg


Dabei seit: 02.02.2010
Beiträge: 523
Entwicklungsumgebung: VS 2010
Herkunft: Mainz


Taipi88 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Dann würde ich es in der Tat so machen, wie in meiner "simplen" Vorgehensweise und von OlafSt beschrieben.

Erstellst dir einfach eine Datenbank auf eurem Datenbank-Server, schreibst erst mal die Konsolenanwendung und den Task - und danach kommt der Client, welcher ja sicher auf die selbe Datenbank zugreifen kann.

Anzeigen / Suchen / Filtern kannst du sowohl mit WinForms als auch WPF recht einfach.
Würde mir die Technologie aussuchen, die du schon beherrschst. Vom Prinzip ist ohne Vorkenntnisse WinForms einfacher - wird wenn du dich nicht auskennst allerdings am Ende sehr unübersichtlich bis frickelig. Wenn das ganze Zeit hat und du WPF noch nicht kennst würde ich dir WPF in Verbindung mit MVVM empfehlen. Wird deutlich übersichtlicher - dauert aber wenn du's ordentlich machst wohl seine Zeit.

LG
12.01.2017 13:21 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

images/avatars/avatar-2981.png


Dabei seit: 20.07.2008
Beiträge: 9.562
Herkunft: Süddeutschland


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Messdaten sind i.d.R. Rohdaten. Und Rohdaten werden in GUIs i.d.R. nicht angezeigt; sie werden vorher transformiert.

Deiner meine Meinung, bzw. machen wir das selbst so:

* Rohdatenerfassung (Console / Windows Service): Schreibt die Rohdaten in die Datenbank
* ETL Prozess ( ETL-Prozess) ( Console / Windows Service): liest die Rohdaten und baut darauf basierend die Daten für das Auswerten auf.
* UI Applikation (bei uns eine Webanwendung): zeigt die aufgearbeiteten Daten / Auswertungen an.

Insbesondere wenn die Rohdaten-Datenbank schnell wächst, kommst Du um einen ETL Prozess nicht drum herum.
Ansonsten werden Auswertungen viel viel viel zu langsam. Daher ist im Big Data Bereich auch ETL taglich Brot; es geht gar nicht mit großen und flexiblen Datenmengen anders.

Das alles ist übrigens mit PowerPI in wenigen Minuten umsetzbar (außer man braucht irgendwelches Custom-Zeugs).

Ich weiß natürlich nicht, was bei euch große Datenmengen heisst; aber ich komm aus der Maschinenbaubranche und hier haben Laserköpfe von Werkzeugmaschinen teilweise 20 GB Daten am Tag produziert, auf das Predictive Maintenance Analysen geworfen wurden - nur die Köpfe.
12.01.2017 14:02 Beiträge des Benutzers | zu Buddylist hinzufügen
anj100xl anj100xl ist männlich
myCSharp.de-Mitglied

Dabei seit: 12.01.2017
Beiträge: 3
Entwicklungsumgebung: Visual Studio 2010
Herkunft: München

Themenstarter Thema begonnen von anj100xl

anj100xl ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Vielen Dank für eure Antworten! Vorallem der ETL-Ansatz gefällt mir sehr gut - hier werde ich ansetzen cool
20.01.2017 09:08 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum
Antwort erstellen


© Copyright 2003-2017 myCSharp.de-Team. Alle Rechte vorbehalten. 23.01.2017 11:44