Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. EXPERIMENTELL: JsonL Datenbank für js-controller

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    EXPERIMENTELL: JsonL Datenbank für js-controller

    This topic has been deleted. Only users with topic management privileges can see it.
    • Neuschwansteini
      Neuschwansteini @apollon77 last edited by

      @apollon77

      Danke, ok, ich wart mal ab, was die Erfahrungen in den nächsten Wochen so zeigen, und wenn ich Zeit habe, teste ich das mit nem Clone mal aus.

      Denke aber, mein Redis ist schon echt flott.

      Bin gerade fertig mit der Umstellung von den Xiaomi-Gateways auf n CC26X2R, und hab 140 Sensoren neu angelernt.. 😄

      S 1 Reply Last reply Reply Quote 1
      • S
        saeft_2003 Most Active @Neuschwansteini last edited by

        @ilovegym sagte in EXPERIMENTELL: JsonL Datenbank für js-controller:

        Bin gerade fertig mit der Umstellung von den Xiaomi-Gateways auf n CC26X2R, und hab 140 Sensoren neu angelernt.. 😄

        Wow 140... das Gleiche hatte ich vor ca. einem Jahr gemacht und da waren es „nur“ 50 Sensoren und das war schon eine große Arbeit 🙈

        1 Reply Last reply Reply Quote 0
        • Scrounger
          Scrounger Developer last edited by

          @apollon77 @AlCalzone
          Anbei meine Erfahrungen mit jsonl, einfach nur top, super Arbeit 👍

          9dcde5ce-51f8-4d16-8c1f-3c674d9e18af-grafik.png

          Disk IO pro Stunden liegt jetzt bei 260MiB, statt ursprünglich 35 GiB 🙂

          Weiter ist mir aufgefallen, dass die CPU Last mit jsonl ebenfalls runter gegangen ist:
          eec939b6-59c0-4fa7-897e-fa692d9790c0-grafik.png

          crunchip L 2 Replies Last reply Reply Quote 3
          • crunchip
            crunchip Forum Testing Most Active @Scrounger last edited by

            @scrounger sagte in EXPERIMENTELL: JsonL Datenbank für js-controller:

            Weiter ist mir aufgefallen, dass die CPU Last mit jsonl ebenfalls runter gegangen ist:

            bei mir genau das Gegenteil
            77dcfd91-2071-4051-aa78-fa99f79a4d2a-image.png

            Dr. Bakterius 1 Reply Last reply Reply Quote 0
            • Dr. Bakterius
              Dr. Bakterius Most Active @crunchip last edited by Dr. Bakterius

              @crunchip sagte in EXPERIMENTELL: JsonL Datenbank für js-controller:

              bei mir genau das Gegenteil

              Bei mir ist die CPU-Last auch gestiegen. Jedoch nicht ganz so extrem sondern "nur" um ~65% (6,2% > 10,2%). Damit liegt sie etwas höher als zu Beginn mit file|file (9,7%).

              1 Reply Last reply Reply Quote 0
              • A
                Adnim last edited by Adnim

                Meine CPU last hat sich auch um ca.2% erhöht, dafür keinerlei Schreibload mehr. Läuft Spitze. Maybee sollte das der neue StandartStandard werden mit JsonL!?

                cpu.JPG
                jsonl.JPG

                Dr. Bakterius O 2 Replies Last reply Reply Quote 0
                • Dr. Bakterius
                  Dr. Bakterius Most Active @Adnim last edited by

                  @adnim
                  a) Standard ist keine Standart. 🙂

                  b) In deinem Fall sehe ich einen Anstieg wie bei mir um ~65% (von 2% auf 3,5%) oder 1,5%-Punkte.

                  A 1 Reply Last reply Reply Quote 0
                  • A
                    Adnim @Dr. Bakterius last edited by

                    @dr-bakterius
                    😄 danke für den Hinweis! 🙂

                    Ja Prozentual ist der Anstieg schon heftig. Aber da bin ich ganz entspannt das kostet mich etwas Strom, CPU hat ja keinen Verschleiß wie eine Festplatte. Wenn man das noch in den Griff bekommt umso besser, lüppt aber auch so...

                    Dr. Bakterius 1 Reply Last reply Reply Quote 0
                    • Dr. Bakterius
                      Dr. Bakterius Most Active @Adnim last edited by

                      @adnim Stimme dir eh zu - finde das neue Konzept bisher auch toll. Wobei eine CPU und die anderen Komponenten natürlich auch schneller altern je höher sie belastet werden. Doch das ist bei diesen Werten und im Vergleich zu den Datenträgern wirklich zu vernachlässigen.

                      1 Reply Last reply Reply Quote 0
                      • L
                        lonsimbt @Scrounger last edited by

                        @scrounger @crunchip

                        Bei mir sieht es bzgl. der Diskwrites sehr ähnlich aus:
                        bild2.jpg
                        bild1.jpg

                        Nach der Einstellung geringerer Schreibzyklen für redis (States und Objects) ist die Schreiblast deutlich runtergegangen. Mit der Umstellung auf die aktuelle Version des js-controller und jsonl (erst nur Objects dann States und Objects) ist ein weiterer spürbarer Rückgang zu verzeichnen.

                        Die CPU-Auslastung geht - insbesondere seit auch die States in der jsonl-DB liegen - spürbar nach oben (~+40 % von 3,25% auf 4,5%).

                        Gruß Marco

                        AlCalzone apollon77 2 Replies Last reply Reply Quote 0
                        • O
                          oFbEQnpoLKKl6mbY5e13 @Adnim last edited by oFbEQnpoLKKl6mbY5e13

                          @adnim sagte in EXPERIMENTELL: JsonL Datenbank für js-controller:

                          Maybee sollte das der neue Standard werden mit JsonL!?

                          Wieviele hatten denn seit ihrer Umstellung Situationen, in denen das neue Schreibverfahren seine Robustheit unter Beweis stellen konnte?

                          1 Reply Last reply Reply Quote 0
                          • AlCalzone
                            AlCalzone Developer @lonsimbt last edited by

                            @lonsimbt sagte in EXPERIMENTELL: JsonL Datenbank für js-controller:

                            3,25% auf 4,5%

                            Das ist jetzt alles nicht so die Welt, aber wir haben bereits grundlegend was in der File DB identifiziert (der Teil, der auch von JSONL genutzt wird), was das verursachen könnte.

                            1 Reply Last reply Reply Quote 1
                            • M
                              Megawaldi last edited by

                              Habt ihr beides, also States und Objects auf JsonL umgestellt?
                              Ich nutze im moment noch radis für states und file für objects und bin am überlegen wie ich das in Zukunft so haben will.

                              1 Reply Last reply Reply Quote 0
                              • apollon77
                                apollon77 @lonsimbt last edited by

                                @lonsimbt sagte in EXPERIMENTELL: JsonL Datenbank für js-controller:

                                Die CPU-Auslastung geht - insbesondere seit auch die States in der jsonl-DB liegen - spürbar nach oben (~+40 % von 3,25% auf 4,5%).

                                Naja das ist aber zu erwarten!!

                                Bisher hatte die Redis DB und damit der Redis Prozess die Last wenn dort die Daten auch lagen. Wenn das jetzt wieder in die File DB kommt die vom controller Prozess dann gemanaged wird dann geht die CPU Last hierauf über und ist normalerweise mehr als Redis weil redis "nativ C++" ist nd kein interpretiertes Javascript.

                                Da müsste Ihr aufpassen nicht Äpfel mit Birnen zu vergleichen 🙂

                                L 1 Reply Last reply Reply Quote 0
                                • L
                                  lonsimbt @apollon77 last edited by

                                  @apollon77 sagte in EXPERIMENTELL: JsonL Datenbank für js-controller:

                                  @lonsimbt sagte in EXPERIMENTELL: JsonL Datenbank für js-controller:

                                  Die CPU-Auslastung geht - insbesondere seit auch die States in der jsonl-DB liegen - spürbar nach oben (~+40 % von 3,25% auf 4,5%).

                                  Naja das ist aber zu erwarten!!

                                  Bisher hatte die Redis DB und damit der Redis Prozess die Last wenn dort die Daten auch lagen. Wenn das jetzt wieder in die File DB kommt die vom controller Prozess dann gemanaged wird dann geht die CPU Last hierauf über und ist normalerweise mehr als Redis weil redis "nativ C++" ist nd kein interpretiertes Javascript.

                                  Da müsste Ihr aufpassen nicht Äpfel mit Birnen zu vergleichen 🙂

                                  Bei mir laufen (bzw. liefen) redis und iobroker im gleichen Container, d. h. der Unterschied dürfte tatsächlich aus dem höheren Aufwand stammen, den der Javascript-Code erzeugt. Ich persönlich finde den Anstieg um gut einen Prozentpunkt auch überhaupt nicht tragisch. Mein kleiner Server langweilt sich sowieso den Großteil der Zeit... Ich wollte nur meine Beobachtungen kundtun, da mit dem neuen Datenbankformat offensichtlich unterschiedliches Verhalten beobachtet wurde.

                                  Gruß Marco

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    msauer last edited by msauer

                                    Hi...ich habe einen seltsamen Fehler nach dem Update von JARVIS auf 2.2.0, wobei der Update an sich keinen Fehler erzeugt hat.

                                    2021-02-25 08:05:30.352 - info: host.MSNUC-IOB instance system.adapter.jarvis.0 started with pid 3993
                                    2021-02-25 08:05:31.387 - error: host.MSNUC-IOB Caught by controller[0]: /opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:428
                                    2021-02-25 08:05:31.387 - error: host.MSNUC-IOB Caught by controller[0]: throw new Error(`Unknown states type: ${config.states.type}: ${err.message}`);
                                    2021-02-25 08:05:31.388 - error: host.MSNUC-IOB Caught by controller[0]: ^
                                    2021-02-25 08:05:31.388 - error: host.MSNUC-IOB Caught by controller[0]: Error: Unknown states type: jsonl: Cannot find module '@iobroker/db-states-jsonl'
                                    2021-02-25 08:05:31.388 - error: host.MSNUC-IOB Caught by controller[0]: Require stack:
                                    2021-02-25 08:05:31.388 - error: host.MSNUC-IOB Caught by controller[0]: - /opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js
                                    2021-02-25 08:05:31.388 - error: host.MSNUC-IOB Caught by controller[0]: - /opt/iobroker/node_modules/@iobroker/adapter-core/build/utils.js
                                    2021-02-25 08:05:31.388 - error: host.MSNUC-IOB Caught by controller[0]: - /opt/iobroker/node_modules/@iobroker/adapter-core/build/index.js
                                    2021-02-25 08:05:31.389 - error: host.MSNUC-IOB Caught by controller[0]: - /opt/iobroker/node_modules/iobroker.jarvis/jarvis.js
                                    2021-02-25 08:05:31.389 - error: host.MSNUC-IOB Caught by controller[0]: at new Adapter (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:428:19)
                                    2021-02-25 08:05:31.389 - error: host.MSNUC-IOB Caught by controller[0]: at startAdapter (/opt/iobroker/node_modules/iobroker.jarvis/jarvis.js:69:12)
                                    2021-02-25 08:05:31.389 - error: host.MSNUC-IOB Caught by controller[0]: at Object. (/opt/iobroker/node_modules/iobroker.jarvis/jarvis.js:555:2)
                                    2021-02-25 08:05:31.389 - error: host.MSNUC-IOB Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1063:30)
                                    2021-02-25 08:05:31.389 - error: host.MSNUC-IOB Caught by controller[0]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
                                    2021-02-25 08:05:31.390 - error: host.MSNUC-IOB Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:928:32)
                                    2021-02-25 08:05:31.390 - error: host.MSNUC-IOB Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:769:14)
                                    2021-02-25 08:05:31.390 - error: host.MSNUC-IOB Caught by controller[0]: at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
                                    2021-02-25 08:05:31.390 - error: host.MSNUC-IOB Caught by controller[0]: at internal/main/run_main_module.js:17:47
                                    2021-02-25 08:05:31.390 - error: host.MSNUC-IOB instance system.adapter.jarvis.0 terminated with code 1 (JS_CONTROLLER_STOPPED)
                                    2021-02-25 08:05:31.391 - info: host.MSNUC-IOB Restart adapter system.adapter.jarvis.0 because enabled
                                    

                                    Ich habe mal versucht bei JARVIS einen Upload oder auch zu deinstallieren, bekomme aber dann:

                                    $ ./iobroker upload jarvis
                                    ERROR: Installation broken or unknown states type: jsonl configured.
                                    ERROR: process exited with code 101
                                    
                                    $ ./iobroker del jarvis
                                    ERROR: Installation broken or unknown states type: jsonl configured.
                                    ERROR: process exited with code 101
                                    

                                    Hat jemand eine Idee?

                                    UPDATE: Jetzt ist alles kaputt....iobroker startet nicht mehr

                                    root@MSNUC-IOB:/opt/iobroker# iobroker start
                                    root@MSNUC-IOB:/opt/iobroker# iobroker status
                                    Installation broken or unknown states type: jsonl configured.
                                    root@MSNUC-IOB:/opt/iobroker#
                                    
                                    
                                    M dslraser crunchip 3 Replies Last reply Reply Quote 0
                                    • M
                                      msauer @msauer last edited by msauer

                                      UPDATE: Ich bin per Snapshot zurückgegangen und habe JARVIS erneut upgedatet. Dies scheint tatsächlich den iobroker zu "zerstören". Die Fehler kommen wieder und iobroker lässt sich nach dem stoppen nicht mehr starten.

                                      UPDATE2: Ich bin noch weiter zurückgegangen, also vor der JSONL Umstellung. Dann funktioniert der Update. Schon seltsam..

                                      apollon77 1 Reply Last reply Reply Quote 0
                                      • M
                                        msauer last edited by msauer

                                        Abseits der obigen Probleme, habe ich auch Änderungen in der CPU Last und dem IO Verhalten feststellen können.
                                        CPU Last hat sich verdoppelt, ok im unter 10% Bereich, aber immerhin.
                                        IO hat sich dagegen halbiert. Ich hatte redis/file mit optimierten redis parameter.Redis und iobroker auf dem selben Host.

                                        0e3d9877-a025-4b5d-a9de-9568ac5eec6a-image.png
                                        98514303-c375-4a23-a1b6-d1065cfa44b6-image.png

                                        1 Reply Last reply Reply Quote 0
                                        • dslraser
                                          dslraser Forum Testing Most Active @msauer last edited by dslraser

                                          @msauer sagte in EXPERIMENTELL: JsonL Datenbank für js-controller:

                                          seltsamen Fehler nach dem Update von JARVIS auf 2.2.0

                                          welche Version ist es denn genau ? Ich habe hier noch Jarvis 2.2.0-beta.17 laufen und hatte bisher noch kein Problem nach der Umstellung auf jsonl. Allerdings habe ich nach der Umstellung auf jsonl noch kein Update bei Jarvis gemacht.

                                          M 1 Reply Last reply Reply Quote 0
                                          • M
                                            msauer @dslraser last edited by msauer

                                            @dslraser Heute stand ein "normales" Update 2.2.0 in der Liste an. Das habe ich dann installiert.
                                            BETA/Latest

                                            iobroker Update jarvis from @2.2.0-beta.49 to @2.2.0
                                            
                                            L 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            499
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            20
                                            187
                                            16553
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo