Frage

In der Anwendung, die ich Gestaltung bin, habe ich mit einem Gerät zu kommunizieren und eine Geschichte von Datenablesungen in einer Datenbank zu speichern. Die Vorrichtung ist im wesentlichen ein Sensor, die Zahlen über die serielle Schnittstelle ausspuckt. Der Endbenutzer der Anwendung ist ein RubyOnRails Schnittstelle, die es dem Benutzer erlaubt, diese Daten zu lesen und das Gerät konfigurieren.

Ich frage mich, welche Art von Verbindung zwischen der Datenbank und dem Gerät, das Sie für diese Art von Setup empfehlen könnten.

Bis zu diesem Punkt hatte ich eine benutzerdefinierte Anwendung auf einem Host-Computer ausgeführt wird (ein Computer mit dem Gerät direkt über einen seriellen Port angeschlossen ist), die als Brücke zu einer MySQL-Datenbank dienen würde. Die Anwendung würde direkt an die MySQL-Datenbank verbinden und Abfragen ausführen. Es funktioniert ziemlich gut, aber ich bin nicht sicher, ob dies die beste Lösung ist.

Die einzige andere Alternative, die ich sehe, ist eine Zwischen Anwendung, die meine benutzerdefinierte Anwendung, anstatt direkt los mit der Datenbank verbinden kann. Dies könnte ein Teil der Hauptanwendung oder etwas getrennt sein. Wäre dies eine bessere Lösung sein?

Würden Sie einen anderen Ansatz?

Danke,

War es hilfreich?

Lösung

Ich habe eine ähnliche Struktur, obwohl ich meine Daten von einem Web-Service holen. Die Art, wie ich organisieren ist:

  1. Erstellen Sie Klassen in lib/imports, zB DailyDataImport, DailyDataSummarize (Sie die Hierarchie und Namen nach Ihrem Wunsch oder die Bereitschaft organisieren).
  2. Erstellen Sie eine rake Aufgabe unter einem neuen Namensraum, sagen import und fügen Sie Ihre Cron-Job abhängig Frequenz. Schauen Sie sich auf Cron in Ruby . Seine hilfreich.

Dies ermöglicht es mir, eine bessere Kontrolle darüber zu haben, was in meiner Datenbank geht.

Einige Fragen zu berücksichtigen:

  1. Welcher Zeitplan funktioniert das Gerät folgen die Daten zu bevölkern?
  2. Sie benötigen die Daten, wie sie ist, oder Sie wollen ein wenig Kontrolle über sie oder Sie müssen sie verarbeiten, wie zusammenfassend und Aggregieren etc.

Andere Tipps

MS SQL Server 2008 hat eine große Datensynchronisation zu unterstützen.

SQL Server 2008 Express ist kostenlos und kann als Replikations Teilnehmer handeln (aber nicht Verlag) für die Kunden.

Microsoft Sync Framework

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top