strips Skrevet 17. januar 2020 Skrevet 17. januar 2020 Jeg har begynt å logge ALT til influxdb for å kunne grafe litt i Grafana. Nå benytter jeg Reference ID på enheten for å identifisere den. Den er egentlig litt dum å bruke da den blir byttet ut hvis jeg legger til en enhet på nytt. Hva er det beste / smarteste å bruke. Ideelt sett skulle jeg gjerne hatt ett felt man kan selv redigere men gjerne kan være forhåndsutfylt. De feltene jeg kan se er Reference ID - ikke aktuell da den ikke kan endres Device Name - absolutt ett alternativ hvis jeg klarer å bli enig med meg selv om en fast standard og alle må ha unike navn. Her er jeg i konflikt mellom å ha et kort og enkelt navn og langd beskrivende navn men unikt. Code - En mulighet. Er det mulig å endre denne på alle type enheter (utenom enheter som bruker dette som intern-adressering). Address - Igjen en mulighet men tipper noen type enheter benytter denne å lagre sin ID. Ser nå at Z-Wave får populert Code og Address. Usikker på om det var sånn før og men tipper det kom med siste beta Z-wave-plugin. De fjerner z-wave-databasen og har alle instillinger sammen med enheten. Så de utgår. Da står jeg kun igjen med Device name. Siter
psv021 Skrevet 17. januar 2020 Skrevet 17. januar 2020 Har akkurat samme utfordring, uten at jeg har en god løsning. Jeg har tenkt på å ha virtuelle devicer som proxy. Den virtuelle devicen følger verdien til den reelle devicen, men et er virtuell device som trackes i influxDB. Da kan reell device byttes ut, uten at det påvirker dataene i influxDB. Teoretisk sett, for man vil gjerne kunne skille mellom to ulike sensorer osv. Foreløpig har jeg ikke klart å finne motivasjonen til å lage hundrevis av virtuelle devicer, og jeg er ikke sikker på om det er beste løsning heller. Siter
strips Skrevet 17. januar 2020 Forfatter Skrevet 17. januar 2020 Haha, det er en vei jeg ikke ønsker å gå. Hvis man kunne scripte 95% av den løsningen... Jeg kan ikke influxdb godt nok men lurer på å dra dette inn i en relasjonsdatabase. Der er det en lek i parken å lage en mappingtabell for enhetene. Så flytter jeg hele problemstillingen. Men en relasjonsdatabase trenger en ok datamodell. Er her influxdb er genialt. Bare dytte ting inn og så har du det der Jeg bruker et vb-script som dumper samtlige enheter ut til influxdb. En mulighet er å ha en fil med mapping til ønskede navn/ID. Ganske lett med en JSON-fil. Siter
psv021 Skrevet 17. januar 2020 Skrevet 17. januar 2020 Ja, skulle være mulig å legge på et relasjonslag. Jeg bruker også et vb-script til dette. Det skulle vel også være mulig å legge relasjonene inne i vb-scriptet. Jeg kan fint lite om VB, men finnes dictionaries som i f.eks. Python? (Evt flytte det til en yaml eller json på utsiden som du skriver.) Prinsippet blir vel det samme da: Ikke relatere direkte til deviceID i influxDB (relasjon inne i HS3 via virtuelle devicer, eller i VB, eller midt i mellom i en JSON eller andre lure(re) løsninger.) Siter
strips Skrevet 17. januar 2020 Forfatter Skrevet 17. januar 2020 Har tenkt litt mer. Ulempen med å legge på en ny ID før man persisterer er hvis man glemmer en verdi eller gjør feil så blir det lagret feil. Hvis man likevel skal ha en mapping så er det bedre å gjøre den etter persisteringen. Jeg kjenner jeg nærmer meg en Oracle Database ? Kanskje å skyte spurv med kanon men det er i hvert fell noe jeg kan. Så kan man alltids bytte ut en SQL-database med noe annet uten for mye styr senere. Er litt for enkelt å falle tilbake på det man kan. Lærer ikke like mye av det. Siter
Anbefalte innlegg
Bli med i samtalen
Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.