Vielleicht kannst Du Deine Speicherung auch der auf dem Gerät angleichen. Wenn ich mir die Struktur aus dem OP ansehe, habe ich da so Vermutungen:
- F_PARAMETER_ID ID /* ID = INTEGER NOT NULL */,
Wie groß wird diese ID maximal? Wenn es z.b. so etwas wie max. 127 oder 255 wäre, könnte man das in einem Nibble, Byte oder Word zusammen mit z.b. POWER_STATE speichern
- F_TIMESTAMP_UNIX INTEGER_NORMAL /* INTEGER_NORMAL = INTEGER NOT NULL */,
Wenn man die Basis des Timestamp (den Offset 0) in die nähere Vergangenheit setzt, kommt man auch mit weniger Platz aus.
- F_POWER_STATE INTEGER_NORMAL /* INTEGER_NORMAL = INTEGER NOT NULL */,
Siehe Anmerkung zu Parameter-ID
- F_VALUE STRING10 /* STRING10 = VARCHAR(10) NOT NULL */
Sind das wirklich individuelle Werte oder sind das Fixtexte? Je nach Anzahl der möglichen Fixtexte könnte man das dann als Index auf ein konstantes Fixtext-Array bzw. eine entsprechende normalisierte Fixtext-Tabelle verkleinern.
Nachteil wäre die Rechnerei die Du beim Auswerten hättest. Immer das Selbe: Platzersparnis <> Performance.