LabVIEWForum.de
SQLite DB in RAM - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenbank & File IO (/Forum-Datenbank-File-IO)
+---- Thema: SQLite DB in RAM (/Thread-SQLite-DB-in-RAM)



SQLite DB in RAM - wowbagger - 28.11.2011 22:12

Hi alle zusammen,

ich entwickele zur Zeit ein Simulationsprogramm mit 10 Main VI's (laufen immer) und ca 30 SubVI's (PopUp Fenster). Für die Kommunikation zwischen all den VI's verwende ich SQLite (SQLite API for LabVIEW), es ist 1 DB (mit 3 Tabellen) und ist ca.30KB groß. Am Anfang war alles ok, nun bekomme ich Probleme mit der Loopzeit (schwankt stark, bis zur 50%).
Ich vermute das es mit Lesen(3-5ms)/Schreiben(20-25ms) Zeit zu tun hat. Da SQLite DB auf der Festplatte ist und wenn 10 oder mehr VI's alle 100ms darauf Zugriff haben, kommt halt die Festplatte an ihre physikalische Grenze. So nun meine Frage, kann mir jemand ein Tipp geben wie ich die SQLite DB in RAM auslagere, d.h. in RAM aufmache und dort die ganze zeit behalte? Ich hoffe Blush dass ich dann meine Zugriffszeiten minimalisiert werden da die Festplatte wegfehlt. Ich habe es schon mit öffnen aber nicht schließen von DB, und dann über Referenzübergabe versucht. Aber die LED der Festplatte leuchtet immer noch so als ob der DB auf Festplatte gespeichert wird.

Oder gibt es da noch andere Möglichkeiten außer SQLite? Ich bin da füer alles Vorschläge offen Big Grin

Danke im Vorraus

Guru1

PS: Ich nutze LV2010


RE: SQLite DB in RAM - wowbagger - 28.11.2011 23:16

Vielleicht war meine Frage über andere Möglichkeiten zu ungenau.
Ich meine eigentlich irgend eine andere DB die in RAM ist und nicht ständig auf die Festplatte zugreift. Oder eine andere Kommunikations Möglichkeit die mit ca. 30KB Datengröße unter 5-10 ms klar kommt...


RE: SQLite DB in RAM - jg - 29.11.2011 08:07

(28.11.2011 22:12 )wowbagger schrieb:  Oder gibt es da noch andere Möglichkeiten außer SQLite? Ich bin da füer alles Vorschläge offen Big Grin
Ich empfehle FGVs für die Kommunikation zwischen deinen VIs. Oder Queues Oder Notifiers.

Gruß, Jens


RE: SQLite DB in RAM - Dennis.Moser - 29.11.2011 09:59

Du solltest auch mit berücksichtigen, das die DB (intern) bei INSERT u. DELETE Zellen und Zeilen kurzzeitig für andere Tasks "sperrt".
UPDATE bewirkt eine Zellsperrung....

D.h. je nachdem wie du speicherst und liest (im ms Bereich), kann es auch ein Designfehler sein... von daher ist derr Hinweis von Jens schon die bessere Variante Big Grin