Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using local Database #1

Open
JayPi4c opened this issue Feb 13, 2020 · 1 comment
Open

Using local Database #1

JayPi4c opened this issue Feb 13, 2020 · 1 comment

Comments

@JayPi4c
Copy link
Owner

JayPi4c commented Feb 13, 2020

Eine lokale Datenbank würde sich anbieten, da sie nicht in der Größe begrenzt ist und man nicht von einer Netzwerkverbindung abhängt, während die Daten gesammelt werden. Ein Internetausfall, aus welchen Gründen auch immer, sorgt auf diese Weise nicht für einen Verlust von Daten über diesen Zeitraum.
Als schlanke und effizienten Datenbank, auch auf einem Arduino kommt SQLite in Frage. Eine entsprechenden Anbindung an NodeJS gibt es schon und wirkt auf den ersten Blick auch recht simpel.
Auch wirkt die Installation auf einem Raspberry Pi, auf dem letztendlich ja der Server laufen soll auch recht einfach.

@JayPi4c
Copy link
Owner Author

JayPi4c commented Feb 20, 2020

Auch wenn die Daten chronologisch in der Datenbank gespeichert werden, so ist es doch sinnvoll, die Daten sortiert aus der Datenbank zu entnehmen, da man nicht sicher sagen kann, das die Daten immer in der selben Reihenfolge aus der Datenbank entnommen werden.
Hierfür bietet sich eine geeignete SQL-Suche an:

SELECT * FROM sensorData WHERE timestamp < max AND timestamp > min ORDER BY timestamp ASC

Auch muss nicht immer die ganze Datenbank ausgelesen werden, sondern es kann auch nur der timestamp mit der Luftfeuchtigkeit oder entsprechend die Temperatur ausgelesen werden, was die Bearbeitung der Anfrage evtl. noch weiter beschleunigt, gerade wenn mehr als nur zwei Sensoren verwendet werden.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant