2 x SQLite DB in übergeordnete MS SQL

Ditschelping

Neuer Benutzer
Beiträge
2
Hallo Forum,

ich habe eine Frage und zwar:

Ich habe zwei unterschiedliche Messgeräte die Sensordaten in der Produktion aufzeichnen und die Sensordaten in jeweils unterschiedliche SQLite Datenbanken schreiben. Als Primärschlüssel dient ein Zeitstempel. Es werden also beispielsweise minütlich geschrieben:

Zeit - Verbrauch el. Energie - Temperatur - Drehzahl

Dies liegt wie gesagt in einer SQLite.

Nun möchte ich eine übergeordnete Datenbank (MS SQL) einsetzen, die nun die gesamten Werte der beiden SQLite Datenbanken beinhaltet. Da die Messgeräte die Daten kontinuierlich aufzeichnen und diese auch kontinuierlich in die SQLite Datenbanken geschrieben werden, muss natürlich auch das befüllen der MS SQL Datenbank kontinuierlich erfolgen (quasi minütlich).

Aus meiner Sicht existieren nun unterschiedliche Lösungen, die ich hier gerne mit Euch diskutieren würde:

1. Umprogrammieren der Logger, so dass diese direkt in die MS SQL schreiben und nicht erst in eine SQLite Datenbank.
Vorteil: ich komme ohne SQLite aus

2. Programmierung eines SSIS Dienstes, der die 2 unterschiedlichen SQLite Datenbanken öffnet, die Daten umwandelt und in die MS SQL schreibt. Dies habe ich noch nie gemacht, hat jemand Erfahrung damit?

3. Einsatz von externen Tools, die die SQLite Datenbanken in eine MS SQL Datenbank umwandeln und diese permanent synchron halten, vermutlich die am wenigsten performante Lösung, oder?

4. Weitere Möglichkeiten??

Danke schon einmal und beste Grüße,

Dp
 
Werbung:
MSSQL arbeitet mit ODBC Treibern wenn es darum geht auf andere Datenbanken zuzugreifen, ich vermute mal es gibt auch einen für SQLite, so das auch MSSQL auf die Live-Daten aus SQLite zugreifen können müsste.

Es stellen sich Fragen:
Wo sollen die Daten am Ende liegen?
Was passiert mit den Daten / Wann werden sie verworfen?
Müssen die Daten übernommen werden und wenn ja warum gleich jede Minute?
Welche MSSQL Version kommt zum Einsatz? (z.B. kannste SSIS unter Express vergessen, Datenbankgröße wäre dann auch relevant)
 
Also:
PostgreSQL sieht interessant aus, leider ist hier in diesem Fall die MS SQL Variante bereits vorgegeben. Ansonsten wäre das evtl. auch eine gute Möglichkeit.

Die hier zum Einsatz kommende MS SQL Version ist Server 2008, aber auch neuere Versionen wären denkbar.

ODBC Treiber existieren wohl für die SQLite Variante, habe diese aber noch nicht selbst verwendet, muss ich mal genauer anschauen.

Die Daten sollen später auf einem Netzwerkserver in der gemeinsamen Datenbank liegen.

Die Messdaten werden im wesentlichen zu Protokollierungs- und Visualisierungszwecken aufgezeichnet. Es sollen daraus dann Reports und Live Visualisierungen abrufbar sein. Also beispielsweise eine Anzeige, die den Energieverbrauch in einem Diagramm visualisiert. Oder es soll bei Über- bzw. Unterschreiten von Grenzwerten eine Meldung herausgegeben werden. Etc.

Eine Übernahme der Daten wäre schön. Optimal wäre eine reduzierte Datenübernahme, also so dass nicht alle Tabellen-Zeilen übernommen werden, sondern beispielsweise der Mittelwert über einen gewissen Zeitraum gebildet wird und nur dieser Mittelwert in die MS SQL übernommen wird.
 
Werbung:
Grundsätzlich dürfte es kein Problem sein die original Messwerte lange vor zu halten, allerdings wird das hat irgendwann viel daher sollte man sich das vorher überlegen. Auch würde ich die Messwerte dann aus der SQLite DB löschen und final nach MSSQL übernehmen. Und das vielleicht nicht minütlich sondern in größeren Schritten, das musst du aber testen. Vielleicht kann auch SQLite direkt in MSSQL schreiben?
 
Zurück
Oben