JayPi4c / InfoBot

Dieses Projekt soll es ermöglichen, Daten von Sensoren mit einem Arduino auszulesen und diese dann in Google sheets zu speichern, um dann beispielsweise mit einem Twitterbot diese Daten erreichbar zu machen.
0 stars 0 forks source link

Using local Database #1

Open JayPi4c opened 4 years ago

JayPi4c commented 4 years ago

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 commented 4 years ago

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.