Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Excel-Historie -> InfluxDB importieren

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Excel-Historie -> InfluxDB importieren

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      moritzabcde last edited by

      Hallo!
      Ich bin sehr zufrieden auf die InfluxDB (OSS v1 auf raspbian bookworm) umgestiegen und möchte nun gerne alte Werte aus eine Excel-Tabelle dort importieren. Ich habe den aktuellen Bestand folgendermaßen exportiert:

      influx -username 'admin' -password '' -database 'iobroker' -execute 'SELECT * FROM "0_userdata.0.Zählerstände.Wasser"' -format csv > text3.csv
      

      Hier eine Beispielzeile:

      name,time,ack,from,q,value
      0_userdata.0.Zählerstände.Wasser,1743509614927000000,false,system.adapter.admin.0,0,52.4295
      

      Nun habe ich meine Excel-Tabelle so umgestaltet, dass ich folgendes CSV erhalte:

      0_userdata.0.Zählerstände.Wasser,time=1740787200000000000,ack=false,from=system.adapter.influxdb.0,q=0,value=45.6
      

      Das wäre der letzte Eintrag bevor ich InfluxDB zum Laufen gebracht habe.
      Wenn ich versuche den mit folgenden Kommando zu importieren, erhalte ich aber einen Fehler:

      influx -username 'admin' -password '' -database 'iobroker' -import -path wasser.csv 
      error: error parsing query: found 0, expected SELECT, DELETE, SHOW, CREATE, DROP, EXPLAIN, GRANT, REVOKE, ALTER, SET, KILL at line 1, char 1
      

      Also irgendwas mache ich beim Import falsch. Ich komme aber mit der Doku nicht so richtig weiter. Kann mich jemand bitte in die richtige Richtung stupsen? Das wäre ganz toll.

      Vielen Dank für eure Unterstützung!

      OliverIO 1 Reply Last reply Reply Quote 0
      • OliverIO
        OliverIO @moritzabcde last edited by OliverIO

        @moritzabcde

        Mit influx habe ich keine Ahnung, aber das

        0_userdata.0.Zählerstände.Wasser,time=1740787200000000000,ack=false,from=system.adapter.influxdb.0,q=0,value=45.6
        
        

        Ist kein csv
        Bei csv hat jeder Datensatz eine Zeile.
        In der ersten Zeile stehen die Spalten/Feldnamen
        Strings sind optimalerweise in Anführungsstriche,
        Die einzelnen Felder werden mit einem trennzeichen getrennt,
        Meist Komma oder Strichpunkt
        https://de.wikipedia.org/wiki/CSV_(Dateiformat)?wprov=sfti1#

        Die Anzahl der Felder müssen in jeder Zeile stimmen.

        Eigentlich so, wie du es in deiner Beispielzeile hast. Die Texte oder optional einfach jedes Feld in Anführungsstriche vermeidet Probleme.
        Je nachdem wie genau inFlux prüft, müssen die Datentypen einigermaßen passen. Flexible Systeme können automatisch konvertieren.

        M 1 Reply Last reply Reply Quote 0
        • M
          moritzabcde @OliverIO last edited by moritzabcde

          Hey @oliverio
          Danke für deine Antwort. Einen CSV-Import im klassischen Sinne kann Influx auch irgendwie nicht. Hab ich auch irgendwie nicht verstanden... Ich habe die (unsinnige) CSV-Endung vor allem, damit ich die Datei schnell wieder editieren kann.
          Aber wenn ich das richtig versteh, wird mit -import jede Zeile als Befehl für das Influx-CLI gesehen? Aber wie gesagt, mein Kopf hat gerade echte Probleme mit dem ganzen...
          EDIT: Viele Menschen nutzen auch Chronograph für ihren Import. Vielleicht sollte ich mich damit auseinander setzen. Ich dachte bloß, Daten in eine Datenbank per CLI importieren sollte doch eigentlich möglich sein.

          1 Reply Last reply Reply Quote 0
          • Marc Berg
            Marc Berg Most Active last edited by Marc Berg

            @moritzabcde sagte in Excel-Historie -> InfluxDB importieren:

            Nun habe ich meine Excel-Tabelle so umgestaltet, dass ich folgendes CSV erhalte:

            0_userdata.0.Zählerstände.Wasser,time=1740787200000000000,ack=false,from=system.adapter.influxdb.0,q=0,value=45.6
            

            Für den Import muss das „Line Protocol“ verwendet werden, der Aufbau ist dann so:

            "0_userdata.0.Zählerstände.Wasser" ack=false,from="system.adapter.influxdb.0",q=0,value=45.6 1740787200000000000
            
            M 1 Reply Last reply Reply Quote 0
            • M
              moritzabcde @Marc Berg last edited by

              @marc-berg
              Lieben Dank!
              Wenn ich im CLI den INSERT ausführe, dann erhalte ich keinen Fehler mehr. Aber wenn ich es mir mit SELECT anschaue, dann taucht der neue Wert nicht auf:

              > auth
              username: admin
              password: 
              > use iobroker
              Using database iobroker
              > insert "0_userdata.0.Zählerstände.Wasser" ack=false,from="system.adapter.influxdb.0",q=0,value=45.5667 1740787200000000000
              > select * from "0_userdata.0.Zählerstände.Wasser"
              name: 0_userdata.0.Zählerstände.Wasser
              time                ack   from                      q value
              ----                ---   ----                      - -----
              1741953633349000000 false system.adapter.influxdb.0 0 48.1998
              1743509614927000000 false system.adapter.admin.0    0 52.4295
              1746080661470000000 false system.adapter.admin.0    0 61.1488
              1748818854635000000 false system.adapter.admin.0    0 70.0016
              1751877437393000000 false system.adapter.influxdb.0 0 70.0016
              1754042794595000000 false system.adapter.admin.0    0 89.7821
              

              Woran könnte das liegen?

              Marc Berg 1 Reply Last reply Reply Quote 0
              • Marc Berg
                Marc Berg Most Active @moritzabcde last edited by

                @moritzabcde sagte in Excel-Historie -> InfluxDB importieren:

                Woran könnte das liegen?

                Ich würde trotzdem den import Befehl nutzen (mit den korrigierten Daten)

                influx -username 'admin' -password '' -database 'iobroker' -import -path wasser.csv 
                

                Wenn das auch nicht funktioniert, könnte es sein, dass du eine zu kurze Aufbewahrungsdauer drin hast, die deine älteren Daten gleich wieder löscht.

                Was sagt?

                SHOW RETENTION POLICIES ON iobroker
                
                M 1 Reply Last reply Reply Quote 0
                • M
                  moritzabcde @Marc Berg last edited by

                  @marc-berg
                  Hey Marc! Danke für deine Antwort.
                  Ich hab es hinbekommen. Hier die Importdatei:

                  # DML
                  # CONTEXT-DATABASE: iobroker
                  
                  0_userdata.0.Zählerstände.Wasser ack=false,from="system.adapter.influxdb.0",q=0,value=45.5677 1740787200000000000
                  

                  Hier die Kommandozeile:

                  influx -username 'admin' -password '' -import -path wasser.csv 
                  

                  Mensch, war das kompliziert. Vielen Dank für Eure Unterstützung!

                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post

                  Support us

                  ioBroker
                  Community Adapters
                  Donate
                  FAQ Cloud / IOT
                  HowTo: Node.js-Update
                  HowTo: Backup/Restore
                  Downloads
                  BLOG

                  858
                  Online

                  32.0k
                  Users

                  80.4k
                  Topics

                  1.3m
                  Posts

                  csv influxdb
                  3
                  7
                  94
                  Loading More Posts
                  • Oldest to Newest
                  • Newest to Oldest
                  • Most Votes
                  Reply
                  • Reply as topic
                  Log in to reply
                  Community
                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                  The ioBroker Community 2014-2023
                  logo