Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Off Topic
  4. InfluxDB
  5. inflxudb kurze Speicherdauer einstellen

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.0k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

inflxudb kurze Speicherdauer einstellen

inflxudb kurze Speicherdauer einstellen

Scheduled Pinned Locked Moved InfluxDB
26 Posts 6 Posters 3.2k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C cbrocker

    @spacerx
    ich lese gerade in der influxdb Doku folgendes:

    A database can have multiple retention policies with one set as default. If no retention policy is specified in a query or write request, InfluxDB uses the default retention policy for the specified database. Use the influx CLI or the InfluxDB API to set a retention policy as the default retention policy for a database.

    Dann könnte es doch möglich sein, unterschiedl. Aufbewahrungsrichtlinien einzustellen.
    Das heißt, rumtüfteln...

    mickymM Online
    mickymM Online
    mickym
    Most Active
    wrote on last edited by mickym
    #5

    @cbrocker Nein in der Regel lässt Du iobroker kurzfristig sammeln - das Konsolidieren in langfristige Buckets solltest Du selbst innerhalb von influx machen. Die Vorhaltedauer, die Du im Adapter einstellst wird automatisch auf die Retention Time im Bucket übertragen.

    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

    C 1 Reply Last reply
    0
    • mickymM mickym

      @cbrocker Nein in der Regel lässt Du iobroker kurzfristig sammeln - das Konsolidieren in langfristige Buckets solltest Du selbst innerhalb von influx machen. Die Vorhaltedauer, die Du im Adapter einstellst wird automatisch auf die Retention Time im Bucket übertragen.

      C Offline
      C Offline
      cbrocker
      wrote on last edited by
      #6

      @mickym
      Hey, was meinst du mit, in iobroker kurzfristig sammeln?

      Diese Einstellung im Adapter ist letzten Endes die Retention Policy in influxdb?
      e4249aab-1f2f-439a-bd6b-e6d8f8e92d2f-grafik.png

      Proxmox Cluster mit ioBroker, Wireguard, HomeAssistant (Testsystem), paperlessNGX, MariaDB, PiHole, Grafana, InfluxDB, 1 x BKW 600 Wp, 2 x BKW 400 Wp, 2 x SolarFlow 800 Pro mit 11,52 kWh Akku und 3,48 kWp, OpenDTU, AhoyDTU, HmIP, Shellys, AVM LAN/WLAN

      mickymM 1 Reply Last reply
      0
      • C cbrocker

        @mickym
        Hey, was meinst du mit, in iobroker kurzfristig sammeln?

        Diese Einstellung im Adapter ist letzten Endes die Retention Policy in influxdb?
        e4249aab-1f2f-439a-bd6b-e6d8f8e92d2f-grafik.png

        mickymM Online
        mickymM Online
        mickym
        Most Active
        wrote on last edited by mickym
        #7

        @cbrocker Ja - für das iobroker bucket halt.

        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

        C 1 Reply Last reply
        0
        • mickymM mickym

          @cbrocker Ja - für das iobroker bucket halt.

          C Offline
          C Offline
          cbrocker
          wrote on last edited by
          #8

          @mickym ja, verstehe. ok, danke. Ich lese mich gerade bißchen durch die Doku und frage ChatGPT um Rat 🙂

          Proxmox Cluster mit ioBroker, Wireguard, HomeAssistant (Testsystem), paperlessNGX, MariaDB, PiHole, Grafana, InfluxDB, 1 x BKW 600 Wp, 2 x BKW 400 Wp, 2 x SolarFlow 800 Pro mit 11,52 kWh Akku und 3,48 kWp, OpenDTU, AhoyDTU, HmIP, Shellys, AVM LAN/WLAN

          mickymM 1 Reply Last reply
          0
          • C cbrocker

            @mickym ja, verstehe. ok, danke. Ich lese mich gerade bißchen durch die Doku und frage ChatGPT um Rat 🙂

            mickymM Online
            mickymM Online
            mickym
            Most Active
            wrote on last edited by mickym
            #9

            @cbrocker Ja ich habs nur mal im Test gehabt und hab bisschen gelernt - und ein paar Kurse der univeristy durchgemacht - habs dann erst mal wieder auf Eis gelegt, weil ich nicht der große Datensammler bin.

            Aber immerhin - 3 Kurse habe ich durchgemacht. 😉

            e8cb8984-ed17-450a-95b8-8c39e51061a9-image.png

            https://university.influxdata.com/

            Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

            C 1 Reply Last reply
            1
            • mickymM mickym

              @cbrocker Ja ich habs nur mal im Test gehabt und hab bisschen gelernt - und ein paar Kurse der univeristy durchgemacht - habs dann erst mal wieder auf Eis gelegt, weil ich nicht der große Datensammler bin.

              Aber immerhin - 3 Kurse habe ich durchgemacht. 😉

              e8cb8984-ed17-450a-95b8-8c39e51061a9-image.png

              https://university.influxdata.com/

              C Offline
              C Offline
              cbrocker
              wrote on last edited by
              #10

              @mickym wow, da hast dich echt reingekniet, da ja auch alles auf englisch ist.
              Ja, so ein SmartHome System erfordert dann Kenntnisse in 30 weitere Dinge/Programmiersprachen/Datenbanken usw.
              Aber das macht echt Spaß 🙂

              Proxmox Cluster mit ioBroker, Wireguard, HomeAssistant (Testsystem), paperlessNGX, MariaDB, PiHole, Grafana, InfluxDB, 1 x BKW 600 Wp, 2 x BKW 400 Wp, 2 x SolarFlow 800 Pro mit 11,52 kWh Akku und 3,48 kWp, OpenDTU, AhoyDTU, HmIP, Shellys, AVM LAN/WLAN

              mickymM 1 Reply Last reply
              0
              • C cbrocker

                @mickym wow, da hast dich echt reingekniet, da ja auch alles auf englisch ist.
                Ja, so ein SmartHome System erfordert dann Kenntnisse in 30 weitere Dinge/Programmiersprachen/Datenbanken usw.
                Aber das macht echt Spaß 🙂

                mickymM Online
                mickymM Online
                mickym
                Most Active
                wrote on last edited by mickym
                #11

                @cbrocker Ja aber wieder viel vergessen - da gibts Leute, die hier viel fitter sind. Aber dieser Grundlagen oder dass die Retention Time des Adapters mit dem des iobroker buckets übereinstimmt, habe ich halt selbst schon festgestellt. 😉

                Und das Telegraf ist wieder ein eigenes System mit dem Du direkt Dinge überwachen kannst, das habe ich mal auf meinem Windows und auf dem Raspberry ausprobiert. Aber es sind richtige Agenten die auf den Zielsystemen laufen. Der Vorteil ist, dass Du damit Daten systemübergreifend sammeln kannst. Ist aber auch eine Wissenschaft für sich. Manchmal kniet man sich bissi rein und dann lässt man es wieder. In Teilbereichen kannst Du damit auch iobroker Adapter ersetzen. Aber manchmal führen zuviele Wege nach Rom. 😉

                Also ich bin da kein Fachmann drin, auch wenn ich Dir glaube für Deine Frage eine fachlich richtige Auskunft gegeben habe.

                Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                C 1 Reply Last reply
                1
                • mickymM mickym

                  @cbrocker Ja aber wieder viel vergessen - da gibts Leute, die hier viel fitter sind. Aber dieser Grundlagen oder dass die Retention Time des Adapters mit dem des iobroker buckets übereinstimmt, habe ich halt selbst schon festgestellt. 😉

                  Und das Telegraf ist wieder ein eigenes System mit dem Du direkt Dinge überwachen kannst, das habe ich mal auf meinem Windows und auf dem Raspberry ausprobiert. Aber es sind richtige Agenten die auf den Zielsystemen laufen. Der Vorteil ist, dass Du damit Daten systemübergreifend sammeln kannst. Ist aber auch eine Wissenschaft für sich. Manchmal kniet man sich bissi rein und dann lässt man es wieder. In Teilbereichen kannst Du damit auch iobroker Adapter ersetzen. Aber manchmal führen zuviele Wege nach Rom. 😉

                  Also ich bin da kein Fachmann drin, auch wenn ich Dir glaube für Deine Frage eine fachlich richtige Auskunft gegeben habe.

                  C Offline
                  C Offline
                  cbrocker
                  wrote on last edited by
                  #12

                  @mickym ja, das hat mir schon weitergeholfen von dir.

                  Stimmt, mit Telegraf und Chronograph usw. könnte man weitermachen...
                  Aber ich denke, für das eigene SmartHome braucht man so Zeugs nicht wirklich

                  Proxmox Cluster mit ioBroker, Wireguard, HomeAssistant (Testsystem), paperlessNGX, MariaDB, PiHole, Grafana, InfluxDB, 1 x BKW 600 Wp, 2 x BKW 400 Wp, 2 x SolarFlow 800 Pro mit 11,52 kWh Akku und 3,48 kWp, OpenDTU, AhoyDTU, HmIP, Shellys, AVM LAN/WLAN

                  1 Reply Last reply
                  0
                  • Marc BergM Offline
                    Marc BergM Offline
                    Marc Berg
                    Most Active
                    wrote on last edited by Marc Berg
                    #13

                    @cbrocker sagte in inflxudb kurze Speicherdauer einstellen:

                    ich lese gerade in der influxdb Doku folgendes:

                    A database can have multiple retention policies with one set as default. If no retention policy is specified in a query or write request, InfluxDB uses the default retention policy for the specified database. Use the influx CLI or the InfluxDB API to set a retention policy as the default retention policy for a database.

                    Dann könnte es doch möglich sein, unterschiedl. Aufbewahrungsrichtlinien einzustellen.

                    Das gibt es in der Influxdb 2.x nicht mehr. Ein Bucket = eine Retention Time.

                    NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

                    Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                    Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                    1 Reply Last reply
                    1
                    • ? Offline
                      ? Offline
                      A Former User
                      wrote on last edited by
                      #14

                      @cbrocker sagte in inflxudb kurze Speicherdauer einstellen:

                      @mickym ja, das hat mir schon weitergeholfen von dir.

                      Stimmt, mit Telegraf und Chronograph usw. könnte man weitermachen...
                      Aber ich denke, für das eigene SmartHome braucht man so Zeugs nicht wirklich

                      Moin,

                      ich nutze ein Bucket für den ioBroker in den alle DP geschrieben werden, dieser hat nur eine geringe Halbwertzeit von 15 Tagen 🙂
                      Anschließend mache ich innerhalb von influxDB Downsampling der Daten aus dem ioBroker - Bucket in ein Bucket, das die Daten für einen Monat hält, wo ich dann wieder ein Downsampling mache und in ein Quartals - Bucket schreibe und dann nochmal aus dem Quartals - Bucket, in das Jahres - Bucket.

                      Ist am Anfang viel Arbeit, aber ich denke, wenn ich damit fertig bin, habe ich meine Daten gut im Griff und kann dann auch schnell Diagramme auf Basis der Buckets machen.

                      Das ganze läuft aktuell noch alles in einer Testphase, da ich noch auf meine endgültige Hardware warte, die leider erst Ende Mai, Anfang Juni kommt, da es ein Kickstarter Deal ist 🙃

                      VG
                      Bernd

                      C 1 Reply Last reply
                      1
                      • ? A Former User

                        @cbrocker sagte in inflxudb kurze Speicherdauer einstellen:

                        @mickym ja, das hat mir schon weitergeholfen von dir.

                        Stimmt, mit Telegraf und Chronograph usw. könnte man weitermachen...
                        Aber ich denke, für das eigene SmartHome braucht man so Zeugs nicht wirklich

                        Moin,

                        ich nutze ein Bucket für den ioBroker in den alle DP geschrieben werden, dieser hat nur eine geringe Halbwertzeit von 15 Tagen 🙂
                        Anschließend mache ich innerhalb von influxDB Downsampling der Daten aus dem ioBroker - Bucket in ein Bucket, das die Daten für einen Monat hält, wo ich dann wieder ein Downsampling mache und in ein Quartals - Bucket schreibe und dann nochmal aus dem Quartals - Bucket, in das Jahres - Bucket.

                        Ist am Anfang viel Arbeit, aber ich denke, wenn ich damit fertig bin, habe ich meine Daten gut im Griff und kann dann auch schnell Diagramme auf Basis der Buckets machen.

                        Das ganze läuft aktuell noch alles in einer Testphase, da ich noch auf meine endgültige Hardware warte, die leider erst Ende Mai, Anfang Juni kommt, da es ein Kickstarter Deal ist 🙃

                        VG
                        Bernd

                        C Offline
                        C Offline
                        cbrocker
                        wrote on last edited by
                        #15

                        @dp20eic Hey, das ist ein interessanter Ansatz.
                        Machst du dann Grafana Diagramme nur mit den Daten aus dem Jahres-Bucket oder auch von den anderen?

                        Sprich, deine längste Aufbewahrungsdauer ist aber 1 Jahr?

                        Was für ne Hardware hast du bestellt?

                        Proxmox Cluster mit ioBroker, Wireguard, HomeAssistant (Testsystem), paperlessNGX, MariaDB, PiHole, Grafana, InfluxDB, 1 x BKW 600 Wp, 2 x BKW 400 Wp, 2 x SolarFlow 800 Pro mit 11,52 kWh Akku und 3,48 kWp, OpenDTU, AhoyDTU, HmIP, Shellys, AVM LAN/WLAN

                        ? 1 Reply Last reply
                        0
                        • C cbrocker

                          @spacerx
                          ich lese gerade in der influxdb Doku folgendes:

                          A database can have multiple retention policies with one set as default. If no retention policy is specified in a query or write request, InfluxDB uses the default retention policy for the specified database. Use the influx CLI or the InfluxDB API to set a retention policy as the default retention policy for a database.

                          Dann könnte es doch möglich sein, unterschiedl. Aufbewahrungsrichtlinien einzustellen.
                          Das heißt, rumtüfteln...

                          S Offline
                          S Offline
                          SpacerX
                          wrote on last edited by SpacerX
                          #16

                          @cbrocker Hier mal mein Beitrag zum Thema Retentionpolice.https://forum.iobroker.net/topic/58462/datenaufzeichnung-retention-influxdb-2-0/16

                          Ich hab das für mich so gelöst das ich im ioBroker Bucket eine Aufbewahrungzeit von 3 Monaten eingestellt habe.
                          Alles was ich länger haben möchte, wird mit Downsampling in andere Buckets geschrieben.

                          DS720|Nuc8i3BEH|Proxmox|RaspberryMatic|ioBroker|influxDB2|Grafana

                          C 1 Reply Last reply
                          0
                          • S SpacerX

                            @cbrocker Hier mal mein Beitrag zum Thema Retentionpolice.https://forum.iobroker.net/topic/58462/datenaufzeichnung-retention-influxdb-2-0/16

                            Ich hab das für mich so gelöst das ich im ioBroker Bucket eine Aufbewahrungzeit von 3 Monaten eingestellt habe.
                            Alles was ich länger haben möchte, wird mit Downsampling in andere Buckets geschrieben.

                            C Offline
                            C Offline
                            cbrocker
                            wrote on last edited by
                            #17

                            @spacerx danke für die Infos und Links. Das ist natürlich so ideal. Muß ich mir tatsächlich genauer anschauen, genauso wäre es für mich passend.
                            Wird immer umfangreicher, mit was man sich beschäftigen kann 🙂

                            Proxmox Cluster mit ioBroker, Wireguard, HomeAssistant (Testsystem), paperlessNGX, MariaDB, PiHole, Grafana, InfluxDB, 1 x BKW 600 Wp, 2 x BKW 400 Wp, 2 x SolarFlow 800 Pro mit 11,52 kWh Akku und 3,48 kWp, OpenDTU, AhoyDTU, HmIP, Shellys, AVM LAN/WLAN

                            1 Reply Last reply
                            0
                            • C cbrocker

                              @dp20eic Hey, das ist ein interessanter Ansatz.
                              Machst du dann Grafana Diagramme nur mit den Daten aus dem Jahres-Bucket oder auch von den anderen?

                              Sprich, deine längste Aufbewahrungsdauer ist aber 1 Jahr?

                              Was für ne Hardware hast du bestellt?

                              ? Offline
                              ? Offline
                              A Former User
                              wrote on last edited by
                              #18

                              @cbrocker sagte in inflxudb kurze Speicherdauer einstellen:

                              @dp20eic Hey, das ist ein interessanter Ansatz.

                              Moin,

                              hab den Post von @SpacerX nicht weiter verfolgt, ich lasse alle Datenpunkte in mein iobroker Bucket schreiben, also alles ob nun sekündlich oder nur alle paar Stunden ein Wert kommt.

                              Machst du dann Grafana Diagramme nur mit den Daten aus dem Jahres-Bucket oder auch von den anderen?

                              Ich mache auch von den anderen Buckets Diagrammen, z.B. Spritpreise bleiben nur im iobroker Bucket für 15 Tage, daraus baue ich mir die Anzeige für den Tag, da mir eine Aggregierung auf Tag nicht für den aktuell günstigsten Preis hilft 😉
                              Bei anderen, wie z. B. Strom, Gas und Wasser ist es auch unterschiedlich, Strom will ich den aktuellen Verbrauch sehen → 15 Tages Bucket, dann aber auch wie war der Verbrauch gestern über den Tag im Vergleich zum Vortag oder Woche zur Vorwoche nehme ich dann aber nicht mehr die Daten aus dem 15 Tages Bucket, sondern schon aggregierte Werte aus einem anderen Bucket. Beim Wasser ist es dann nicht der aktuelle Wert der mich interessiert, sondern vielleicht nur noch der Verbrauch im Monat oder Quartal.

                              Ich stelle ich mir die Frage, welche Werte brauche ich länger als die eingestellten 15 Tage, z. B. Stromverbrauch total, möchte ich mindestens zwei Jahre zurückverfolgen, also aggregiere ich täglich, kurz nach Mitternacht, die Werte des Datenpunkts und schreibe ihn in ein eigenes Bucket, hier speziell noch eins nur für Strom, mit eigener Org. und eigenem Token.

                              import "timezone"
                              
                              option task = {name: "Downsampling Vb_Stromzaehler", cron: "15 0 * * *"}
                              
                              option location = timezone.location(name: "Europe/Berlin")
                              
                              data =
                                  from(bucket: "iobroker_strom")
                                      |> range(start: -2mo, stop: now())
                                      |> filter(fn: (r) => r["_measurement"] == "sonoff.0.DVES_8AA766.SENSOR.SML.total_kwh")
                                      |> filter(fn: (r) => r["_field"] == "value")
                                      // Spalten "_start", "_stop", "ack", "from", "q", ausschliessen
                                      |> drop(columns: ["ack", "q", "from"])
                              
                              data
                                  |> aggregateWindow(every: 1d, fn: last, timeSrc: "_time")
                                  // In Wh ohne Komma
                                  |> toInt()
                                  |> set(key: "_measurement", value: "Hauptzaehler")
                                  // Use the to() function to validate that the results look correct. This is optional.
                                  |> to(bucket: "Stromverbrauch", org: "iobroker_strom")
                              

                              398b81ff-653c-4ec4-85ed-1b411a16e0bc-grafik.png

                              Aktuell erstelle ich mir eine Liste mit den DP, die ich archiviere, damit ich mir einen Überblick verschaffen kann, wie ich welchen Wert brauche
                              Beispiel:

                              dp 15 T Monatswert Quartalswert Jahreswert für immer
                              sonoff.0.DVES_8AA766.SENSOR.SML.total_kwh X X X
                              tankerkoemig.0.e10 X X

                              Sprich, deine längste Aufbewahrungsdauer ist aber 1 Jahr?

                              Aktuell Ja, ich habe aber auch erst z. B. mit Strom dieses Jahr im Jan. angefangen, ich beobachte mal wie was anwächst, das ist ja auch ein Vorteil des Downsampling, dass die Menge der gespeicherten Daten geringer wird.

                              Was für ne Hardware hast du bestellt?

                              Zwei davon https://www.kickstarter.com/projects/storaxa/fully-customizable-home-cloud-storage-with-remote-access-nas?lang=de
                              56b22a31-f356-4abf-b9ba-ae43770b1946-grafik.png
                              Mit je 64 GB Memory, aber noch ohne M.2 oder SSD, da nutze ich das Vorhandene aus meiner DS716 + DX510, wenn aber die Preise für M.2 weiter so attraktiv sind, werde ich mir da wohl noch die ein oder andere holen 🙂

                              VG
                              Bernd

                              C 2 Replies Last reply
                              1
                              • ? A Former User

                                @cbrocker sagte in inflxudb kurze Speicherdauer einstellen:

                                @dp20eic Hey, das ist ein interessanter Ansatz.

                                Moin,

                                hab den Post von @SpacerX nicht weiter verfolgt, ich lasse alle Datenpunkte in mein iobroker Bucket schreiben, also alles ob nun sekündlich oder nur alle paar Stunden ein Wert kommt.

                                Machst du dann Grafana Diagramme nur mit den Daten aus dem Jahres-Bucket oder auch von den anderen?

                                Ich mache auch von den anderen Buckets Diagrammen, z.B. Spritpreise bleiben nur im iobroker Bucket für 15 Tage, daraus baue ich mir die Anzeige für den Tag, da mir eine Aggregierung auf Tag nicht für den aktuell günstigsten Preis hilft 😉
                                Bei anderen, wie z. B. Strom, Gas und Wasser ist es auch unterschiedlich, Strom will ich den aktuellen Verbrauch sehen → 15 Tages Bucket, dann aber auch wie war der Verbrauch gestern über den Tag im Vergleich zum Vortag oder Woche zur Vorwoche nehme ich dann aber nicht mehr die Daten aus dem 15 Tages Bucket, sondern schon aggregierte Werte aus einem anderen Bucket. Beim Wasser ist es dann nicht der aktuelle Wert der mich interessiert, sondern vielleicht nur noch der Verbrauch im Monat oder Quartal.

                                Ich stelle ich mir die Frage, welche Werte brauche ich länger als die eingestellten 15 Tage, z. B. Stromverbrauch total, möchte ich mindestens zwei Jahre zurückverfolgen, also aggregiere ich täglich, kurz nach Mitternacht, die Werte des Datenpunkts und schreibe ihn in ein eigenes Bucket, hier speziell noch eins nur für Strom, mit eigener Org. und eigenem Token.

                                import "timezone"
                                
                                option task = {name: "Downsampling Vb_Stromzaehler", cron: "15 0 * * *"}
                                
                                option location = timezone.location(name: "Europe/Berlin")
                                
                                data =
                                    from(bucket: "iobroker_strom")
                                        |> range(start: -2mo, stop: now())
                                        |> filter(fn: (r) => r["_measurement"] == "sonoff.0.DVES_8AA766.SENSOR.SML.total_kwh")
                                        |> filter(fn: (r) => r["_field"] == "value")
                                        // Spalten "_start", "_stop", "ack", "from", "q", ausschliessen
                                        |> drop(columns: ["ack", "q", "from"])
                                
                                data
                                    |> aggregateWindow(every: 1d, fn: last, timeSrc: "_time")
                                    // In Wh ohne Komma
                                    |> toInt()
                                    |> set(key: "_measurement", value: "Hauptzaehler")
                                    // Use the to() function to validate that the results look correct. This is optional.
                                    |> to(bucket: "Stromverbrauch", org: "iobroker_strom")
                                

                                398b81ff-653c-4ec4-85ed-1b411a16e0bc-grafik.png

                                Aktuell erstelle ich mir eine Liste mit den DP, die ich archiviere, damit ich mir einen Überblick verschaffen kann, wie ich welchen Wert brauche
                                Beispiel:

                                dp 15 T Monatswert Quartalswert Jahreswert für immer
                                sonoff.0.DVES_8AA766.SENSOR.SML.total_kwh X X X
                                tankerkoemig.0.e10 X X

                                Sprich, deine längste Aufbewahrungsdauer ist aber 1 Jahr?

                                Aktuell Ja, ich habe aber auch erst z. B. mit Strom dieses Jahr im Jan. angefangen, ich beobachte mal wie was anwächst, das ist ja auch ein Vorteil des Downsampling, dass die Menge der gespeicherten Daten geringer wird.

                                Was für ne Hardware hast du bestellt?

                                Zwei davon https://www.kickstarter.com/projects/storaxa/fully-customizable-home-cloud-storage-with-remote-access-nas?lang=de
                                56b22a31-f356-4abf-b9ba-ae43770b1946-grafik.png
                                Mit je 64 GB Memory, aber noch ohne M.2 oder SSD, da nutze ich das Vorhandene aus meiner DS716 + DX510, wenn aber die Preise für M.2 weiter so attraktiv sind, werde ich mir da wohl noch die ein oder andere holen 🙂

                                VG
                                Bernd

                                C Offline
                                C Offline
                                cbrocker
                                wrote on last edited by
                                #19

                                @dp20eic Hey Bernd,
                                vielen Dank für die ausführlichen Infos. Sehr interessant und hilft mir bei meinem Brainstorming.

                                Im Thread von SpacerX habe ich auch gelesen, daß es mit der Zeitzone Probleme geben kann.
                                Ist die timezone.location schon notwendig?

                                Warum hast du bei dem Strom Bucket eine Org und Token?
                                Wie viel Buckets hast du insgsamt?

                                Grüße Christoph

                                Proxmox Cluster mit ioBroker, Wireguard, HomeAssistant (Testsystem), paperlessNGX, MariaDB, PiHole, Grafana, InfluxDB, 1 x BKW 600 Wp, 2 x BKW 400 Wp, 2 x SolarFlow 800 Pro mit 11,52 kWh Akku und 3,48 kWp, OpenDTU, AhoyDTU, HmIP, Shellys, AVM LAN/WLAN

                                ? 1 Reply Last reply
                                0
                                • C cbrocker

                                  @dp20eic Hey Bernd,
                                  vielen Dank für die ausführlichen Infos. Sehr interessant und hilft mir bei meinem Brainstorming.

                                  Im Thread von SpacerX habe ich auch gelesen, daß es mit der Zeitzone Probleme geben kann.
                                  Ist die timezone.location schon notwendig?

                                  Warum hast du bei dem Strom Bucket eine Org und Token?
                                  Wie viel Buckets hast du insgsamt?

                                  Grüße Christoph

                                  ? Offline
                                  ? Offline
                                  A Former User
                                  wrote on last edited by
                                  #20

                                  Moin,

                                  @cbrocker sagte in inflxudb kurze Speicherdauer einstellen:

                                  @dp20eic Hey Bernd,
                                  vielen Dank für die ausführlichen Infos. Sehr interessant und hilft mir bei meinem Brainstorming.

                                  Gerne doch, deswegen sind wir doch hier, um uns auszutauschen 🙂

                                  Im Thread von SpacerX habe ich auch gelesen, daß es mit der Zeitzone Probleme geben kann.
                                  Ist die timezone.location schon notwendig?

                                  Ich habe bis jetzt immer festgestellt, dass ich Zulu Zeit = UTC in den Rohdaten habe, daher ist das für mich erst einmal so gesetzt, wenn ich feststelle, dass etwas nicht stimmt in der Abfrage, dann fliegt es raus 🙂

                                  Warum hast du bei dem Strom Bucket eine Org und Token?

                                  Als ich anfing, hatte ich noch alles unter einer Org und einem Token, dann kamen immer mehr, auch andere Sachen, die nichts mit ioBroker zu tun haben dazu, dann habe ich auch ab und an Mist gebaut und so fing ich an alles zu trennen, ob das so sein muss, keine Ahnung. Da ich mich immer noch im Aufbau befinde, tut das auch nicht so weh. Wenn dann die Hardware da ist, wird das sauber aufgebaut, und die Daten exportiert und im Zielbucket importiert.

                                  Wie viel Buckets hast du insgsamt?

                                  Aktuell sind es glaube ich neun, plus zwei hier für das Forum, falls man mal etwas testen muss,

                                  • proxmox metrik,
                                  • telgraf Metriken LXC Container, Office PCs,
                                  • Loki Logfile Monitoring,
                                  • FritzinfluxDB,
                                  • 15T iobroker,
                                  • Monats-, Quartals-, Jahres-, Immer-Bucket

                                  VG
                                  Bernd

                                  C 1 Reply Last reply
                                  1
                                  • ? A Former User

                                    Moin,

                                    @cbrocker sagte in inflxudb kurze Speicherdauer einstellen:

                                    @dp20eic Hey Bernd,
                                    vielen Dank für die ausführlichen Infos. Sehr interessant und hilft mir bei meinem Brainstorming.

                                    Gerne doch, deswegen sind wir doch hier, um uns auszutauschen 🙂

                                    Im Thread von SpacerX habe ich auch gelesen, daß es mit der Zeitzone Probleme geben kann.
                                    Ist die timezone.location schon notwendig?

                                    Ich habe bis jetzt immer festgestellt, dass ich Zulu Zeit = UTC in den Rohdaten habe, daher ist das für mich erst einmal so gesetzt, wenn ich feststelle, dass etwas nicht stimmt in der Abfrage, dann fliegt es raus 🙂

                                    Warum hast du bei dem Strom Bucket eine Org und Token?

                                    Als ich anfing, hatte ich noch alles unter einer Org und einem Token, dann kamen immer mehr, auch andere Sachen, die nichts mit ioBroker zu tun haben dazu, dann habe ich auch ab und an Mist gebaut und so fing ich an alles zu trennen, ob das so sein muss, keine Ahnung. Da ich mich immer noch im Aufbau befinde, tut das auch nicht so weh. Wenn dann die Hardware da ist, wird das sauber aufgebaut, und die Daten exportiert und im Zielbucket importiert.

                                    Wie viel Buckets hast du insgsamt?

                                    Aktuell sind es glaube ich neun, plus zwei hier für das Forum, falls man mal etwas testen muss,

                                    • proxmox metrik,
                                    • telgraf Metriken LXC Container, Office PCs,
                                    • Loki Logfile Monitoring,
                                    • FritzinfluxDB,
                                    • 15T iobroker,
                                    • Monats-, Quartals-, Jahres-, Immer-Bucket

                                    VG
                                    Bernd

                                    C Offline
                                    C Offline
                                    cbrocker
                                    wrote on last edited by
                                    #21

                                    @dp20eic
                                    Hallo Bernd,

                                    da hast du dich ja schon sehr reingekniet in influxdb. Kostet viel Zeit, aber ist auch sehr interessant und macht auch Spaß 🙂

                                    Habe gerade noch paar Aktualisierungen im iobroker vorgenommen. Bin kürzlich ja von Rasp Pi auf Proxmox umgestiegen. Da sind nun noch einige Sachen komisch...

                                    Die Org. und der Token für Strom benutzt du dann nur in dem Flux-Code?
                                    Denn im influxdb Adapter kann man ja nur einen Token hinterlegen.

                                    Da man in Proxmox ja bequem ein Backup erstellen kann, ist es echt halb so wild, wenn man bißchen was verbockt 🙂

                                    Grüße
                                    Christoph

                                    Proxmox Cluster mit ioBroker, Wireguard, HomeAssistant (Testsystem), paperlessNGX, MariaDB, PiHole, Grafana, InfluxDB, 1 x BKW 600 Wp, 2 x BKW 400 Wp, 2 x SolarFlow 800 Pro mit 11,52 kWh Akku und 3,48 kWp, OpenDTU, AhoyDTU, HmIP, Shellys, AVM LAN/WLAN

                                    1 Reply Last reply
                                    0
                                    • ? A Former User

                                      @cbrocker sagte in inflxudb kurze Speicherdauer einstellen:

                                      @dp20eic Hey, das ist ein interessanter Ansatz.

                                      Moin,

                                      hab den Post von @SpacerX nicht weiter verfolgt, ich lasse alle Datenpunkte in mein iobroker Bucket schreiben, also alles ob nun sekündlich oder nur alle paar Stunden ein Wert kommt.

                                      Machst du dann Grafana Diagramme nur mit den Daten aus dem Jahres-Bucket oder auch von den anderen?

                                      Ich mache auch von den anderen Buckets Diagrammen, z.B. Spritpreise bleiben nur im iobroker Bucket für 15 Tage, daraus baue ich mir die Anzeige für den Tag, da mir eine Aggregierung auf Tag nicht für den aktuell günstigsten Preis hilft 😉
                                      Bei anderen, wie z. B. Strom, Gas und Wasser ist es auch unterschiedlich, Strom will ich den aktuellen Verbrauch sehen → 15 Tages Bucket, dann aber auch wie war der Verbrauch gestern über den Tag im Vergleich zum Vortag oder Woche zur Vorwoche nehme ich dann aber nicht mehr die Daten aus dem 15 Tages Bucket, sondern schon aggregierte Werte aus einem anderen Bucket. Beim Wasser ist es dann nicht der aktuelle Wert der mich interessiert, sondern vielleicht nur noch der Verbrauch im Monat oder Quartal.

                                      Ich stelle ich mir die Frage, welche Werte brauche ich länger als die eingestellten 15 Tage, z. B. Stromverbrauch total, möchte ich mindestens zwei Jahre zurückverfolgen, also aggregiere ich täglich, kurz nach Mitternacht, die Werte des Datenpunkts und schreibe ihn in ein eigenes Bucket, hier speziell noch eins nur für Strom, mit eigener Org. und eigenem Token.

                                      import "timezone"
                                      
                                      option task = {name: "Downsampling Vb_Stromzaehler", cron: "15 0 * * *"}
                                      
                                      option location = timezone.location(name: "Europe/Berlin")
                                      
                                      data =
                                          from(bucket: "iobroker_strom")
                                              |> range(start: -2mo, stop: now())
                                              |> filter(fn: (r) => r["_measurement"] == "sonoff.0.DVES_8AA766.SENSOR.SML.total_kwh")
                                              |> filter(fn: (r) => r["_field"] == "value")
                                              // Spalten "_start", "_stop", "ack", "from", "q", ausschliessen
                                              |> drop(columns: ["ack", "q", "from"])
                                      
                                      data
                                          |> aggregateWindow(every: 1d, fn: last, timeSrc: "_time")
                                          // In Wh ohne Komma
                                          |> toInt()
                                          |> set(key: "_measurement", value: "Hauptzaehler")
                                          // Use the to() function to validate that the results look correct. This is optional.
                                          |> to(bucket: "Stromverbrauch", org: "iobroker_strom")
                                      

                                      398b81ff-653c-4ec4-85ed-1b411a16e0bc-grafik.png

                                      Aktuell erstelle ich mir eine Liste mit den DP, die ich archiviere, damit ich mir einen Überblick verschaffen kann, wie ich welchen Wert brauche
                                      Beispiel:

                                      dp 15 T Monatswert Quartalswert Jahreswert für immer
                                      sonoff.0.DVES_8AA766.SENSOR.SML.total_kwh X X X
                                      tankerkoemig.0.e10 X X

                                      Sprich, deine längste Aufbewahrungsdauer ist aber 1 Jahr?

                                      Aktuell Ja, ich habe aber auch erst z. B. mit Strom dieses Jahr im Jan. angefangen, ich beobachte mal wie was anwächst, das ist ja auch ein Vorteil des Downsampling, dass die Menge der gespeicherten Daten geringer wird.

                                      Was für ne Hardware hast du bestellt?

                                      Zwei davon https://www.kickstarter.com/projects/storaxa/fully-customizable-home-cloud-storage-with-remote-access-nas?lang=de
                                      56b22a31-f356-4abf-b9ba-ae43770b1946-grafik.png
                                      Mit je 64 GB Memory, aber noch ohne M.2 oder SSD, da nutze ich das Vorhandene aus meiner DS716 + DX510, wenn aber die Preise für M.2 weiter so attraktiv sind, werde ich mir da wohl noch die ein oder andere holen 🙂

                                      VG
                                      Bernd

                                      C Offline
                                      C Offline
                                      cbrocker
                                      wrote on last edited by
                                      #22

                                      @dp20eic
                                      Hi Bernd,

                                      was ich an deinem Beispiel noch nicht verstehe:

                                      import "timezone"
                                      
                                      option task = {name: "Downsampling Vb_Stromzaehler", cron: "15 0 * * *"}
                                      
                                      option location = timezone.location(name: "Europe/Berlin")
                                      
                                      data =
                                      
                                          from(bucket: "iobroker_strom")
                                              |> range(start: -2mo, stop: now())
                                              |> filter(fn: (r) => r["_measurement"] == "sonoff.0.DVES_8AA766.SENSOR.SML.total_kwh")
                                              |> filter(fn: (r) => r["_field"] == "value")
                                              // Spalten "_start", "_stop", "ack", "from", "q", ausschliessen
                                              |> drop(columns: ["ack", "q", "from"])
                                      
                                      data
                                          |> aggregateWindow(every: 1d, fn: last, timeSrc: "_time")
                                          // In Wh ohne Komma
                                          |> toInt()
                                          |> set(key: "_measurement", value: "Hauptzaehler")
                                          // Use the to() function to validate that the results look correct. This is optional.
                                          |> to(bucket: "Stromverbrauch", org: "iobroker_strom")
                                      

                                      Der Task läuft ja täglich 00:15 Uhr.

                                      Dann wird von iobroker_strom der Range der letzten 2 Monate in das bucket Stromverbrauch übergeben.
                                      Dort hast du aggregateWindows every 1d (also 1 Tag).

                                      Fragen:

                                      • wenn die Daten der letzten 2 Monate übergeben werden, sind aber dann nicht doppelte Daten im neuen Bucket? (weil sich die Daten der 2 Monate ja ständig überschneiden).

                                      • wenn der Task nachts um 00:15 Uhr läuft (und du die Daten in Grafana darstellst),
                                        dann fehlen aber doch immer die Daten des Tages vorher in der Grafik von Grafana?
                                        (weil ja erst nachts um 00:15 die aktuellsten Daten übergeben werden (-2mo bis now)

                                      • Das every 1d gilt nur für Aggregate, hat also nichts mit einem Range zu tun?

                                      Danke für deine Hilfe

                                      Grüße
                                      Christoph

                                      Proxmox Cluster mit ioBroker, Wireguard, HomeAssistant (Testsystem), paperlessNGX, MariaDB, PiHole, Grafana, InfluxDB, 1 x BKW 600 Wp, 2 x BKW 400 Wp, 2 x SolarFlow 800 Pro mit 11,52 kWh Akku und 3,48 kWp, OpenDTU, AhoyDTU, HmIP, Shellys, AVM LAN/WLAN

                                      ? 1 Reply Last reply
                                      0
                                      • C cbrocker

                                        @dp20eic
                                        Hi Bernd,

                                        was ich an deinem Beispiel noch nicht verstehe:

                                        import "timezone"
                                        
                                        option task = {name: "Downsampling Vb_Stromzaehler", cron: "15 0 * * *"}
                                        
                                        option location = timezone.location(name: "Europe/Berlin")
                                        
                                        data =
                                        
                                            from(bucket: "iobroker_strom")
                                                |> range(start: -2mo, stop: now())
                                                |> filter(fn: (r) => r["_measurement"] == "sonoff.0.DVES_8AA766.SENSOR.SML.total_kwh")
                                                |> filter(fn: (r) => r["_field"] == "value")
                                                // Spalten "_start", "_stop", "ack", "from", "q", ausschliessen
                                                |> drop(columns: ["ack", "q", "from"])
                                        
                                        data
                                            |> aggregateWindow(every: 1d, fn: last, timeSrc: "_time")
                                            // In Wh ohne Komma
                                            |> toInt()
                                            |> set(key: "_measurement", value: "Hauptzaehler")
                                            // Use the to() function to validate that the results look correct. This is optional.
                                            |> to(bucket: "Stromverbrauch", org: "iobroker_strom")
                                        

                                        Der Task läuft ja täglich 00:15 Uhr.

                                        Dann wird von iobroker_strom der Range der letzten 2 Monate in das bucket Stromverbrauch übergeben.
                                        Dort hast du aggregateWindows every 1d (also 1 Tag).

                                        Fragen:

                                        • wenn die Daten der letzten 2 Monate übergeben werden, sind aber dann nicht doppelte Daten im neuen Bucket? (weil sich die Daten der 2 Monate ja ständig überschneiden).

                                        • wenn der Task nachts um 00:15 Uhr läuft (und du die Daten in Grafana darstellst),
                                          dann fehlen aber doch immer die Daten des Tages vorher in der Grafik von Grafana?
                                          (weil ja erst nachts um 00:15 die aktuellsten Daten übergeben werden (-2mo bis now)

                                        • Das every 1d gilt nur für Aggregate, hat also nichts mit einem Range zu tun?

                                        Danke für deine Hilfe

                                        Grüße
                                        Christoph

                                        ? Offline
                                        ? Offline
                                        A Former User
                                        wrote on last edited by
                                        #23

                                        @cbrocker sagte in inflxudb kurze Speicherdauer einstellen:

                                        Fragen:

                                        • wenn die Daten der letzten 2 Monate übergeben werden, sind aber dann nicht doppelte Daten im neuen Bucket? (weil sich die Daten der 2 Monate ja ständig überschneiden).
                                        • wenn der Task nachts um 00:15 Uhr läuft (und du die Daten in Grafana darstellst),
                                          dann fehlen aber doch immer die Daten des Tages vorher in der Grafik von Grafana?
                                          (weil ja erst nachts um 00:15 die aktuellsten Daten übergeben werden (-2mo bis now)
                                        • Das every 1d gilt nur für Aggregate, hat also nichts mit einem Range zu tun?

                                        Moin,

                                        Zu

                                        1. als ich mich mit Downsamping beschäftigt hatte, liefen schon ca. 2 Monate Daten in das ioBroker Bucket, da ich die Daten nicht verlieren wollte, habe ich die Range auf den Zeitraum eingestellt. Alle Daten, die durch die Überschneidung entstehen, werden nicht ein zweites Mal geschrieben, bzw. überschreiben den vorhandenen Wert. Also, es entstehen keine Dubletten. Zudem kann ich sicher sein, dass falls mal etwas nicht läuft, dass ich keine Daten verliere, zwischenzeitlich habe ich das auf 1 Jahr hochgedreht.
                                        2. Ich nutze das nur zur Anzeige der Woche oder Monat, für aktuellen Tag gehe ich noch in das Standard Bucket.
                                        3. Ja

                                        VG
                                        Bernd

                                        C 1 Reply Last reply
                                        1
                                        • I Online
                                          I Online
                                          intruder7
                                          wrote on last edited by
                                          #24

                                          @cbrocker Moin
                                          ich nutze in Grafana das Plug In JSON API. Damit kann dann mittels dem Simple API Adapter im ioBroker mir direkt Datenpunkte ohne sie in die Historie zu packen in Grafana anzeigen lassen. Funktioniert sehr gut.
                                          d0e718c3-cafa-4fde-beed-09a0e55942e6-image.png

                                          C 1 Reply Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          585

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe