Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Bewährte Histogrammfunktion?

NEWS

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

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

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

Bewährte Histogrammfunktion?

Geplant Angeheftet Gesperrt Verschoben JavaScript
58 Beiträge 6 Kommentatoren 3.4k Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • K klassisch

    Heute Mittag um 14:08:40 gab es einen interessanten Vorfall.
    Anscheinend hatte die externe Platte, auf die noch andere Programme zugreifen, einen hickup.
    History hat sich beschwert, daß er einige Dateien nicht lesen könne.
    Und dann kam auch sql.
    Während sich history aber wieder gefangen hat, war das bei der sql nicht der Fall. Den ganzen Nachmittag Fehlermeldungen. Ein Neustart des MariaDB Dienstes, der zwar noch lief sich aber nicht merh aus dem Fehlersumpf befreien konnte, half dann.

    Mein Fazit: Die MariaDB Implementierung unter Windows scheint nicht fehlertolerant ausgelegt zu sein. Einmal ein Problem mit dem (externen) Datenspeicher und es ist ein externer Eingriff erforderlich.

    History ist da gutmütiger und robuster.

    BananaJoeB Offline
    BananaJoeB Offline
    BananaJoe
    Most Active
    schrieb am zuletzt editiert von
    #41

    @klassisch du bist nicht ganz fair. In der Kombination hätte die Linux-Variante vermutlich genauso gezickt. Wer packt bitte schön auch eine Datenbank auf eine externe Festplatte ....

    Stromsparmechanismen abgeschaltet? Falls das geht, externe Platten haben oftmals noch ihren eigenen Timer wenn nichts anderes greift.
    Und die Windows Desktop Systeme sind da auch eifrig (während die Serversysteme ab 2016 mit Boardmitteln gar nicht mehr schlafen legen)

    ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

    K 1 Antwort Letzte Antwort
    0
    • BananaJoeB BananaJoe

      @klassisch du bist nicht ganz fair. In der Kombination hätte die Linux-Variante vermutlich genauso gezickt. Wer packt bitte schön auch eine Datenbank auf eine externe Festplatte ....

      Stromsparmechanismen abgeschaltet? Falls das geht, externe Platten haben oftmals noch ihren eigenen Timer wenn nichts anderes greift.
      Und die Windows Desktop Systeme sind da auch eifrig (während die Serversysteme ab 2016 mit Boardmitteln gar nicht mehr schlafen legen)

      K Offline
      K Offline
      klassisch
      Most Active
      schrieb am zuletzt editiert von
      #42

      @bananajoe Ich bin in der Beurteilung einfach nur pragmatisch.
      History hat sich gefangen, MariaDB leider nicht.
      Der Rechner (Laptop) hat leider nur eine SSD eingeaut. Darauf wollte ich die Datenbank nicht unbeding laufen lassen.
      Die externe HD ist eine WD purple und läuft 24/7. Da wird ständig geschrieben, -auch von anderen Programmen - die geht nie schlafen. Und dafür ist die auch gebaut.
      Über den Hickup bin ich nicht glücklich und ist mir bisher nicht so aufgefallen.
      Wie gesagt, History hat das abgefangen.
      Da eine Datenbank I/O als ein der Kernaufgaben hat, würde ich solche Robustheitsthemen bei Datenbanken erwartet. Aber ich bin kein Datenbank Experte.

      BananaJoeB 1 Antwort Letzte Antwort
      0
      • K klassisch

        @bananajoe Ich bin in der Beurteilung einfach nur pragmatisch.
        History hat sich gefangen, MariaDB leider nicht.
        Der Rechner (Laptop) hat leider nur eine SSD eingeaut. Darauf wollte ich die Datenbank nicht unbeding laufen lassen.
        Die externe HD ist eine WD purple und läuft 24/7. Da wird ständig geschrieben, -auch von anderen Programmen - die geht nie schlafen. Und dafür ist die auch gebaut.
        Über den Hickup bin ich nicht glücklich und ist mir bisher nicht so aufgefallen.
        Wie gesagt, History hat das abgefangen.
        Da eine Datenbank I/O als ein der Kernaufgaben hat, würde ich solche Robustheitsthemen bei Datenbanken erwartet. Aber ich bin kein Datenbank Experte.

        BananaJoeB Offline
        BananaJoeB Offline
        BananaJoe
        Most Active
        schrieb am zuletzt editiert von BananaJoe
        #43

        @klassisch sagte in Bewährte Histogrammfunktion?:

        @bananajoe Ich bin in der Beurteilung einfach nur pragmatisch.
        History hat sich gefangen, MariaDB leider nicht.
        Der Rechner (Laptop) hat leider nur eine SSD eingeaut. Darauf wollte ich die Datenbank nicht unbeding laufen lassen.
        Die externe HD ist eine WD purple und läuft 24/7. Da wird ständig geschrieben, -auch von anderen Programmen - die geht nie schlafen. Und dafür ist die auch gebaut.
        Über den Hickup bin ich nicht glücklich und ist mir bisher nicht so aufgefallen.
        Wie gesagt, History hat das abgefangen.
        Da eine Datenbank I/O als ein der Kernaufgaben hat, würde ich solche Robustheitsthemen bei Datenbanken erwartet. Aber ich bin kein Datenbank Experte.

        1. ist gerade die SSD super für Datenbanken geeignet, allein auf Grund der Zugriffszeiten.
        2. und dann kommt die Datenbank (oder der SQL-Adapter?) nicht aus dem Tritt. Das der Datenträger mal nicht da ist/richtig reagiert ist bei Datenbanken nicht vorgesehen. Die speichern ja etwas komplizierter (erst ins Log, dann in die Datenbank) und macht auch erst weiter wenn das Betriebssystem das Schreiben bestätigt hat (für jeden Schreibzugriff also mindestens 2 mal) damit diese Transaktion immer gültig / valide ist. Denn die Validität / Verlässlichkeit / ein konsistenter Zustand ist nun mal das wichtigste an einer Datenbank. Du hast da nur ein paar "poplige" Werte von 4 duzend Datenpunkten drin, ich habe Kunden mit mehrere hundert Gigabyte großen MariaDB / MySQL Datenbanken, da muss das einfach passen. Und dann kann das System halt nicht einfach "Robustheit" demonstrieren, das Problem ignorieren und weitermachen. Jedenfalls nicht wenn es um das Schreiben von Daten geht.
        3. Und der History-Adapter hat nichts abfangen. Denn der History-Adapter ist ja auch keine Datenbank sondern - Apollon77 möge mir diese vereinfachung verzeihen - etwas JavaScript was die Zustände in Text- und/oder Binärdateien speichert. Als ob du in deiner Textverarbeitung ein Dokument offen hast und es regelmäßig speicherst. Klar ist das "robuster" was Ausfälle/Verzögerungen des Datenträgers angeht weil diesem System es eigentlich ja auch ziemlich egal ist. Dann wartet es halt 10 Minuten wenn das schreiben so lange dauert. So etwas geht aber auch gerne kaputten wenn während des Schreibens der Strom ausfällt (Siehe die ganzen Raspberry Pi Post wo das System nach einem Stromausfall nicht mehr startet). Im kleinen geht das, es ist aber vermessen das mit einer Datenbank vom Kaliber MySQL/MariaDB zu vergleichen und es als "robuster" zu bezeichnen.

        Zu "die geht nie schlafen" - was steht des zum Zeitpunkt des Schluckaufs im Ereignisprotokoll (System / Applikationen)
        Das ist USB, da ist mehr als die Platte beteiligt, auch andere USB-Geräte , USB Hub (kann auch interner sein) oder etwas auf dem USB-Bus wurde initialisiert.

        So, ganz viel Text. Mein Technikerherz hat sich - wie ich zugeben muss - halt darüber aufgeregt das der Software vorgeworfen wird, nicht wieder in den tritt zukommen wenn es ein anderes Problem von außen gab.
        Ich bin IT-Consultant und habe beruflich viel mit hochverfügbaren System zu tun. Und ich kann dir sagen das fast alle professionellen IT-Systeme im Zweifel ganz aussteigen wenn die Gefahr besteht das Daten nicht valide sind. Datenbanken stoppen, Dienste beenden sich, Speichersysteme sperren den (Schreib-)Zugriff, Server gehen in den Blue-/Purple- oder Green-Screen. Immer damit sich das ein Mensch das ansieht und entscheidet wie es weiter gehen soll. Meine Aufgabe ist oft das so etwas nicht passiert bzw. ein Ersatzsystem einspringt - oder das zumindest innerhalb kürzester Zeit benachrichtigt wird.

        ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

        K 1 Antwort Letzte Antwort
        0
        • BananaJoeB BananaJoe

          @klassisch sagte in Bewährte Histogrammfunktion?:

          @bananajoe Ich bin in der Beurteilung einfach nur pragmatisch.
          History hat sich gefangen, MariaDB leider nicht.
          Der Rechner (Laptop) hat leider nur eine SSD eingeaut. Darauf wollte ich die Datenbank nicht unbeding laufen lassen.
          Die externe HD ist eine WD purple und läuft 24/7. Da wird ständig geschrieben, -auch von anderen Programmen - die geht nie schlafen. Und dafür ist die auch gebaut.
          Über den Hickup bin ich nicht glücklich und ist mir bisher nicht so aufgefallen.
          Wie gesagt, History hat das abgefangen.
          Da eine Datenbank I/O als ein der Kernaufgaben hat, würde ich solche Robustheitsthemen bei Datenbanken erwartet. Aber ich bin kein Datenbank Experte.

          1. ist gerade die SSD super für Datenbanken geeignet, allein auf Grund der Zugriffszeiten.
          2. und dann kommt die Datenbank (oder der SQL-Adapter?) nicht aus dem Tritt. Das der Datenträger mal nicht da ist/richtig reagiert ist bei Datenbanken nicht vorgesehen. Die speichern ja etwas komplizierter (erst ins Log, dann in die Datenbank) und macht auch erst weiter wenn das Betriebssystem das Schreiben bestätigt hat (für jeden Schreibzugriff also mindestens 2 mal) damit diese Transaktion immer gültig / valide ist. Denn die Validität / Verlässlichkeit / ein konsistenter Zustand ist nun mal das wichtigste an einer Datenbank. Du hast da nur ein paar "poplige" Werte von 4 duzend Datenpunkten drin, ich habe Kunden mit mehrere hundert Gigabyte großen MariaDB / MySQL Datenbanken, da muss das einfach passen. Und dann kann das System halt nicht einfach "Robustheit" demonstrieren, das Problem ignorieren und weitermachen. Jedenfalls nicht wenn es um das Schreiben von Daten geht.
          3. Und der History-Adapter hat nichts abfangen. Denn der History-Adapter ist ja auch keine Datenbank sondern - Apollon77 möge mir diese vereinfachung verzeihen - etwas JavaScript was die Zustände in Text- und/oder Binärdateien speichert. Als ob du in deiner Textverarbeitung ein Dokument offen hast und es regelmäßig speicherst. Klar ist das "robuster" was Ausfälle/Verzögerungen des Datenträgers angeht weil diesem System es eigentlich ja auch ziemlich egal ist. Dann wartet es halt 10 Minuten wenn das schreiben so lange dauert. So etwas geht aber auch gerne kaputten wenn während des Schreibens der Strom ausfällt (Siehe die ganzen Raspberry Pi Post wo das System nach einem Stromausfall nicht mehr startet). Im kleinen geht das, es ist aber vermessen das mit einer Datenbank vom Kaliber MySQL/MariaDB zu vergleichen und es als "robuster" zu bezeichnen.

          Zu "die geht nie schlafen" - was steht des zum Zeitpunkt des Schluckaufs im Ereignisprotokoll (System / Applikationen)
          Das ist USB, da ist mehr als die Platte beteiligt, auch andere USB-Geräte , USB Hub (kann auch interner sein) oder etwas auf dem USB-Bus wurde initialisiert.

          So, ganz viel Text. Mein Technikerherz hat sich - wie ich zugeben muss - halt darüber aufgeregt das der Software vorgeworfen wird, nicht wieder in den tritt zukommen wenn es ein anderes Problem von außen gab.
          Ich bin IT-Consultant und habe beruflich viel mit hochverfügbaren System zu tun. Und ich kann dir sagen das fast alle professionellen IT-Systeme im Zweifel ganz aussteigen wenn die Gefahr besteht das Daten nicht valide sind. Datenbanken stoppen, Dienste beenden sich, Speichersysteme sperren den (Schreib-)Zugriff, Server gehen in den Blue-/Purple- oder Green-Screen. Immer damit sich das ein Mensch das ansieht und entscheidet wie es weiter gehen soll. Meine Aufgabe ist oft das so etwas nicht passiert bzw. ein Ersatzsystem einspringt - oder das zumindest innerhalb kürzester Zeit benachrichtigt wird.

          K Offline
          K Offline
          klassisch
          Most Active
          schrieb am zuletzt editiert von
          #44

          @bananajoe Vielen Dank für die Erläuterungen.
          Ich bin ja IT-Laie und hatte ein anderes Verständnis von Hochverfügbarkeit.
          Ich mache seit 30 Jahren viel mit Safety und das geht tatsächlich oft zu Lasten der Verfügbarkeit, weil der sichere Zustand entsprechend definiert ist.
          Deshalb dachte ich, daß bei Hochverfügbarkeitssystemen die Redundanz zugunsten der Verfügbarkeit genutzt wird.

          Ich werde mal versuchen, die MariaDB (für mich Laie halt eine Diva) auf die SSD zu legen. Bin ja noch immer im Testbetrieb, um genau solche Sachen zu lernen.

          Die Ereignisanzeige sagt:

          Der E/A-Vorgang an der logischen Blockadresse "0x130f15978" für den Datenträger "2" (PDO-Name: \Device\00000080) wurde wiederholt.
          
          
          {Fehler beim verzögerten Schreibvorgang} Nicht alle Daten für Datei "F:\$Mft" wurden gespeichert. Die Daten gingen verloren. Mögliche Ursachen sind Fehler bei der Computerhardware oder bei der Netzwerkverbindung. Versuchen Sie, die Datei woanders zu speichern.
          
          Bei einem Auslagerungsvorgang wurde ein Fehler festgestellt. Betroffen ist Gerät \Device\Harddisk2\DR2.
          
          Die Daten konnten nicht in das Transaktionsprotokoll verschoben werden. Die Daten sind möglicherweise beschädigt: Volume-ID: F:, Gerätename: \Device\HarddiskVolume7.
          
                     Fehlerstatus: Ein nicht vorhandenes Gerät wurde angegeben.
          
                     Geräte-GUID: {bd0b7f69-f71c-3fad-2eb4-c5303153de8c}
                     Gerätehersteller: TO Exter
                     Gerätemodell: nal USB 3.0     
                     Geräterevision: 0104
                     Seriennummer des Geräts: 2015033100081
                     Bustyp: USB
          
                     Seriennummer des Adapters: 
          
          
          Die Daten konnten nicht in das Transaktionsprotokoll verschoben werden. Die Daten sind möglicherweise beschädigt: Volume-ID: F:, Gerätename: \Device\HarddiskVolume7.
          
                     Fehlerstatus: Ein nicht vorhandenes Gerät wurde angegeben.
          
                     Geräte-GUID: {bd0b7f69-f71c-3fad-2eb4-c5303153de8c}
                     Gerätehersteller: TO Exter
                     Gerätemodell: nal USB 3.0     
                     Geräterevision: 0104
                     Seriennummer des Geräts: 2015033100081
                     Bustyp: USB
          
                     Seriennummer des Adapters: 
          
          
          System call failed: WinUsb_ControlTransfer: 433.
          
          {Fehler beim verzögerten Schreibvorgang} Nicht alle Daten für Datei "" wurden gespeichert. Die Daten gingen verloren. Mögliche Ursachen sind Fehler bei der Computerhardware oder bei der Netzwerkverbindung. Versuchen Sie, die Datei woanders zu speichern.
          
          System call failed: WinUsb_ControlTransfer: 433.
          
          Die Qualitätssicherungsüberprüfung für Fingereingabe-/Touchpad-Hardware wurde erfolgreich abgeschlossen.
          
          
          Dienst "MariaDB" wurde unerwartet beendet. Dies ist bereits 2 Mal passiert.
          
          Volume "F:" (\Device\HarddiskVolume12) ist fehlerfrei. Es ist keine Aktion erforderlich.
          

          Keine Ahnung, was da war. Aber an den USBs hängt einiges. 2 Platten, Drucker.

          1 Antwort Letzte Antwort
          0
          • K Offline
            K Offline
            klassisch
            Most Active
            schrieb am zuletzt editiert von
            #45

            Da kommt man sich so richtig blöd vor. Ich finde keine Möglichkeit, den Speicherort der Datenbank festzulegen.
            Habe gelesen, man könne da in my.in oder my.cnf. Alles das scheint es bei mir nicht zu geben.
            Heidi hilft leider auch nicht weiter.

            BananaJoeB 1 Antwort Letzte Antwort
            0
            • K klassisch

              Da kommt man sich so richtig blöd vor. Ich finde keine Möglichkeit, den Speicherort der Datenbank festzulegen.
              Habe gelesen, man könne da in my.in oder my.cnf. Alles das scheint es bei mir nicht zu geben.
              Heidi hilft leider auch nicht weiter.

              BananaJoeB Offline
              BananaJoeB Offline
              BananaJoe
              Most Active
              schrieb am zuletzt editiert von
              #46

              @klassisch laut google klingt das nun nicht so schwer ...
              https://www.techbrothersit.com/2017/12/how-to-change-mariadb-data-directory-on.html

              Bei mir unter Linux steht es in der

              /etc/mysql/mariadb.conf.d/50-server.cnf
              

              in meiner `my.cnf' wird auf das Verzeichnis verweisen (so das alle Dateien dort includiert werden),
              dort gibt es einen Abschnitt wie folgt:

              [mysqld]
              #
              # * Basic Settings
              #
              user                    = mysql
              pid-file                = /run/mysqld/mysqld.pid
              socket                  = /run/mysqld/mysqld.sock
              #port                   = 3306
              basedir                 = /usr
              datadir                 = /var/lib/mysql
              tmpdir                  = /tmp
              lc-messages-dir         = /usr/share/mysql
              

              datadirklingt doch recht eindeutig ...

              Die Daten können auch in der my.cnf stehen
              Alternativ wäre MariaDB beim starten diese Angaben als Parameter mitzugeben, dann müsste es im Dienst zu sehen sein und könnte in der Registry geändert werden. Wahrscheinlich steht da abe rnur der Verweis auf die Konfigurationsdatei(en)

              ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

              K 1 Antwort Letzte Antwort
              0
              • BananaJoeB BananaJoe

                @klassisch laut google klingt das nun nicht so schwer ...
                https://www.techbrothersit.com/2017/12/how-to-change-mariadb-data-directory-on.html

                Bei mir unter Linux steht es in der

                /etc/mysql/mariadb.conf.d/50-server.cnf
                

                in meiner `my.cnf' wird auf das Verzeichnis verweisen (so das alle Dateien dort includiert werden),
                dort gibt es einen Abschnitt wie folgt:

                [mysqld]
                #
                # * Basic Settings
                #
                user                    = mysql
                pid-file                = /run/mysqld/mysqld.pid
                socket                  = /run/mysqld/mysqld.sock
                #port                   = 3306
                basedir                 = /usr
                datadir                 = /var/lib/mysql
                tmpdir                  = /tmp
                lc-messages-dir         = /usr/share/mysql
                

                datadirklingt doch recht eindeutig ...

                Die Daten können auch in der my.cnf stehen
                Alternativ wäre MariaDB beim starten diese Angaben als Parameter mitzugeben, dann müsste es im Dienst zu sehen sein und könnte in der Registry geändert werden. Wahrscheinlich steht da abe rnur der Verweis auf die Konfigurationsdatei(en)

                K Offline
                K Offline
                klassisch
                Most Active
                schrieb am zuletzt editiert von
                #47

                @bananajoe sagte in Bewährte Histogrammfunktion?:

                Alternativ wäre MariaDB beim starten diese Angaben als Parameter mitzugeben, dann müsste es im Dienst zu sehen sein und könnte in der Registry geändert werden. Wahrscheinlich steht da abe rnur der Verweis auf die Konfigurationsdatei(en)

                Vielen Dank! So irgendwie muß das sein.
                Habe im MariaDB Verzeichnis nichts in Richtung *.cnf , *.cfg , .conf gefunden.
                Auch nicht unter users.
                Mal schauen, ob ich in der registry etwas finde, auch wenn ich mich dort nicht wirklich auskenne.

                1 Antwort Letzte Antwort
                0
                • K Offline
                  K Offline
                  klassisch
                  Most Active
                  schrieb am zuletzt editiert von
                  #48

                  Das könnte damit zusammenhängen
                  0dcd8a97-7610-4372-8157-45c1e19dd6d0-grafik.png

                  Das heißt, das my.ini file steht im Datenverzeichnis.

                  Dort steht dann

                  [mysqld]
                  datadir=F:/mariadb/data
                  port=3306
                  innodb_buffer_pool_size=942M
                  [client]
                  port=3306
                  plugin-dir=C:\Program Files\MariaDB 10.7/lib/plugin
                  

                  D.h. ich müßte dann den regedit Eintrag umbiegen auf das neue Datenverzeichnis und dort dann in der my.ini ebenfalls das neue Datenverzeichnis benennen.

                  Iregndwie doppelt, weil die ini im Datenverzeichnis und nicht beim Programm steht.

                  1 Antwort Letzte Antwort
                  0
                  • K Offline
                    K Offline
                    klassisch
                    Most Active
                    schrieb am zuletzt editiert von
                    #49

                    @BananaJoe vielen Dank, Bin wieder im Testbetrieb.
                    Habe die my.ini auf dem neuen Laufwerk geändert und auch die registry editiert.
                    Danke für Deine geduldieg und ausdauernde Hilfe. Ich hätte nicht erwartet, daß ein Linuxprogramm solche Infos in der Win registry hinterlegt.
                    Jetzt beobachte ich weiter.
                    Ich habe ja keinen Zeitdruck, aber um das Thema Datenbank werde ich auf kurz oder lang nicht drumrumkommen. Also langsam "ranpirschen".

                    1 Antwort Letzte Antwort
                    0
                    • K Offline
                      K Offline
                      klassisch
                      Most Active
                      schrieb am zuletzt editiert von
                      #50

                      So immerhin schon 3 Tage durchgelaufen ohne Probleme.
                      Mein Vetrauen wächst.
                      Also zurück zur Ausgangsfrage: Wie kann man jetzt aus den Daten Histogramme ableiten?
                      Nehme an, daß man dazu eine Datenbankabfrage vornimmt, wodurch dann die Histrogramme während der Abfrage berechnet werden.
                      Habe bisher noch keine Erfahrung mit solchen Abfragen und den mutmaßlich dafür genutzten "Sprachen".
                      Gibt es ein bewährtes und kompaktes Tutorial mit Beispielen an denen man sich orientieren udn entlanghangeln kann?

                      BananaJoeB 1 Antwort Letzte Antwort
                      0
                      • K klassisch

                        So immerhin schon 3 Tage durchgelaufen ohne Probleme.
                        Mein Vetrauen wächst.
                        Also zurück zur Ausgangsfrage: Wie kann man jetzt aus den Daten Histogramme ableiten?
                        Nehme an, daß man dazu eine Datenbankabfrage vornimmt, wodurch dann die Histrogramme während der Abfrage berechnet werden.
                        Habe bisher noch keine Erfahrung mit solchen Abfragen und den mutmaßlich dafür genutzten "Sprachen".
                        Gibt es ein bewährtes und kompaktes Tutorial mit Beispielen an denen man sich orientieren udn entlanghangeln kann?

                        BananaJoeB Offline
                        BananaJoeB Offline
                        BananaJoe
                        Most Active
                        schrieb am zuletzt editiert von
                        #51

                        @klassisch also ich nutze den eCharts Adapter. Der findet selbst alle Datenpunkte bei denen eingestellt wurde das Daten aufgezeichnet werden sollen, egal ob über History, SQL oder anderes.
                        In der Konfiguration von eCharts kann ich dann diese Datenpunkte als Quelle auswählen und mit mein passendes Diagramm zusammen bauen, ggf. aus mehreren Datenpunkten.
                        In die VIS bekommt man es über das zughörige Widget.
                        Vorher hatte ich Float genutzt, das funktioniert sinngemäß genauso.

                        ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                        K 1 Antwort Letzte Antwort
                        0
                        • BananaJoeB BananaJoe

                          @klassisch also ich nutze den eCharts Adapter. Der findet selbst alle Datenpunkte bei denen eingestellt wurde das Daten aufgezeichnet werden sollen, egal ob über History, SQL oder anderes.
                          In der Konfiguration von eCharts kann ich dann diese Datenpunkte als Quelle auswählen und mit mein passendes Diagramm zusammen bauen, ggf. aus mehreren Datenpunkten.
                          In die VIS bekommt man es über das zughörige Widget.
                          Vorher hatte ich Float genutzt, das funktioniert sinngemäß genauso.

                          K Offline
                          K Offline
                          klassisch
                          Most Active
                          schrieb am zuletzt editiert von
                          #52

                          @bananajoe Vielen Dank, ich nutze noch Flot und kann Daten von History und MariaDB plotten.

                          Meine Frage geht jetzt in die Richtung:

                          • Ich habe Daten in ihrer zeitlichen Abfolge
                          • Aus diesem Zeitverlauf möchte ich nachträglich weitere Auswertungen fahren, wie z.B. ein Häufigkeitshistogramm erstellen. In Flot habe ich dazu keine Funktion gefunden und dachte jetzt, daß eine Datenbank das leisten kann.
                          BananaJoeB 1 Antwort Letzte Antwort
                          0
                          • K klassisch

                            @bananajoe Vielen Dank, ich nutze noch Flot und kann Daten von History und MariaDB plotten.

                            Meine Frage geht jetzt in die Richtung:

                            • Ich habe Daten in ihrer zeitlichen Abfolge
                            • Aus diesem Zeitverlauf möchte ich nachträglich weitere Auswertungen fahren, wie z.B. ein Häufigkeitshistogramm erstellen. In Flot habe ich dazu keine Funktion gefunden und dachte jetzt, daß eine Datenbank das leisten kann.
                            BananaJoeB Offline
                            BananaJoeB Offline
                            BananaJoe
                            Most Active
                            schrieb am zuletzt editiert von
                            #53

                            @klassisch Wenn du dir die Anleitung des SQL-Adapters anschaust siehts du dort wie man eigene Abfragen machen kann.
                            Eine Auswertung wäre ja ein SQL-Statement / - Abfrage

                            Was genau willst du "Auswerten"?

                            ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                            K 1 Antwort Letzte Antwort
                            0
                            • BananaJoeB BananaJoe

                              @klassisch Wenn du dir die Anleitung des SQL-Adapters anschaust siehts du dort wie man eigene Abfragen machen kann.
                              Eine Auswertung wäre ja ein SQL-Statement / - Abfrage

                              Was genau willst du "Auswerten"?

                              K Offline
                              K Offline
                              klassisch
                              Most Active
                              schrieb am zuletzt editiert von
                              #54

                              @bananajoe sagte in Bewährte Histogrammfunktion?:

                              @klassisch Wenn du dir die Anleitung des SQL-Adapters anschaust siehts du dort wie man eigene Abfragen machen kann.

                              Vielen Dank, das werde ich mir anschauen

                              Eine Auswertung wäre ja ein SQL-Statement / - Abfrage

                              Das war meine Vermutung

                              Was genau willst du "Auswerten"?

                              Ich will wissen wie häufig die aufgezeichneten Werte in entsprechenden Wertebereichen liegen. Also ein einfaches Histogramm aus aufgezeichneten Daten generieren.

                              BananaJoeB 1 Antwort Letzte Antwort
                              0
                              • K klassisch

                                @bananajoe sagte in Bewährte Histogrammfunktion?:

                                @klassisch Wenn du dir die Anleitung des SQL-Adapters anschaust siehts du dort wie man eigene Abfragen machen kann.

                                Vielen Dank, das werde ich mir anschauen

                                Eine Auswertung wäre ja ein SQL-Statement / - Abfrage

                                Das war meine Vermutung

                                Was genau willst du "Auswerten"?

                                Ich will wissen wie häufig die aufgezeichneten Werte in entsprechenden Wertebereichen liegen. Also ein einfaches Histogramm aus aufgezeichneten Daten generieren.

                                BananaJoeB Offline
                                BananaJoeB Offline
                                BananaJoe
                                Most Active
                                schrieb am zuletzt editiert von
                                #55

                                @klassisch pff da kann ich dir nicht weiterhelfen. Sicher könnte ich mir das zusammengoogeln, aber das kannst du dann auch selbst.

                                ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                                K 1 Antwort Letzte Antwort
                                0
                                • BananaJoeB BananaJoe

                                  @klassisch pff da kann ich dir nicht weiterhelfen. Sicher könnte ich mir das zusammengoogeln, aber das kannst du dann auch selbst.

                                  K Offline
                                  K Offline
                                  klassisch
                                  Most Active
                                  schrieb am zuletzt editiert von
                                  #56

                                  @bananajoe sagte in Bewährte Histogrammfunktion?:

                                  @klassisch pff da kann ich dir nicht weiterhelfen. Sicher könnte ich mir das zusammengoogeln, aber das kannst du dann auch selbst.

                                  Danke, Ja klar, Du mußt Dir nicht meine Arbeit machen.
                                  Ich starte mal mit der Anleitung zum SQL Adapter und schleiche mich langsam an das Thema an.

                                  F 1 Antwort Letzte Antwort
                                  0
                                  • K klassisch

                                    @bananajoe sagte in Bewährte Histogrammfunktion?:

                                    @klassisch pff da kann ich dir nicht weiterhelfen. Sicher könnte ich mir das zusammengoogeln, aber das kannst du dann auch selbst.

                                    Danke, Ja klar, Du mußt Dir nicht meine Arbeit machen.
                                    Ich starte mal mit der Anleitung zum SQL Adapter und schleiche mich langsam an das Thema an.

                                    F Offline
                                    F Offline
                                    fastfoot
                                    schrieb am zuletzt editiert von
                                    #57

                                    @klassisch Hier mal eine SQL Abfrage für Tankerkönig, die Klassen und Datenpunkt ID('s) kannst du ja sehr leicht anpassen. Evlt vorher mit Heidi-SQL durchspielen

                                    SELECT d.name,
                                    SUM(CASE WHEN val BETWEEN 1.70 AND 1.79 THEN 1 ELSE NULL END) AS k1,
                                    SUM(CASE WHEN val BETWEEN 1.80 AND 1.89 THEN 1 ELSE NULL END) AS k2,
                                    SUM(CASE WHEN val BETWEEN 1.90 AND 1.99 THEN 1 ELSE NULL END) AS k3,
                                    SUM(CASE WHEN val BETWEEN 2.00 AND 2.09 THEN 1 ELSE NULL END) AS k4,
                                    SUM(CASE WHEN val BETWEEN 2.10 AND 2.19 THEN 1 ELSE NULL END) AS k5,
                                    SUM(CASE WHEN val BETWEEN 2.20 AND 2.29 THEN 1 ELSE NULL END) AS k6,
                                    SUM(CASE WHEN val BETWEEN 2.30 AND 2.39 THEN 1 ELSE NULL END) AS k7
                                    FROM ts_number n 
                                    JOIN datapoints d ON n.id=d.id AND d.name LIKE "tankerkoenig.0.stations%.feed"
                                    WHERE ts > UNIX_TIMESTAMP ('2022-3-1 00:00:00')*1000
                                    GROUP BY d.name
                                    

                                    iobroker läuft unter Docker auf QNAP TS-451+
                                    SkriptRecovery: https://forum.iobroker.net/post/930558

                                    K 1 Antwort Letzte Antwort
                                    0
                                    • F fastfoot

                                      @klassisch Hier mal eine SQL Abfrage für Tankerkönig, die Klassen und Datenpunkt ID('s) kannst du ja sehr leicht anpassen. Evlt vorher mit Heidi-SQL durchspielen

                                      SELECT d.name,
                                      SUM(CASE WHEN val BETWEEN 1.70 AND 1.79 THEN 1 ELSE NULL END) AS k1,
                                      SUM(CASE WHEN val BETWEEN 1.80 AND 1.89 THEN 1 ELSE NULL END) AS k2,
                                      SUM(CASE WHEN val BETWEEN 1.90 AND 1.99 THEN 1 ELSE NULL END) AS k3,
                                      SUM(CASE WHEN val BETWEEN 2.00 AND 2.09 THEN 1 ELSE NULL END) AS k4,
                                      SUM(CASE WHEN val BETWEEN 2.10 AND 2.19 THEN 1 ELSE NULL END) AS k5,
                                      SUM(CASE WHEN val BETWEEN 2.20 AND 2.29 THEN 1 ELSE NULL END) AS k6,
                                      SUM(CASE WHEN val BETWEEN 2.30 AND 2.39 THEN 1 ELSE NULL END) AS k7
                                      FROM ts_number n 
                                      JOIN datapoints d ON n.id=d.id AND d.name LIKE "tankerkoenig.0.stations%.feed"
                                      WHERE ts > UNIX_TIMESTAMP ('2022-3-1 00:00:00')*1000
                                      GROUP BY d.name
                                      
                                      K Offline
                                      K Offline
                                      klassisch
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #58

                                      @fastfoot Danke für das Beispiel. Versuche mich nach und nach durchzukämpfen.

                                      1 Antwort Letzte Antwort
                                      0
                                      Antworten
                                      • In einem neuen Thema antworten
                                      Anmelden zum Antworten
                                      • Älteste zuerst
                                      • Neuste zuerst
                                      • Meiste Stimmen


                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      508

                                      Online

                                      32.4k

                                      Benutzer

                                      81.5k

                                      Themen

                                      1.3m

                                      Beiträge
                                      Community
                                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                      ioBroker Community 2014-2025
                                      logo
                                      • Anmelden

                                      • Du hast noch kein Konto? Registrieren

                                      • Anmelden oder registrieren, um zu suchen
                                      • Erster Beitrag
                                        Letzter Beitrag
                                      0
                                      • Home
                                      • Aktuell
                                      • Tags
                                      • Ungelesen 0
                                      • Kategorien
                                      • Unreplied
                                      • Beliebt
                                      • GitHub
                                      • Docu
                                      • Hilfe