Ankündigung

Einklappen
Keine Ankündigung bisher.

Datenarchiv exportieren

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Datenarchiv exportieren

    Kann man ein Datenarchiv in ein TXT/CSV File exportieren um es in Excel anzuschauen?

    Ich kenne mich in mysql nicht aus und habe daher noch nichts probiert, aber wenn ein Datenarchiv einfach eine Tabelle ist sollte man diese über einen Befehl auslesen können wenn es über die Edomi Gui nicht geht oder ist das nicht so einfach?

    #2
    Kann man - aber zur Zeit nur in "Handarbeit":

    1. Die ID des Archivs ermitteln: In der Konfiguration der Datenarchive findest Du in Klammern die ID des Archivs (hinter dem Namen)
    2. per SSH oder direkt auf dem Server folgenden Befehl ausführen:

    Code:
    mysql -e "SELECT * FROM edomiLive.archivKoData WHERE targetid=###ID### INTO OUTFILE '/tmp/export.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n';"
    ###ID### ist durch die in Schritt 1 ermittelte ID zu ersetzen, /tmp/export.csv ist die Ausgabe-Datei mit Pfad.

    Natürlich könnte man die WHERE-Klausel noch entsprechend ergänzen, z.B. um nur einen bestimmten Datumsbereich zu exportieren etc. Auch eine ORDER BY-Klausel kann ggf. nicht schaden, um die Datensätze zu sortieren:

    Code:
    mysql -e "SELECT * FROM edomiLive.archivKoData WHERE targetid=###ID### AND datetime>='2016-03-01 00:00:00' AND datetime<='2016-03-31 23:59:59' ORDER BY datetime ASC,ms ASC INTO OUTFILE '/tmp/export.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n';"
    Zuletzt geändert von gaert; 07.03.2016, 08:11.
    EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)

    Kommentar


      #3
      Genial, das werde ich heute Abend gleich probieren. Wenn das aktuell so bleibt würde ich das ins Wiki übertragen.

      Kommentar


        #4
        Gerne - das bleibt so
        EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)

        Kommentar


          #5
          Export funktioniert wunderbar, Danke!

          Damit ist ja die Struktur in der EDOMI DB auch klar und man könnte auch in selbiger Struktur ein csv mit "Daten vor EDOMI" generieren und diese importieren.

          dann aber noch die Frage in Richtung Import: Wie würde der Befehl lauten wenn ich Daten aus einer solchen csv in ein vorhandenes Datenarchiv ergänzen wollte?

          Geht das auch so einfach? Muss man da noch was beachten?
          Gruß
          Andi

          Kommentar


            #6
            Das geht so einfach leider nicht, da z.B. der Timestamp vermutlich in Deinen Daten nicht so vorhanden ist wie EDOMI diesen erwarten würde. Du müsstest Dir also ein kleine (PHP)Script bauen, das die Daten aus dem File holt und dann entsprechend konvertiert und in die DB schreibt.
            EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)

            Kommentar


              #7
              Wenn die Daten ins richtige Format gebracht wurden, kann Baustein 19000348 weiterhelfen.

              Kommentar


                #8
                Danke für eure Hinweise! Werde mal die Daten entsprechend dem Exportformat aufbereiten und dann mal den LBS ausprobieren!
                Gruß
                Andi

                Kommentar


                  #9
                  Zitat von Winni Beitrag anzeigen
                  Wenn die Daten ins richtige Format gebracht wurden, kann Baustein 19000348 weiterhelfen.
                  Hallo Winni,

                  habe nun mal einen export gemacht und diesen versucht wieder mit Deinem LBS neu zu importieren. Irgendwie gehen dabei die Zeitstempel verloren... In welchem Format erwartet Dein Baustein genau die Zeitstempel?

                  exportauszug:
                  "2017-01-20 21:46:14","808857","213","2116.244"
                  "2017-01-20 21:46:16","832237","213","2118.244"
                  "2017-01-20 21:46:19","194492","213","2118.244"

                  Wenn ich das im "insert Modus" in Archiv 213 einlese und wieder exportiere kommt dieses raus:
                  "2017-01-20 21:46:14","808857","213","2118.244"
                  "2017-01-20 21:46:16","832237","213","2118.244"
                  "2017-01-20 21:46:19","194492","213","2118.244"
                  "1970-01-01 01:00:00","213","213","2116.244"
                  "1970-01-01 01:00:00","213","213","2118.244"
                  "1970-01-01 01:00:00","213","213","2118.244"

                  sprich irgendwie vermute ich daß Dein LBS in der Datei wohl UNIX timestamps erwartet und nicht das Format der eigentlichen EDOMI DB Struktur wie in der Hilfe erwähnt? Welches genaue Format muss nun die Importdatei haben? Kannst Du eine Beispielzeile hier posten (ggf. hilft das auch in der Hilfe des LBS)?



                  Gruß
                  Andi

                  Kommentar


                    #10
                    Selber hab ich's noch nie gebraucht, aber kurz getestet.
                    Bist du sicher, dass du genau das gleiche Format hast? Die zwei gleichen Spalten irritieren mich. Außerdem wird es Probleme geben, wenn du Daten mit dem gleichen Schlüssel importierst.
                    Die Konvertierung der Datumsangabe in UNIX timestamps sollte automatisch funktionieren.

                    Kommentar


                      #11
                      nun ja, ich habe nur den export über den Befehl von Christian oben genutzt und dann das export.csv einfach mit Deinem LBS wieder direkt versucht zurückzulesen... Im delete Modus kamen dann auch nur die letzten drei Zeilen raus:

                      "1970-01-01 01:00:00","213","213","2116.244"
                      "1970-01-01 01:00:00","213","213","2118.244"
                      "1970-01-01 01:00:00","213","213","2118.244"

                      die Daten stimmen ja, Datum ist unix stamp 0 und bei den ms kommt offensichtlich die KO ID nochmal
                      Zuletzt geändert von tger977; 20.01.2017, 22:29.
                      Gruß
                      Andi

                      Kommentar


                        #12
                        Sorry, ich hab' keine Ahnung wie du deine Daten exportierst. Bei mir ist Datum und Uhrzeit getrennt:

                        Datum,Uhrzeit,Millisekunden,Wert
                        20.12.2016,22:15:17,296447,"1"
                        20.12.2016,22:20:17,277615,"1"
                        20.12.2016,22:25:17,420442,"1"
                        20.12.2016,22:30:17,320916,"1"
                        20.12.2016,22:35:17,398541,"1"

                        Das ist das Format welches man bekommt, wenn man in der Verwaltung ein Archiv runterlädt:
                        Download.jpg
                        Angehängte Dateien

                        Kommentar


                          #13
                          ok, damit ist es klar. Ich habe mit dem Vorgehen von Christian exportiert:

                          Zitat von gaert Beitrag anzeigen
                          1. Die ID des Archivs ermitteln: In der Konfiguration der Datenarchive findest Du in Klammern die ID des Archivs (hinter dem Namen)
                          2. per SSH oder direkt auf dem Server folgenden Befehl ausführen:

                          Code:
                          mysql -e "SELECT * FROM edomiLive.archivKoData WHERE targetid=###ID### INTO OUTFILE '/tmp/export.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n';"
                          ###ID### ist durch die in Schritt 1 ermittelte ID zu ersetzen, /tmp/export.csv ist die Ausgabe-Datei mit Pfad.
                          und damit kommt ein anderes Format (alles mit " " ) raus, das dann Dein LBS natürlich nicht korrekt verarbeiten kann...

                          Danke für den Hinweis mit der Exportfunktion direkt aus EDOMI heraus, kannte ich noch gar nicht und ist natürlich einfacher und komfortabler! (und hätte ich auch nie unter dem Menüpunkt "Live daten Statistik" vermutet/gesucht...)

                          Vielleicht hilft es tatsächlich in der LBS Hilfe genau einen Beispielexport hinzufügen aus dem man das genaue Format direkt sieht.

                          Danke für Deine Hilfe und Klärung!
                          Gruß
                          Andi

                          Kommentar


                            #14
                            Das Beispiel oben ist fast 1 Jahr alt - in der EDOMI-Zeitrechnung entspricht dies ca. 100 Jahren
                            EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)

                            Kommentar


                              #15
                              gaert gibt es mittlerweile eine "galantere" Lösung für den Datenexport?

                              Kommentar

                              Lädt...
                              X