Entwurf einer DB

Hallo!

Vielleicht könnt ihr mir ja bei meiner Datenbank helfen, da ich auf dem Gebiet Anfänger bin.

Also die Datenbank soll in periodischen Abständen Daten von verschiedenen Quellen (Routern) aufnehmen. Zum einen die des Arp Caches (pro Interface) mit dazugehöriger IP und Status des/der Interfaces. Zusätzlich soll noch das Datum und der Zeitpunkt festhalten werden, um später zwischen diesen verleichen zu können.

Wie würdet ihr die Tabellen jetzt organisieren? Alles in eine Tabelle oder für jeden neuen Router ne eigene Tabelle oder jedesmal ne neue Tabelle pro abgefragten Daten…oda oda oda.

Wäre super, wenn ihr mir dabei mal helfen könntet.

danke

  • Also mit deinen Informationen auf jeden Fall nur 1 Tabelle

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

  • Also mit deinen Informationen auf jeden Fall nur 1 Tabelle

Aha…dann will ich mal etwas preziser werden und vllt gleich mal an einem BSP.

Ok…ich frage z.B. zwei Router (R1 und R2) ab und das ganze mal am Bsp. einer Tabelle, so wie du sagtest.

ID–|--Name–|-- MAC–|--IP–|-- Datum–|-- Zeit–|--Interface–|--Status

1 ------R1--------AA-----1.1----1.1.2008----12:00-----eth0/0-------up
2 ------R1--------BB-----1.2----1.1.2008----12:00-----eth0/1-------up
3 ------R1--------CC-----1.3----1.1.2008----12:00-----null---------null

4 ------R2--------DD-----3.1----1.1.2008----12:05-----eth0/0-------up
5 ------R2--------EE-----3.2----1.1.2008----12:05-----eth0/1-------up
6 ------R2--------FF-----3.3----1.1.2008----12:05-----null---------null

7 ------R1--------AA-----1.1----1.1.2008----13:00-----eth0/0-------up
8 ------R1--------BB-----1.2----1.1.2008----13:00-----eth0/1------down
9 ------R1--------CC-----1.3----1.1.2008----13:00-----null---------null

usw.

Jeppp…sieht eigentlich ganz gut aus :smile: Jetzt soll es möglich sein, entweder alle oder nur bestimmte (nur Interface und Status) Einträge zu R1 sich anzuschauen oder nur von bestimmten Tagen, Zeiten (z.B. 12:00 Uhr) oder Zeiträumen (z.B 12:00 - 16:00 Uhr).
Ein Highlight wäre eventuell noch, sich zwei Zeiten abzugreifen (z.B. 12 und 13 Uhr) um z.B. der Status der Interfaces anzeigen zu lassen.

Wäre das alles mit einer Tabelle möglich und könnte man das alles erstmal über SQL Selects probieren oder geht das ein oder andere dann nur mit PHP?

Vielen Dank

  • Ja, deine Anforderungen sind so ohne Probleme mit 1 Tabelle und SQL abzudecken. Vielleicht noch folgendes :

  • Datum und Zeit UNBEDINGT mit Typ DATE speichern

  • Je nach RDBMS (Oracle ?) mal Partitionierung in Betracht ziehen

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

  • Datum und Zeit UNBEDINGT mit Typ DATE speichern
  • Je nach RDBMS (Oracle ?) mal Partitionierung in Betracht
    ziehen

Datenbank wird mySQL werden!

Die Zeit auch vom Datentyp DATE???
Es gibt ja auch einen Typ DATETIME…wäre das vllt auch ne Möglichkeit, und zusätzlich könnte ich dabei noch ne Spalte sparen oder verkompliziert das die Sache noch unnötig für spätere Zugriff?

thx

Die Zeit auch vom Datentyp DATE???
Es gibt ja auch einen Typ DATETIME…wäre das vllt auch ne

thx

  • Ich bin Oracle-Mensch und kenne MySql eher wenig/gar nicht, also in diesem Fall DateTime , denke ich. Angenommen du möchtest eine Auswertung zwischen 01.01.2008 23.00 und 02.01.2008 04.00 Uhr machen, wirst du den Datumsteil ja auch brauchen, ein Punkt auf der Zeitachse ist nur mit Datum UND Zeit vollständig…

Gruss