Datenbank Forum - für Anfänger und Profis

Willkommen im Datenbank Forum von Datenbanken-verstehen.de - Das Datenbank, Data Warehouse & Business Intelligence Forum!

Das Datenbank Forum für Anfänger und Profis ist eine Community zu den Themen Datenbanken, Data Warehouse & Business Intelligence. Nimm teil an der Community von Datenbanken-verstehen.de und tausch dich mit deinen Fragen und Lösungen mit anderen Nutzern aus.

Als registrierter Benutzer genießt Du viele Vorteile, wie

  • den vollen Zugang zu allen Foren und Unterforen
  • Kostenloses Lernmaterial inkl. Lösungen zum Thema Datenbanken
  • Zugriff auf DB-Tutorials, Best Practices und SQL-Snippets

Bevor Du einen Beitrag verfassen möchtest, kannst Du dich einfach kostenlos registrieren.

oder Einloggen mit



Beachte bitte die Forenregeln von Datenbanken-verstehen.de. Wir wünschen Dir viel Spaß im Datenbank Forum! - Dein Datenbanken-verstehen.de-Team

DB Design Frage

Ein gutes Datenbankdesign ist Pflicht! Doch wie geht man an die Datenmodellierung heran?
Hier treffen Datenbankdesign und Datenmodellierung aufeinander...

DB Design Frage

Beitragvon lepper01 » Mi 10. Sep 2014, 19:54

Hallo zusammen,

ich habe ein paar Fragen zu DB Design. Ich möchte Euch um Rat fragen, wie Ihr es lösen würdet.

Hier die Aufbau:
Ein Packet beinhaltet verschiedene Botschaften, Botschaften beinhalten verschiedene Signalen, welche wieder verschiedene Attributen haben.

Beispiel Aufbau:

Packet A beinhaltet
Botschaft_1
Botschaft_2
Botschaft_3
Botschaft_xx

Botschaft_1 beinhaltet:
Signal_1_1
Signal_1_2
Signal_1_xxx

Botschaft_2 beinhaltet:
Signal_2_1
Signal_2_2
Signal_2_xxx

usw

Es kann mehrere Versionen von Packeten geben z.B. Packet(n), welche viele gleiche Botschaften beinhalten wie Packet(n-1) aber es sind einige neue Botschaften dazugekommen bzw. welche gelöscht worden. Das gleiche kann mit Signalen passieren, die können einer Botschaft dazukommen bzw. entfallen.

Ich möchte z.B. viele Vergleiche machen z.B. Unterschiede zwischen Packet(n) und Packet(n-1) und Packet(n-2). Ach nochwas, ein Packet beinhaltet ca. 200 Botschaften und eine Botschaft ca. 10 Signalen --> ein Packet wird 2000 Signalen haben. Ich habe z.B. etwa 100 Packeten --> 100*2000 = 200000 Signalen. Es kann aber viel mehr werden.

Hier meine Vorschläge, was meint Ihr?

Bild

viele grüße
lepper01
 
Beiträge: 2
Registriert: Mi 10. Sep 2014, 19:52

Re: DB Design Frage

Beitragvon Micha » Sa 13. Sep 2014, 16:28

Hallo lepper01,

schön ein neues Gesicht hier zu sehen ;)
Im Grunde hört sich das bei Dir nach vielen 1:n-Beziehungen an.

Nun zu deinem Problem:

Wie willst du das Problem mit den Versionen lösen? => Ich würde ein Master-Template mit Counter einführen
Das Hinzufügen bzw. Löschen von bestehenden Paketen bzw. Signalen wäre möglich, aber natürlich nur mit einer Historie, per Flag oder sauberer referentiellen Integrität.

Interessant wäre noch, wofür das Projekt später gedacht ist, also Branche und Aufgabe?
Der Vorteil in der Lsg.2 ist, dass später noch mehr zur Paketbotschaft hinzugefügt werden kann.

Ich denke, dass das Modell sich stark nach der Frage zur Historie bzw. sauberem Hinzufügen/Entfernen von Paketelementen ausrichten wird.

Gruß,
Micha
Micha
 
Beiträge: 129
Registriert: So 3. Nov 2013, 12:13

Re: DB Design Frage

Beitragvon lepper01 » Sa 13. Sep 2014, 17:05

Hallo,

danke füe die Antwort. Ich werde eher richtung Lösung 2 tendieren (also normalisieren). Somit kann ich die eben viele n:m Beziehungen auflösen. Deswegen werde ich auch sonst viele redundante Daten vermeiden. Falls sich eine Botschaft von dem Packet X ändern soll, dann werde ich halt neue Version erzeugen.
Die neue Packeten mit allen Botschaften und Signalen werden ca. 5 mal im Jahr eingelesen (d.h. neu in die DB hinzugefügt). Meistens ist so, dass zwischen Packet version 1 und Packet Version 2 80% Inhalt gleich ist. D.h. es wird so sein, dass Packet version 1 wird als Template vererbt und die restlichen Sachen mit neuen Versionen angelegt. Die Packete (mit Botschaften und Signalen) werden aus einer XML Datei eingelsen und zusätzlichen Spalten bzw. Attributen werden händisch nachgepflegt (d.h. zusätzliche Requirements). Zusätzliche Requirements (bzw. Spalten in DB) pro Signal sind etwa 20. Und die können auch für Packet Version 2 reused werden. Aber nicht missverstehen, ich werde nicht neue Splaten in die Tabellen hinzufügen ;) nur aus einer XML kann nur eine bestimmte Anzahl von Informationen eingelesen werden, die restlichen muss man mit Kunden ausmachen.

Die DB gilt als eine Art von Requirement, es werden viele Vergleiche zwischen Packeten, Botschaften und Signalen durchgeführt.
lepper01
 
Beiträge: 2
Registriert: Mi 10. Sep 2014, 19:52


Zurück zu Datenbankdesign und Datenmodellierung

 


  • Related topics
    Antworten
    Zugriffe
    Letzter Beitrag

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste

cron
  • Jetzt Fan werden
  • Newsletter abonnieren? Hier anmelden!

    Alle Informationen aus dem Portal, Blog und Forum in einem Newsletter!

    E-Mail-Adresse: