Moin und herzlich Willkommen zu Folge 73 von Alpha komplex.
Nicht mehr dem Podcast für Software und IT Laien, sondern
ihr habt es vielleicht gemerkt, still und heimlich.
Es ist einfach der Software und IT Podcast geworden.
Und Moin Bock hat Moin Gerrit. Hallo ich grüße dich zur Folge
73. Genau so still und heimlich
wollten wir das nicht machen, diesen Wechsel.
Aber wir haben das Feedback bekommen, dass das mit den
Laien. Nicht so ganz passend wäre.
Und irgendwie haben wir uns das auch schon gedacht und das haben
wir jetzt zum Anlass genommen, unseren Podcast mal umzutaufen,
zumindest im Untertitel, aber der spielt ja eh eine
untergeordnete Rolle, von daher einfach komplex, bleibt erhalten
und wird euch auch hoffentlich noch weiß nicht einige Jahre
erhalten bleiben. Wie lange machen wir das
eigentlich? Weiß ich auch nicht, aber Gerrit
kurze Frage, Wir machen ne kleine Weihnachtspause oder weiß
ich. Nicht also wahrscheinlich schon.
Machen wir einfach mal 3 Wochen Pause oder sowas.
Im neuen Jahr gibt es dann einfach eine frische Folge von
uns, ne. Genau.
Fühlt euch nicht überrascht, wenn es da irgendwie zwischen
den Weihnachtsfeiertagen, da vielleicht nicht der ganz der
normale Rhythmus ist und wir dann nächstes Jahr wieder frisch
da sind. Ja, ihr hört auch schon so ein
bisschen ich bin ich bin meine Stimme ist ein bisschen
angeschlagen, wie wahrscheinlich viele von euch vom Herbst ein
bisschen angeschlagen sind, aber das soll uns nicht stören,
solange ihr mich verstehen könnt, reicht das ja erstmal.
Also sie ist nicht viel tiefer als deine Stimme sonst Bock hat.
Ja, schade eigentlich, aber ein bisschen nasala vielleicht.
Ich. Ja, vielleicht, das kann ja OK,
gut, jetzt haben wir viel gelabert, also Leute für heute,
das Thema ist influx DB ich würd sagen ist noch mal n Kracher
mein influx DB muss ich sagen begleitet mich jetzt schon
einige Jahre also kann ich arbeite jetzt so 56 Jahre im
Bereich Software so und irgendwie hat das immer ne Rolle
gespielt ne gerade für Zeitreihen Zeitreihen Daten
aufzuzeichnen dann auch in Kombination mit anderen Tools
diese zu visualisieren wiederum oder ja in irgendeiner Form
abzurufen. Also es war eigentlich immer n
Thema und ich hab das immer komplett als Open Source
Datenbank wahrgenommen, die es ja auch erst mal ist.
Aber es steckt natürlich noch n bisschen mehr dahinter und wir
wollen uns heute glaub ich die Firma angucken die dahinter
steckt. Noch mal kurz und dann halt
insbesondere das Open Source Projekt Influx DB Telegruppe
nehmen wie man es einsetzt wofür es da ist und was das auch ja
was sie so erfolgreich macht und so besonders denk ich mal oh
Gott passt das. Ja, passt hervorragend.
Genau. Ja, du sagst es Gerrit Ja
Zeitreihen ne du hast das Wort schon in den Mund genommen, das
ist genau das ne, also es ist die Zeitreihendatenbank was
heißt die ja also es gibt natürlich auch noch andere, die
lassen aber heute gleich mal alle weg, ich mach auch keinen
Vergleich wie das letzte Mal mit postgress und so weiter da hab
ich ja, da war ja die der Ansatz der Folge auch noch n bisschen
anders wo wir gucken wollten warum postgress und das können
die anderen heute gucken wir wirklich nur influx DB und es
wert genug ist anzugucken. Weil es in sich n großer Player
ist. Ja genau, zeitreih ist halt voll
was nieschiges ja und warum? Ja weil wenn wir über
Datenbanken sprechen heißt ja immer erstmal wir wir sortieren
und speichern quasi Daten also wir schreiben irgendwas rein um
es dann später auch wieder rauszuholen um es strukturiert
rauszuholen, ja um um irgendwelche Konditionen
rauszubringen ja also wenn wir die relationalen Daten haben,
dann haben wir meistens verschiedene Tabellen und dann
dann wollen wir Informationen haben, die über Tabellen hinweg
sind und sind wir relational und so und ganz viele Probleme.
Sind Relational, das heißt relationalen Datenbanken, sind
wir sehr gut unterwegs, aber es gibt da dieses eine Problem, und
zwar immer wenn mein Use Case so ist, dass meine Daten
grundsätzlich erstmal ne Zeitreihe sind.
Ja und das passiert, das passiert gar nicht so oft, aber
es passiert schon bei gewissen Sachen immer und das ist immer
wenn wir Sensoren zum Beispiel auslesen, also im kompletten IOT
Bereich ja also alles was so Sensorik ist, ja das ist.
Das hat halt immer einen Zeitstempel dran.
Ja, und ich will halt immer irgendwie so Fragen stellen wie
Ah wie sah denn, wie sah denn der Druck aus im letzten Monat
ja hatte ich Ausreißer oder nicht oder sowas ja oder wie hat
sich die Temperatur entwickelt mit meiner Gartenlaube ja war
das irgendwie unter 0 war er mal vielleicht beim Frost oder sowas
ja und immer dann habe ich halt Daten ja deren erster
Eigenschaft quasi ein Zeitstempel ist ja also ein
Zeitstempel und der Wert natürlich ja und da hat sich
halt influx DB. Als als die Lösung entwickelt ja
die schon lange. Irgendwie find ich ganz relevant
im Markt ist ja und halt Open Source, ja was gehört dazu, hast
du auch schon gesagt. Das hast du schon IT als Use
Case gesagt, aber kann man das nicht noch allgemein erfassen?
Irgendwie wo es irgendwie so um Logging geht von von sich
verändernden Werten? Also ich dachte auch gerade an
sowas wie Überwachung von Servern oder solche Geschichten
könnte es sich auch anbieten, eigentlich ne.
Ja, voll. Das ist der nächste große use
case, ne. Also wir haben ja.
In der IT Welt ja quasi auch die IT.
Die Rechner, die uns selber diese ganze IT Möglichkeiten
bescheren, also große Rechenzentren und so weiter die
haben genau das ja, da willst du halt auch überwachen.
CPU Last Memory, Last Disk Space und so weiter also alles was
monitort ja über ne Zeit hinweg und da ist auch influx DB ein
eine typische super Lösung ja für für genau sowas ja kann ich
halt meine ganzen Daten rein reinhängen ja auch dann die.
Ja, die Auswertung dagegen ja, die sind halt anders, die haben
halt immer irgendwas mit Zeitintervallen zu tun und
Aggregation und so weiter und sofort ja und genau das haben
sich halt, die hat sich die Firma, die hinter influx DB
steht auf die Fahnen geschrieben das gut zu lösen ne und
angefangen haben die 2013, da hieß die Firma noch nicht mit
irgendwas mit Influx also weder das Produkt hieß so noch die
Firma selbst ist auch jetzt nur wieder mal Wikipedia wissen für
euch hinaufbereitet also die Firma hieß sagen wir Airplane
ERR plane. Also wie das englische Flugzeug.
Und gestartet haben, die haben die 2013, so jedenfalls
Wikipedia. Ich habe auch ein paar andere
Daten gefunden, 2012 weiß ich nicht ganz genau, ich habe jetzt
nicht ins Handelsregister geguckt, geht vielleicht auch
nicht mehr, weil es die Firma nicht mehr gibt, die wurden
umgetauft, aber sowas wie 2012 2013 hat das ganze Ding
gestartet und dann habe ich ein bisschen weiter gelesen, was ich
total krass fand, das sage ich immer kurz vorneweg, ist ja also
es ist eine Firma die sich auf die Zettel geschrieben hat als
Kernprodukt ein Open Source Produkt zu machen und.
Und dann als Geschäftsmodell drumherum Services anzubieten,
wie das ja oft so der Fall ist. Also diese ganzen Cloud Cloud
Solutions und und und und Beratungsleistungen und so
weiter, die werden dann quasi monetär abgebucht, aber das
Produkt selbst ist halt Open Source und dennoch hat die Firma
das geschafft. Ein ziemlich beachtliches
Investment Ranzuziehen über die Zeit, ich gehe das noch mal kurz
durch, also die haben das Serious a hingelegt.
Noch relativ früh, wahrscheinlich 2013, 14 oder
irgendsowas. Hab es mir nicht aufgeschrieben
von 8,1 Milliarden Dollar nicht Milliarden Millionen Dollar.
Also 8,1 ist ja schon mal nicht schlecht für ne CUSA, dann
wurden die in 2015 irgendwann zu der Firma, die wir heute so
kennen, Influx Data nämlich mit dem Produkt influx DB.
Und haben danach noch mal n paar Series gerissen.
Also ne Series b mit $16000000 ne Series c mit $35000000, ne
Series d mit $60000000 und jetzt ganz aktuell ne Series e mit
noch mal $81000000. Das finde ich, das hat mich n
bisschen überrascht, weil das finde ich schon ganz schön
beachtlich für für so ne Firma die n Open Source Produkt macht.
Ja was hast du Gerrit als als du bist ja mehr der Businessmensch
bei uns als als ich, aber ich fand das schon ganz schön coole
Zahlen so. Ja, es ist aber jetzt noch nicht
so, dass es so unfassbar krass ist.
Ehrlich gesagt von zahlen her was was, was die reinen
Finanzierungsrunden angeht. Und ich glaube, das ist auch n
relativ gängiges Modell. Du entwickelst also gerade auch
im Bereich Datenbanken, Du entwickelst halt n cooles
Produkt, machst, stellst es Open Source und bietest dann halt.
Was du eigentlich Anbietest, ist ja dieses Produkt als Managed
Service. Also du kannst einfach in deinem
Amazon ABS, Azure oder oder sonst.
Wobei der Google Plot sagen Buch, ich nehm mir ne Datenbank
hinzu, die rennt dann entweder dort drinne mit oder ich mach es
sogar direkt bei. Jetzt heißt die Influx Data
glaub ich die Firma ne nicht mehr airplane.
Influx Data? Ja, genau.
Mach es halt direkt bei denen und alles ist gelöst.
Ja, ich kann einfach an irgendeinen Ort alles
hinschieben und dann von da wahrscheinlich über ne einfache
abfragesprache Abi, was auch immer wieder die Sachen
rausziehen, das ist ja eigentlich der.
Der Kern und und und. Dann muss es halt irgendwie
schneller sein oder einfacher oder sowas als mit anderen
Datenbanken. Wenn ich andere also es gibt
schon häufiger das Modell, ich glaub bei Mongo DB ist es zum
Beispiel auch so und es ist relativ gängig Open Source etwas
zu machen und dann aber es schaffen nicht viele, du kennst
natürlich nur die, die es am Ende schaffen und die die werden
natürlich sehr gut und. Groß, das stimmt.
Aber es gibt natürlich auch, wir haben ja auch schon oft über
Open Source Projekte, die auch sehr relevant sind, sag ich mal
diskutiert. Gut, die dann entweder von ganz,
ganz großen Firmen sind, aber es gibt natürlich auch so, ich sag
mal Open Source Projekt, wo sich n paar Entwickler
zusammengeschnitten haben und du hast ne github Community
aufgebaut, aber da steht halt keine Firma dahinter, die halt
irgendwie insgesamt mal irgendwie 160000000€ Dollar
geraced hat. Ja insofern also ich fand ich
finde immer so was ist ja auch ganz schön mal zu wissen, dass
da so was dahinter steht, denn das ist ja immer die zweite
Frage, wenn ich mir n Produkt aus dem Schrank nehme, da das
aus dem großen Schrank der Open Source Software.
Angebote Wer steht denn eigentlich dahinter und wie
nachhaltig ist das? Kann ich das produktiv einsetzen
und bin auch noch die nächsten 5 Jahre safe?
Ja und also hier steht jedenfalls ne relativ große
Firma dahinter, die halt auch n paar Millionen eingesammelt hat
und da arbeiten auch n paar Leute dran, die können auch n
bisschen was machen und die nehmen halt auch Einfluss auf ja
auf Toolings und so weiter das ist ja immer, das haben wir auch
gelernt, du hast natürlich n zentrales Produkt hier ist halt
diese Zeitreihendatenbank. Aber es gibt natürlich zig
Toolings drumherum, die vielleicht auch Open Source
sind, und die nehmen natürlich Einfluss darauf.
Und also, und zwar im positiven Sinne, weil die diese Tools
natürlich auch so entwickeln, dass die gut passen auf ihren
auf ihre Zeitreihen Datenbank. Ja und und so weiter und sofort
also toolings sowas wie Visualisierung und so weiter.
Mhm OKOK ja, ich glaube tatsächlich, also ein Tool, was
ja oft dann auch damit einherkommt ist ja sowas wie
graphana. Genau denen ist es sogar auch
ähnlich, ohne dass ich das jetzt genau wüsste, aber.
Na ja gut, das ist so Company ne, dann warst du jetzt gesagt,
OK, die haben 160000000 eingesammelt.
Hast du noch umsatzdaten oder sowas recherchiert?
Ja, hab ich recherchiert, hab ich extra für dich recherchiert.
Also ich hab gefunden, die haben ungefähr um und bei 2000 zahlen
der Kunden und so weiter und große sowas wie Tesla, Cisco,
IBM und Siemens und so und Umsatz wohl irgendwie 17 Komma
$3000000 in 2021 und jetzt ganz aktuelle Zahl verhaftet mich
aber nicht, hab ich aber gefunden als Quelle 47,3.
Millionen Dollar Umsatz in 24 ja, ja, bewerten tust du das ich
ich sag es, hab es einfach mal nur vorgelesen ne wertfrei ja
also jedenfalls machen sie n bisschen Umsatz würde ich sagen
ja. Genau, aber das ist ja jetzt nur
n Randthema für uns eigentlich. Ne, ganz genau, wir wollen ja n
bisschen in die Technik einsteigen, das tun wir jetzt
auch. Jetzt haben wir mal kurz was,
aber es ist ja auch mal schön zu wissen, wo kommt das her sortier
ich das ein? Ne, ich find das vor allem gut
was du gesagt hast. OK, das ist n Open Source Tool,
aber da steht Dediziert eine Company dahinter, für die das
halt das Kernthema ist. Es ist nicht das 195.
Open Source Projekt für die Firma Meter oder sowas was die
halt auch gerade mit Mentain, sondern es ist halt das eine von
und deren Business hängt davon ab ne.
Also man kann sich schon drauf verlassen wenn man es jetzt.
Einsetzt. Ja, das ist so genau, das ist so
und jetzt mal ich, ich hab so n ganz leichtes ja gesagt, weil
ich heute morgen hab ich was gesehen, was ich gar nicht so
schön fand als Softwareentwickler und das teilt
wahrscheinlich andere auch mit mir aber.
Und das hat damit zu tun, mit den Produktversionen.
Dazu sage ich jetzt sofort, was es ist nämlich so, dass ich
immer gedacht habe, es gibt genau 2 influx, es gibt die
influx DB 1 Punkt x, also alles mit 1 vorne, die Major Release 1
Punkt X, die ist schon ein bisschen älter und nicht mehr,
die aktuelle wurde damals in Go geschrieben und hat funktioniert
und so weiter und dann gibt es schon seit einer graumen Zeit 2
Punkt x ist auch die Version die wir nutzen im produktiven
Einsatz auch noch in Go. Und wir werden alles, was wir
heute besprechen, alle Konzepten, alle weiteren
technischen Sachen an 2 Punkt x hängen und da hab ich heute
gelesen, das wusste ich bis bis vor kurzem noch nicht, dass
jetzt auch an 3 Punkt x gearbeitet wird mit einer
komplett neuen Ausrichtung, also also mit einer ganz anderen
erweiterten Zielsetzung, was ich so erfüllen möchte mit meinem
Kernprodukt, ja. Mit angeblichen kompletten
Umschrieb der Kernsoftware muss man sich mal überlegen, das ist
ja kein kleines Projekt und das haben die jetzt von Go auf
umgesetzt auf Rust. Also jetzt sind 3, soll
irgendwas in Rust kommen, auch mit neuen Konzepten und so
weiter auch die Abfragesprache sogar das sag ich mal nur kurz,
also eine Datenbank hat ja immer mal, musst du irgendwie
reinschreiben und dann haben wir ja eine Abfragesprache, die ist
SQL bei den. Bei den relationalen Datenbanken
hier haben wir kein SQL, das ist eine sogenannte No Sequel, wie
man auch so schön sagt Datenbank, aber man muss ja
trotzdem irgendwie eine Abfrage machen können, sonst wird es
langweilig und es gibt von Influx DB oder von der Firma
Influx Data entwickelt die Abfragesprache Flux, da kommen
wir nachher noch ein bisschen im Detail zu, was eine krasse
Eigenentwicklung ist. Eine ziemliche hochsprachige
Skriptsprache, die halt ja auf dem Level wie SQL rangiert.
Ja, und das haben die mal kurz selbst erfunden.
Und angeblich soll flux sich aber nicht durchgesetzt haben.
Was ich gelesen hab und in 3 schon wieder rausfliegen, was
natürlich ne mittelschwere Katastrophe ist für Entwickler,
weil man hat ja gerne, also man ist ja faul und man hat dann
irgendwas laufen und das aktuellste Maintaint, das quasi
nicht mehr und man muss schon wieder irgendwie nachdenken und
sich einlesen und was Neues machen ne, deswegen hab ich so n
kurzes ja gesagt, es ist irgendwie ne große Firma
dahinter aber uh da passiert irgendwie was vielleicht in
Zukunft, aber vermutlich wird 2 lange maintaint werden ne also
insofern. Das ist.
Interessant, dass du das mit dem SQL und dem dem Flux sagst, weil
wenn du auf auf die Website gehst von Influx Data und dann
unter dem Produkt Influx DB Cloud guckst also das The
Managed Service von Influx Data, die sagen dort query Data using
SQL for Realtime Insights, also die Werben direkt im Hero Text
damit, dass du SQL schon nutzen kannst.
Weil du, weil du dir die 3 Punkte anguckst.
Da die Cloud Version der 3 Punkte.
Da geht es wieder. Nämlich das hatte ich ja gesagt,
die Flux Sprache hat sich nicht so durchgesetzt und man geht
wieder zurück zu SQL ähnlicheren Statements oder vielleicht sogar
pro SQL, da bin ich jetzt gerade technisch überfragt, man hat es
hat man hat halt irgendwie erkannt also ich glaube man hat
das gut gemacht das flux ich kenn das im Detail wir sprechen
wir sprechen das, ich find das gar nicht, ich find das gar
nicht doof, ist natürlich total mutig und total groß sowas.
Sowas wie SQL quasi was so n krasser Standard ist.
Ja, das ist wie irgendwie wie n Kapitel wie n Simon in der
Bibel. Ja ist SQL also in der
Softwaretechnologie ist einfach gesetzt, ja und da einfach mal
als Firma, selbst wenn ich irgendwie ne große Firma bin und
hab n bisschen Investment bekommen einfach mal n anderes
Produkt gegenzusetzen und zu hoffen, dass sich das
Durchsetzen in der Community kann funktionieren sie sagen
selber ich hab n Artikel gelesen auf der Webseite in in den in
den Whitepages und Blogspots von von Influx Data selber.
Dass sie n bisschen enttäuscht sind, oder was heißt enttäuscht?
Also einfach hat anerkennen müssen, dass sich flux nicht so
durchgesetzt hat, wie sie gedacht haben und eine einfach
zu kleine user Community das nutzt um das Halt weiter
durchzupeitschen. Ja damit verlieren sie ihren
Boden, wenn sie das irgendwie, wenn Sie darauf bestehen und
deswegen und deswegen jetzt noch mal ne leichte Umorientierung.
Kill your Darlings fällt mir dann ein.
Kill your darlings, ja. Ja, es ist auch nicht so, dass
das exklusiv nur mit Flux abgefragt werden kandidatenbank
es gibt es gibt noch andere SQL ähnliche Sachen, aber flux ist
halt für die Version 2, von dem wir heute sprechen, die
Abfragesprache und intern alle UIS die es auch gibt von von
Influx Data selber basieren alle auf dieser influx Sprache, OK so
viel dazu, ja ja genau, ich würd sagen, wenn du wenn wir jetzt
erstmal keine allgemeinen Fragen haben würd ich nur kurz
vorausschauen was wir machen wollen noch ich würd.
Gerne mit dir quasi auf die interne Organisation der Daten
und so weiter gucken wie das so läuft und dann würde ich einmal
kurz das Schreiben und das Lesen anschauen in der Datenbank und
noch so n paar extra Toolings und Features und dann n paar
Tipps geben irgendwie wie man das wie man einfach mal
einsteigen kann und es mal schnell ausprobieren um mal n
Gefühl zu kriegen was da los ist.
So ja und? Vielleicht sollen wir dazu
sagen, dass wir das natürlich auch bei uns verwenden.
Ne, wenn du das nicht noch machen willst und tief eingebaut
haben, um ja jede. Zeit rein, um eigentlich
aufzuzeichnen. Mit n paar Klicks bei uns.
Ja, das stimmt gerade. 222 Klicks und einen einen, einen
kurzen Namen vergeben, das war es eigentlich schon, was du bei
uns machen musst. Von daher kennen wir das auch
ganz gut. Also ich als Anwender, du als.
Richtig, richtig. Ich hab es also richtig
tatsächlich produktiv eingebaut bei uns, das ist wahr, deswegen
würd ich sagen, bin ich immer noch kein Experte, weil es
extrem mächtig ist und wir auch nur n kleinen Teil davon
benutzen. Aber ja, also deswegen, das
stimmt und wir haben, das ist halt auch noch mal wichtig, wir
haben im Prinzip 2, demnächst 3. Wir haben im Prinzip 2
Datenlayer bei uns eingebaut und das macht halt Sinn, ne also für
die relationalen Daten, für die relationalen Zusammenhänge haben
wir quasi ne Postress intern immer da und dann für alles was
nicht relational ist, bieten wir dann halt sagen wir halt OK,
dann speichert das bitte nicht nur ne postress, sondern nehmt
vielleicht ne influx ja der manchmal ist es gar nicht so
einfach zu entscheiden. Und das ist ne Architektur
designfrage wann wechsel ich denn von einer relationalen
Datenbank auf eine explizite Time Serious Datenbank?
Ja weil die Sachen sind ja nicht 0 unter 1.
Ja also du hast so ne so ne so ne leichte Graustufe wenigstens
so n gradient dazwischen. Ja es gibt so Probleme, da muss
ich dann auch überlegen was ist denn besser oder was nicht weil
du kannst natürlich in Postpress oder oder überhaupt in SQL
Datenbanken ja natürlich auch Zeitserien aufzeichnen.
Und wenn das, wenn das eine gewisse gewisse Größe nicht
übersteigt, ist das auch gar kein Problem.
Ja, ein Problem wird es dann wirklich erst und deswegen gibt
es das. Wenn du wirklich, ich sag mal
was jede Sekunde einen datenpunkt aufnimmst.
Ja und nicht nur einen, sondern vielleicht vom Rechenzentrum pro
Sekunde über alle CPUS und alle Mems und alle Disspaces einen
datenpunkt aufnimmst, ja dann kommt und das machst du pro
Sekunde, dann kommt pro Minute pro Stunde pro Tag pro Monat mal
Datenpunkte richtig Holz zusammen, ja.
Und da brauchst du also, und das werden richtig viele große
Datenfelder und und Punkte und das reinschreiben ist vielleicht
auch noch nicht mal das größte Problem, das würde glaub ich ne
ne postwars auch gut können. Aber wenn du jetzt, wenn du
jetzt richtig elegante Abfragen machen willst die die so schnell
sind, dass du quasi in Echtzeit sofort nen Plot gerendert
kriegst, das erwartest du ja heute von der Software, du sagst
ja, du hast ja quasi nur noch einen Slider, sagst zeig an
letzten Monat und dann musst dann zählst du einfach nur noch
bis 1 und dann soll sich schon der Plot rendern, ne?
Dann musst du gewaltig gewaltig schnelle Abfragen machen und da
wird es so sein, dass bei einer gewissen Anzahl an Datenpunkten
und Größe von Problemen deine Postquest nicht mehr mitkommt
und da outperformt dann halt sowas wie influx DB eine
relationale Datenbank bei bei Faktoren also das wird dann das
kriegen die Halt in Sekunden, also Bruchteilen von Sekunden
gelöst. Wo du dann anfängst bei
Postquest wirklich zu zählen und zu warten und und 3 Sekunden bis
so ein Diagramm da ist ist schon halt zu lang, das geht halt
heute eigentlich mehr. Ja so, deswegen ne OK, ja genau
dann haben wir das eingebaut. Wir haben wir haben, ich sag das
noch die wir haben als drittes arbeiten wir gerade dran, ist
noch nicht voll freigeschaltet, aber wir haben noch ne
Blockchain ne ne Blockchain ist ganz ähnlich wie ne Time Serie
bloß manipulationsfrei hatten wir mal eigene folgen wer da
Lust hat kann da mal reinhören ne?
Wenn wir sagen, wir haben das eingebaut, wir reden hier von
der Heisenware unserer Low Coop Plattform, wo man selber Apps
bauen kann, weiß vielleicht nicht jeder unser Zweitbusiness
nach dem Podcast. Wenn wenn ich gerade Podcast
mache, ja genau, genau, genau gut, prima, du wolltest jetzt
erzählen, wie sieht die Datenstruktur aus oder die
Struktur in so einer influx DB ne.
Genau das ist n, da müssen wir n bisschen mal durchgehen und das
ist n bisschen komplexer als jetzt bei einer relationalen
Datenbank. Da hab ich eigentlich im Prinzip
bei einer relationalen Datenbank, ich sag es noch mal
kurz, da hab ich im Prinzip die ja die Datenbank, ja die kann,
die kann n Namen haben, ja und dann hab ich in der Datenbank
Tabellen. Verschiedene Sorten, also sowas
wie Users, Products und so weiter das kennen wir alle und
in den Tabellen hab ich quasi die Reihen Rose, da sind halt
die einzelnen Einträge. Ja und da bin ich eigentlich
schon durch die Organisation von, also durch die
Datenstrukturorganisation einer relationalen Datenbank.
Ja, bei Influx sieht es anders aus, wir fangen ganz von unten
an. Ja ich glaub das ist einfacher
zu erklären ne wir fangen mal die Hierarchie von unten an,
arbeiten uns hoch an, schritten ne also was was ist denn der?
Der kleinste Atomische Wert, den ich in der Influx Datenbank
einspeichern kann. Der Fachbegriff von Influx
selber Gecoint heißt Point, also Data Point quasi, aber es heißt
tatsächlich nur akkurat gesprochen Point, also ein Punkt
und ein Punkt hat hat jetzt ein paar Eigenschaften, der Punkt
braucht als allererstes mal einen Timestamp, also einen
Zeitstempel der. Der Timestamp nur mal nebenbei
gesagt ist der Primary Key in einer influx Datenbank.
Das ist also der während während wir in einer relationalen
Datenbank irgendwelche id s haben oder irgendwelche unique
id s oder vielleicht mal in einer e Mail oder sowas.
Primary Key ist halt der Primary Key, festgelegt ist immer der
Zeitstempel auf dem ich dann schnell suchen kann und der
Zeitstempel, es wird aufgelöst. Das ist interessant, das kann
man mal wissen, Spaß also es geht es ist der Unix.
Timestamp sind es Epok hatten wir auch schon mal die die Epok
ist der 1. Januar 1970 und und der Linux
timestamp wird eigentlich ausgedrückt in Millisekunden
seit 1. Januar 1970 das sind schon n
Paar, ja wird immer hochgezählt einfach mal weiter und war aber
in der influx Datenbank weil die n bisschen akkurater sein muss
von der Zeitauflösung her sind es die Nanosekunden seit dem 1.
Januar 1970 ja also. Den relativ großen Datentyp in
die Hand genommen, weil das, das ist eine ziemlich große Nummer,
das kann man sich vorstellen. Also sind das 10000 oder
Hunderttausendstel von einer Sekunde.
Ich glaube, es kommt ja erst was.
Haben wir denn also Sekunde, dann haben wir Milli, dann haben
wir also Milli ist ja schon eine Tausendstel, ne, dann haben wir
ein Mikro und dann haben wir noch nano, also es ist
irgendwie, dann lass mich nicht lügen, ich glaube hoch -9 oder
irgendsowas. Ist schon kleine Einheit, also
eine große Nummer. Sagen wir es mal so.
Ja so, also den Timestamp ist ganz klar und dann brauchen wir
einen sogenannten Feel it Key, also den quasi den den Namen der
Messung, also zum Beispiel Tembridge, und der braucht einen
Wert 23,7 keine Einheit also, also erstmal nur Zeitstempel am
so und so vielen Namesekunden nach 1970 habe ich gemessen das.
Tembridge von mir aus als als Field wert und dann 23,9 ja, ich
könnte auch sagen Value oder wert oder irgendwas.
Egal kann ich mir aussuchen ne und und dieses also das nennt
sich Field Field Key und Field Value, ganz ähnlich wie man auch
Field sagt in der Datenbank ne also das ist der der Fachsprech
und jetzt habe ich im Schönen im No SQL Thema Ich habe sonst kein
weiteres Schema ich habe jetzt noch die Tags das ist aber ein
wichtiges Konzept ja also ich habe.
Und die Tags sind einfach Key Value Paare, beliebig viele, die
ich in einen Punkt reinklatschen kann.
Ne ich und die werden typischerweise genommen für für
zum Ausdrücken wo genau irgendwie was ist.
Ja also ich könnte zum Beispiel Tag könnte zum Beispiel also
wenn ich zum Beispiel sage Tembridge ja, dann könnte ich
als Tag sagen, City und der Wert wäre dann Hamburg, ja und dann
könnte ich irgendwie noch sagen irgendwie Night oder Day oder
gut, da können Sie sagen irgendwie Zeit time.
Oder Irgendsowas. Ja, also kann ich mir, kann ich
mich völlig frei aus toben und kann Text geben, ja.
Also so so das. Es gibt ja Kontext dem
eigentlichen Nasswert genau quasi und ich wollte dich mich
grad schon fragen wie du gesagt hast Tembracher ist das nicht
eigentlich n schlechte Benennung für so n Punkt jetzt weil es ja
so super generisch ist und überhaupt nichts aussagt, aber
du würdest dann tatsächlich das beschreibende Element in diese.
Tags setzen und wenn Sie es beschreiben.
Genau. Und wenn man es jetzt technisch
ausdrückt und man sich unsicher wäre, was ist denn jetzt n Field
und was ist n Tag, da kann man sich einfach vorstellen das
Field ist halt eigentlich das Feld was sich ständig ändert.
Also weil ich hab Prinzip mit jeder Messung n neuen Field
Value weil ich ne neue Temperatur aufnehme.
Gut es kann schon sein, dass es n paar mal 23 Grad ist, aber hab
ich jetzt zwar n ziemlich genaues Thermometer, dann ist es
halt andauernd bisschen unterschiedlicher also es das
Field ist dafür gemacht sich ständig zu ändern, bei jedem
Punkt während die tags. Sich ändern können, aber
eigentlich ändert die sich nicht so oft.
Ja so und dann dann bin ich fertig, dann habe ich einen
Datenpunkt geschrieben, ja, also ich habe quasi den Zeitstempel,
ich habe einen Field Key mit deren Value und und und die tags
ich brauche auch keine Tags, kann man weglassen wenn ich es
einfach mache so und jetzt ist es so, dass einen dieser
Datenpunkt, den ich jetzt einmal definiert habe, der wird wo
reingeschrieben, ja in ein sogenanntes Measurement, ja.
Das ist die Messung ja und n Measurement Measurement hat halt
einfach einen oder mehrere Datenpunkte.
Ja und n Namen ja das könnte jetzt zum Beispiel Temperaturen
heißen oder irgendsowas ja ich könnte zum Beispiel das
Measurement in Tembritures ja und dann hab ich als Field im
Point hab ich zum Beispiel einfach nur stehen Value ja und
dann hab ich noch n paar tags ja welche Stadt und so weiter ja.
Angenommen ich, ich bau mir jetzt so NIOT use Case auf, hab
vielleicht 3 Sensoren verbaut, einer für.
Temperatur also Wetter jetzt meinetwegen und eine für
Luftdruck und ne andere für Windgeschwindigkeit oder so.
Dann würde ich dann 3 measurements mir aufbauen wo ich
dann jeweils einen Sensorwert als Zeitreihe drin habe oder?
Das ist das schwierige bei influx du kannst, du kannst es
machen, du kannst 3 Measurements aufbauen, du könntest auch ein
Measurement sagen, wo du sagst IOT Data nennst du das n
bisschen n bisschen genereller, das musst du mal dann gucken.
Ja und dann baust du quasi. Dann machst du aber mehrere Data
Points in das hast du quasi 3 Data Points und dann sagst du
zum Beispiel splittest du zum Beispiel auf entweder nach Typ
zum Beispiel Templature Pressure hast du gesagt und was hast du
noch gesagt, irgendwie. Win Speed, oder?
Win Speed von mir aus ja, also könntest du quasi dann die die
Datenpunkte quasi so aufsammeln oder du packst halt sogar in den
Datenpunkt mehrere Tags dran. Ja und sagst halt was das gerade
ist und so weiter ja das Macht das n bisschen komplex.
Weil du, weil du durch diese tags und die Measurements hast,
relativ viel Freiheiten und es gibt aber auf der da kann man
mal gucken, wenn man auf die influx DB Dokumentationen gibt,
gibt es Best Practices, weil die selber wissen die Jungs von
Influx Data, dass es manchmal gar nicht so einfach ist zu
entscheiden, was wird denn jetzt hier wie organisiert?
Ja organisiere ich mich nach Sensor, organisiere ich mich
nach Einheit der Messung. Oder pack ich Sachen mehrere
mehrere Sachen zusammen, indem ich die Tags benutze?
Ja, ich kann nämlich, ich kann nämlich auch mehrere Fields
haben. Ja also Field sind Key Value
pairs. Ja ich kann also auch n Field
templager haben und dann hab ich das Field Pressure und das Field
Win Speed ja das geht alles ja und der Datenpunkt das muss ich
auch noch mal sagen, also strukturell technisch, also
Computer Science mäßig gibt es eigentlich nur die Tags die
Field und die Timestems und n datenpunkt ist eigentlich mehr
so n. Ja ne Definition ne die ich
vorher gesagt hab. N Datenpunkt ist halt immer
genau dann wenn ich sage das gehört einem einem bestimmten
Messung ein Measurement ja hat einen oder mehrere Tags aber
einen bestimmten Field Namen ja das formuliert man als Punkt ja,
aber im Prinzip kann das trotzdem alles nebeneinander
existieren ja kannst du alles reinpacken o.
K aber jetzt mal so so rein logisch.
Wenn ich jetzt ne Wetterstation hätte mit 3 Sensoren dran.
Die ja logischerweise immer im gleichen Ort und immer zur
gleichen Tages, also Nachttag oder so.
Also die Tags sind ähnlich, aber 3 Werte, die würde ich klingt
erst mal logisch, den 1 in Measurement einzupacken.
Ja da hab ich dann, so stell ich mir so n Array aus Daten vor du.
Würdest in einen Measurement packen und vielleicht sogar und
dann würd ich sogar sagen, weil also wenn die wenn das ne
Wetterstation ist und die würde ja quasi immer diese 3 Messungen
auf einmal machen, dann würd ich sagen die haben vielleicht sogar
den gleichen Timestamp ja. Weil macht ja keinen Sinn, denen
auch noch irgendwie verschiedene Timestamps zu machen.
Du willst ja vielleicht sogar Auswertungen machen, wo du dann
über diese Zeitstempel quasi immer diese 3 Werte hast.
Dann kannst du irgendwie Korrelation machen oder irgend
so was. Ja das kannst du alles machen
mit influx DB. Dann würdest du sagen es gibt
einen Zeitstempel und dann gibt es mehrere Field Keys, ja dann
würdest du als Field Key sagen halt genau tembriture Pressure
und Win Speed und packst das alles quasi zusammen und
vertaggst das ordentlich mit und dann sagst du noch wo deine
Wetterstation steht und dann hat vielleicht Innentemperatur und
Außentemperatur ja. Temperage Inside könntest du
dann sogar noch machen und temperage outside und dann
vertext du noch ein paar Sachen dran und dann kriegst du das
alles zusammengeregelt aber das Measurement könnte quasi ein
einfaches Wort sein. Also hier an der Stelle muss
man, muss man tatsächlich und da muss man sich ein bisschen
eingrooven, ich sag es mal so, also man kann es ja, man kann
das sehr komplex machen mit den tags, ich sag noch was zu den
Tags, die Tags sind immer indiziert, also alle, die jetzt
ein bisschen technischer unterwegs sind, man kann ja bei
den Datenbanken kann man die suchen.
Die Anfragen der Suchen optimieren, indem man sagt, ich
indiziere bestimmte Eigenschaften ja jetzt in der
relationalen Welt, da sag ich in der Tabelle so und so mach ich
quasi ein Feld, ein bestimmtes Feld mach ich zu einem Index,
dann hat die Datenbank n bisschen mehr Arbeit und braucht
vor allen Dingen mehr Memory, weil es quasi sich dieses diese
eine Spalte anguckt, dieses Feldes und im Speicher vorhält,
und dann kann ich ganz schnell abfragen machen, weil weil ich
nicht quasi in einem Vorlub durch jedes Durchgucken muss,
sondern ich komm direkt drauf, ja.
So funktionieren die Tags auch die sind direkte Anfragen.
Ja, während die Fields nicht indiziert sind.
Ja, das sind halt die kontinuierlichen Werte, die
jeweils dem Zeitstempel zugeordnet sind, ja nur noch mal
kurz der dings und jetzt sag ich kurz mal was, weil wir jetzt
gerade Measurement, tags, Fields Times, Times, Data Points und so
weiter ist komplex und wenn man es nur auf der Audi Spitze
sowieso, ihr müsst euch das noch mal angucken in der Doku, aber
ich sag mal kurz wie wir das machen in der bei uns in der
Heisen werde und der Gerrit hat ja gesagt wir können sowas
tatsächlich einfach mit 2 Klicks machen ja das heißt bei uns.
Kommen halt irgendwelche beliebigen Datenpunkte an und
dann sagen wir, jetzt mache ich mal einen Rekorder und nehme die
auf. Ja, und dann gibt man diesen
Rekorder einen Namen, ja, damit man quasi sich wieder auf diese
Daten, auf diese Daten quasi beziehen kann.
Das sind bei uns keine Tags und keine Fields und keine Time,
also ja klar die sind dahinter, aber das wird ein Measurement.
Ja, also wir sind gar nicht so kompliziert mit den ganzen Tags
und so weiter ja da n Tag bei uns zum Beispiel ist die
Application ID, also in welcher Anwendung ist dieser ist dieses
Measurement stattgefunden? Weil wir quasi im im Backend
quasi. Also wir können mehrere
Anwendungen quasi sich diese Daten teilen, deswegen ist das
zum Beispiel ne metainformation ne die App ID ja, aber wir
machen zum Beispiel ganz viele Measurements.
Ja und das ist auch nicht schlimm, ne, also das ist der
optimierte. Und das ein ein so n Measurement
könnte ja wirklich oder? Kann ja bei uns ein Datenpunkt
sein, also was ich wirklich ein Wert ein Key value also für der
mich interessiert wie sowas wie die Temperatur oder n ganzes.
Array auch schon wieder sein. Von, nee, nee, ein Measurement
ist eigentlich ist n Name und das hat eigentlich immer n
erregerit. Also wenn wenn du nur ein ein
Ding ein ein Eintrag da drin hättest, dann hättest du quasi
ne Zeitreihe wo du nur einmal n Datenpunkt genommen hast.
Das ist ziemlich spaßbefeut also das brauchst du keine Influx ne
aber es ist du, du sagst halt das Measurement heißt was weiß
ich irgendwie silofüllstand oder Irgendsowas genau silofüllstände
oder irgendsowas könntest du sagen ist mein Measurement ja
und dann? Und dann nimmst du quasi jedes
Mal, wenn sich der Füllstand ändert, nimmst du quasi Data
Points auf und schmeißt die in die Measurements.
Ja, also ne Measurement hat n Anzahl von Data Points ja.
Das meinte ich. Aber was ich jetzt quasi meinte
war sogar n Array über Arrays. Ja, also es ist immer n Array
ist klar weil es ja immer für jeden Zeitschlampe wird einfach
n loyalisteneintrag hinzugefügt quasi.
Genau. Ne, aber ein ein Eintrag kann an
sich ja auch schon mehrere Werte wieder enthalten, ne?
Wäre ja sehr genau. Also ich, ich geh jetzt mal kurz
genau hin wo du wo du bist. Du sagst der Field Value, also
der der Wirkliche, das der Eintrag, ja das was ich
speichern möchte. Ja der Datentyp von dem was ich
aufzeichne das ist nennt sich der Field Value im Influx DB,
der hat ja n Datentyp und auch da genau das hab ich gar nicht
gesagt. Danke, dass du noch mal drauf
gepiekt hast. Der kann so wie bei anderen
Datenbanken auch verschiedene Formen annehmen, aber nicht so
viele in Influx ist der entweder bulien, also ist halt n
Wahrheitswert. Oder ist halt n skalarer wert
wie die Temperatur. Das ist da so n float
normalerweise ja es gibt oder du hast stringenwerte ja also
textuelle die du aufzeichnest. Ja und das macht das eigentlich
relativ überschaubar, weil du gar nicht dir so viel Gedanken
machen musst um den exakten Daten die du sagst.
Du hast halt mehr oder weniger ist numerisch ist n
Wahrheitswert oder ist halt irgendwas textuelles ja.
Und Punkt aus und der Rest regelt influx DB sehr elegant
für dich. Ja, und damit kannst du sogar
ganze json Objekte aufzeichnen, so machen wir das auch, also
wenn wir ganz komplexe Dinge haben, dann machen wir schnell n
json Objekt drauf und aus dem JSON das Wissen jetzt die
Experten kannst du immer ins String machen das serialisierte
Format vom JSON ist einfach n langer String und den kannst du
ja auch quasi als textuellen Inhalt in deinen Datenbank
speichern und wenn du es rausholst dann gehst du schnell
wieder zurück ins Json und alles ist Magic ja und alles ist nice.
Das ist genau das, was ich meinte.
Danke Jason Objekte, da hast du quasi n Array aus Jason
Objekten, die aber als Drink so abgelegt.
Genau, ja, das kann man machen. Ja OK und ob man das so so
machen wir das ja, ob man das, ob man das jetzt so machen
sollte weiß ich nicht, aber das funktioniert hervorragend, kann
ich nur sagen, ja es ist es braucht natürlich immer.
Es braucht natürlich also die Datenbank zieht dir dann einfach
diese textuellen Inhalte ab und dann braucht dein Klick dann
Client. Also da wo es halt quasi
angezeigt wird braucht n Moment mehr Rechenpower, weil halt aus
diesen String Jasons erst noch mal richtige Jasons gemacht
werden, die müssen also geparst werden, ist das richtige Wort
dafür, das ist aber so hoch optimiert mittlerweile also
Jason Parson und und und Stringifine das ist ne
Operation, die ist schnell ja also da merkt man nichts, das
funktioniert ganz gut. OK so, wir haben uns, wir haben
uns von unten nach oben jetzt gearbeitet, also wir haben
verstanden, was ein Data Point ist.
Wir haben mit dem mit dem Timestamp im Field und den Text
drinne, dann haben wir verstanden was ein Measurement
ist, also eine Gruppierung von von von Datenpunkten.
Es gibt noch das Wort Series, ja, also eine Series, ein Data
Series ist einfach eine Gruppe von Punkten von Points, ja.
Die, die unter dem gleichen Measurement sind.
Ja, und die gleichen Tags und die viel Keys haben.
Ja das ist ne Series, aber ich will es jetzt auch nicht
überreizen. Ja es gibt extrem viele
Konzepte, das Macht das so n bisschen kompliziert die
Einstiegshürde von Influx DB. Ja so jetzt gehen wir aber das
nächste Level hoch, also nen Measurement ist in einem
sogenannten Bucket ja das ist n neues Konzept vor allen Dingen
in der zweier Version von von Influx D Bucket also Eimer ja
also ich hab quasi. Ich stell, ich stell mir immer
vor, dass Bucket irgendwie so auf dem Level ist wie ne
Tabelle, wie ne datenbanktabelle.
Ja das ist halt n Eimer, da kannst du halt mehrere Eimer
haben. Ja so und was wichtig ist zu
diesen Buckets, das muss man jetzt wissen, das haben die
geändert, nur der Bucket hat eine sogenannte Retention Policy
ja also der hat erstmal auch n Namen N Bucket Namen und ne
zugeordnete Retention policy was ist ne retention policy?
Das ist n wichtiges Konzept vor allen Dingen in Zeitreihen Daten
das heißt halt ich sage ich fange an meine Daten zu
überschreiben. Die älter sind als relatives
Datum, ja, zum Beispiel älter Daten, die älter sind als einen
Tag, werden halt quasi wieder rausgeschossen ne und
überschrieben durch die neueren ne oder Daten die älter sind als
ein Jahr und ich bin völlig frei das zu definieren ne und ich
kann auch sagen ist ein Bucket hat quasi infinite Capacity da
wird nie was rausgeschmissen ne so und das ist wichtig diese
buckets ja also. Und jetzt sind wir auf der
zweithöchsten Stufe und dann kommt noch über den Buckets die
sogenannte Organisation, so nennen die das in Influx DB.
Die organisiert quasi die Buckets.
Ja, also das ist jetzt quasi, wem gehören diese ganzen
Tabellen? Ja, also das ist quasi die
höchste Stufe der Attraktion, andere Firmen sagen zu sowas
Workspace oder Irgendsowas ja, denn auf der Organisation mach
ich so Sachen wie Usermanagement ja.
Denn ich muss ja, das habe ich noch nicht gesagt, aber das ist
ganz klar, ich habe ja auch Authentifizierung, Autorisierung
und so weiter, das ist alles mit drinnen in flux, ich kann ja
nicht einfach, es ist nicht alles offen und jeder darf das
irgendwie lesen, sondern das kann man sehr atomisch halt auch
natürlich einstellen, muss sich einloggen und Tokens erwerben,
dass man überhaupt lesen oder schreiben darf, ne oder oder
alles gibt es alles, gibt es so ein all Admin token, da kann ich
alles machen, ne Einfachheit halber oder ich kann halt auch
sehr atomar begrenzen wer was lesen oder schreiben darf und
alles das. Wird in der Organisation
gemanagt. Ja, die hat einfach auch n Namen
und und dann kann ich da drin quasi Gruppen von Usern oder
einen User oder Irgendsowas bestimmen.
Ja und kann dann quasi Rechte vergeben und so weiter da würde
ich dann auch so Sachen machen wie wie nen Death und Staging
und ne Production Organisation und so weiter also ich geh jetzt
noch mal rückwärts, wir haben ganz oben die Organisation, dann
haben wir die Buckets, dann haben wir die Measurements da
drinne und die Measurements bestehen aus den Data Points die
jeweils immer diese 3 Informationen mit sich tragen,
optionale Tags. Wichtig mindestens ein Field Key
Value und den Timestamp. Ja dann haben wir es eigentlich
ja einmal so durchgerutscht. Ja retention, ich sag noch mal
was ich überlege gerade wann ich das sage, ich sage das jetzt,
weil wir das, weil wir diese Buckets haben, ja, das ist ganz
spannend, dass die, dass man nur auf den, also früher war das so,
dass man die Retention Policy an den Measurement dran geklatscht
hat, das war ne Version 1 so. Jetzt ist es so, dass die
Buckets quasi diese Retention policy haben.
Ja, das heißt, ich muss an einer relativ hohen Hierarchieebene
mir schon mal überlegen und dann für alle Measurements, also für
alle besser und gleichzeitig hab ich das gleiche retention
policy. Ja jetzt kann man sagen, Boah
das ist aber ne Limitierung ja ich will das viel Atomischer
sagen und ich ich ich glaube aber zu denken, dass die Idee
ist auch hinter 2 wie man das macht.
Ja ich denk ich hab ja n typisches Problem ja ich nehm
noch mal das Problem von wir haben ganz viele Sensoren und
die nehmen jede Sekunde n Datenpunkt auf ja und das machen
die Halt über Jahre hinweg ja. Weil es halt so ist.
Ja, dann bekomme ich ja, wenn ich in dieser Auflösung bleibe,
einfach gigantische Mengen an Daten.
Ja, an denen ich ja in dieser Auflösung gar nicht mehr
interessiert bin. Ja, denn typischerweise, was
interessiert mich, wenn ich jetzt mal sage, vor 3 Jahren am
2. Oktober, 2021 oder irgendsowas
will ich wissen, was in dieser Nanosekunde der Wert von dem
Temperaturmesser war. Ja, das sind keine typischen
Anfragen, die ich stelle, da gibt es kein Use Case zu ja.
Also ich, ich, ich, ich zeig sowas ja immer nur an.
Ich will höchstens wissen, Boah was war denn die
Durchschnittstemperatur vor 3 Jahren über den letzten Monat
hinweg oder irgendwie sowas, ja. Genau, oder?
Ich will kurzfristig wissen, was sind besonders krasse
Ausschläge, sowas kann man sich auch vorstellen, ne, also dann
auch hochfrequenter ne aber kurzfristig.
Typischerweise, wenn man das jetzt mal so n bisschen
physikalisch, ich komm ja so bisschen aus dem Skalasystem
angeht, dann willst du vielleicht sehr stark in die
Vergangenheit zurückgehen. Dann willst du aber sehr stark
ausgedünnte Werte haben, also statistisch aggregierte Werte.
Dann willst du also quasi minens haben, also Durchschnitte,
vielleicht sogar in Median. Und was du sagst ist auch sehr
richtig, du willst, du willst dann eigentlich sogar an jedem
durch durchgeschnittelten Datenpunkt sehen, was ist denn
die Standardabweichung, also wie groß ist der Spread innerhalb
dieser aggregierten Daten? Ja, sind die sehr weit
auseinander oder sind die sehr nah aneinander?
Das gibt ja schon was und du willst den Max und den Minwert
zu diesem. Zu allen diesen zusammen
aggregierten Werten sehen. Ja, und da gibt es diese tollen
Plots, die nennen sich glaub ich whiska plots, da siehst du halt
nicht nur n Punkt, sondern du siehst quasi in der Mitte so n
kleinen Balken, der gibt dir den Everett, die gibt dir quasi die
Abweichung an um die Mitte, das ist die Standardabweichung und
dann hast du so dünne Linien mit so einem mit so einem Cap
irgendwie, ich glaub in der Finanzwelt wird das auch oft
gemacht, bei den Börsenkursen, ja dann siehst du den Max und
den minn wert, ja. Und das, was du brauchst, weil
zum Beispiel, ich gebe jetzt mal ein Beispiel aus der echten
Welt, pumpen ja turbopumpen oder Irgendsowas, die relativ
niedrigen Druck halten müssen. So ein Vakuumsystem, das hat man
oft in der Industrie vakuumsysteme, und die liefern
eigentlich sehr langweilige Daten, die sind immer, die haben
immer irgendwie ganz wenig Druck.
Ja, also und und variieren kaum ja und wenn, wenn aber mal so
ein Loch Leck ist irgendwie wenn das vakuumsystem Leck schlägt,
ja dann gibt es halt einmal so. Und zwar nur vielleicht für 10
Sekunden oder sowieso ein Schlauchboot, was geplatzt ist.
Und dann ziehen die wieder an. Ja, und dann hatte ich halt,
dann habe ich halt über mehrere Lockstufen einen krassen
Ausschlag, der aber ganz kurz war, ja, und der darf mir nicht
verloren gehen, wenn ich später mal aggregiere ja die Daten,
weil wenn ich jetzt, wenn ich jetzt einen Average mache, dann
über einen Monat ja von diesen immer gleichen Daten, die halt
für 10 Sekunden mal einen Peak hatten, weil der geht ja
komplett verloren in der Mathematik, ja.
Aber der ist aber das ist aber n total relevantes Event, was ich
halt sehen will. Ja weil weil vielleicht ist da
meine Produktion Charge kaputt gegangen, weil nämlich gerade
kein Vakuum da war, also n schlimmes Event sag ich mal.
Ja, also insofern genau hast du recht, will ich irgendwie so max
und minz dann irgendwie noch persistieren.
So jetzt hab ich lange viel erzählt, aber das ist jetzt die
Idee mit diesen Buckets, die Idee ist nämlich, dass man quasi
buckets machen kann, die relativ kurzlebig sind am Anfang.
Denn wenn ich in die nahe Vergangenheit gucke, dann will
ich vielleicht ne hohe Auflösung noch haben ja mich oft dran
interessiert. Ja, das heißt ich mach
vielleicht n Bucket, das hat irgendwie ne Auflösung von einem
Tag, da sind aber Datenpunkte drin die irgendwie n Abstand
haben von einer halben Sekunde oder vielleicht sogar von von
von Zehntelsekunden oder irgend so was, ja.
Und dann will ich aber vielleicht ne ne Methode haben
wo ich sage, OK wenn der Tag rum ist oder ne Woche oder
irgendsowas dann mach halt rechne Statistik auf, mach halt
quasi so ne Art Windowing, so nennt sich das halt auch ja
every for every hour oder for every day oder irgendsowas find
halt genau das raus. Diese statistischen Kennzahlen,
Minen, Median Max und min und so weiter ja und jetzt packst du
diese Daten, die ja schon auf einer viel gröberen Auflösung
sind, also weniger sind ja runterskaliert in den nächsten
Bucket. Du lässt das alles gleich.
Du lässt die Measurements, tags und so weiter alles gleich.
Du sagst halt einfach nur Pass auf, ich löse halt die Daten
jetzt n bisschen gröber auf, mach n bisschen Statistik dran
und Klatsch die halt in den nächsten Bucket ja der dann halt
irgendwie ne retention Policy schon viel länger hat ja von
vielleicht einem halben Jahr ja und dann packst du das oder n
Jahr und dann packst du das oder noch besser du fängst an, hast
Tage, dann hast du n Week Bucket, dann hast du n Muns
Bucket und n Year Bucket ja und jedes Mal.
Schneidest du halt, machst du halt diese Fenster n bisschen
größer und n bisschen mehr Statistik.
Ja dann kannst du über sehr viel Zeit sehr viel Informationen
sammeln, die eigentlich immer noch relativ aussagekräftig ist
und die eigentlich so ist wie viele Use Cases sind ja in der
kurzen Vergangenheit relativ hoch aufgelöst.
Und je weiter du nach hinten kommst, ist immer noch was da
kannst du gucken, aber ist halt irgendwie n bisschen gröber
aufgelöst sogar und dann kommst du auch nicht in Bredouille mit
deinen riesigen Datenmengen. Ja, und das ist eigentlich, und
das haben die vorbereitet. Und es gibt dafür ein
sogenanntes Mittel, das sage ich jetzt, das ist nicht, gibt es
nicht so vergleichbar in irgendwelchen anderen
Datenbankensystemen, das nennt sich Tasks bei influx DB und
dann kann ich quasi genau definieren, kann ich quasi, also
also auf Aufgaben anlegen, indem ich sage, Hey, immer nach einem
Tag mittelst du die Daten so und so und so, und dann schmeißt du
die in den nächsten Bucket rein, ne?
Und das kannst du einmal definieren für deine Datenbank
und dann passiert das ja und dann kannst du das, was ich
jetzt gesagt hab. So ne kaskadierende statistische
Ausdünnung nach hinten ist so wunderbar mit so n paar Tasks,
dann machst du 4 Tasks bis fertig ist richtig nice.
Ja das kannst du machen und das dabei sind die ja total
generisch, du kannst dabei machen was du möchtest.
Ja Statistiken rechnen wie du lustig bist.
Ja das ist im Prinzip Low Code, also kannst du frei, kannst da
frei arbeiten, ja. Wie konfiguriert man das?
Hat man da so ne Art Oberfläche oder gibt es da ne API?
Also das ist ja quasi jetzt nicht Abfragen der Daten machen,
sondern wirklich aufsetzen von so von so so, so Automation.
Guter Punkt. Wir springen noch mal kurz
rüber. Wie bediene ich oder wie sieht
das überhaupt aus, wie kann ich arbeiten mit so einer Datenbank?
Also wenn du wenn du ich empfehle immer Docker ist
natürlich klar und influx DB hat ein offizielles Dockerimage und
dann kannst du den kannst du dir ziehen und dann kannst du den
Dockercontainer starten wenn du das tust.
Kommt der mit einem Webinterface?
Ja, da wird auf Port schließe mich tot 8084 oder irgendsowas
kannst in deinem lokalen Browser aufmachen und da hast du eine
wunderhübsche UI. In dieser UI kannst du Daten
reinschreiben, Daten lesen, die sind krasse plotting
Mechanismen, dieses ganze Filtern und so weiter kannst du
machen und du kannst Tasks anlegen und so weiter und kannst
alles üben und spielen, dir angucken, anzeigen machen.
Und und du kannst ja den Container wieder dicht machen,
dann fängst du wieder von vorne an, dann verschmutzt ja nichts,
da kannst du einfach isolierte Spielwiese.
Richtig cool, das ist quasi die grafische, also es gibt n echt
und das ist nicht graphana oder irgendsowas ja influx DB 20
kommt mit ihrem eigenen krassen UI, das ist wirklich schick
gemacht im Browser ich mir das angeguckt und auch bedient,
schon kann ich sehr empfehlen, da kann man das alles ausführen
und da kannst du halt auch Daten reinspielen, das haben wir noch
nicht gesagt, das mach ich gleich noch.
Wie man überhaupt Daten reinkriegt das geht ne.
Also das ist die UI und dann kannst Du Gerrit auch.
Wer dann ein bisschen härter an die an die Materie rangehen
will. Es hat natürlich jede Datenbank
wie sie es gehört auf der Konsole eine sogenannte CLI, ein
Command Line Interface gibt es den Postpress auch und gibt es
natürlich für Influx auch und dann gehst du einfach die die
Dockerexperten werden das können du tippst dann einfach einen
Docker ex Hack Space It Docker containername und dann.
Zum Beispiel Bash oder Irgendsowas.
Oder ich weiß nicht genau, was für eine Shell ist die richtige
Shell ausgewählt hinten Ash, dann kommst du quasi mit deiner
Eingabeaufforderung mit deiner Konsole in den ausführenden
Container rein, der gerade läuft und da drin ist schon die alles
vorinstalliert, da hast du quasi ein kleines Linux Betriebssystem
und da findest da sagst du einfach nur noch influx ist da
installiert, dann kommst du auf die CLA das Commander Interface
von Influx und schlägst die Dokumentation auf dem anderen
Schirm auf und kannst loslegen ja und kannst da also per.
Per commandland Interface alles abfragen und machen, was halt
auch die UI kann. Ne, also so kann man sich da
richtig krass zusammen üben. Ja wie das alles so geht.
Ja, Mhm cool. Also das war der Punkt jetzt
schon. Wie kann ich das jetzt nicht
mal? Ausprobieren, mal kurz
vorgezogen macht passte aber gerade weil du es ja auch
gefragt hattest und macht ja auch Sinn.
Ja genau so und das empfehle ich auch, man muss das glaube ich
also auf der Audiospur. Heute könnt ihr natürlich
mitnehmen, aber man muss das, es gibt auch n paar Videos im im
Internet. Die das zeigen, wie das geht,
das muss man mal mit der UI gemacht haben.
Ja, also weil das ist relativ, ihr seht ja schon mit dem mit
dem ganzen Fields Tags und krams ich, ich kann dann halt auch
krasse Abfragen machen, so ja es sind ja aber auch komplizierte
Probleme, die man manchmal damit löst mit so Time Series Sachen
erobern. Ich hab zum Beispiel ein
Beispiel gesehen, dass bei uns auch hochaktuell zum Beispiel
Stromzähler, ja, ich kann ja zum Beispiel Stromzähler ablesen und
den Stromzähler stand quasi als als Item vertaggen und
gleichzeitig dazu in dem gleichen Data Point, die die
aktuellen Strompreise. Ja, und da kann ich mir krasse
Plots herstellen, da kann ich viele Fragen stellen, ja,
wieviel Euros hab ich denn differentiell quasi irgendwie
ausgegeben, ja, bei gleichen Kilowattstunden und und und und
ja, und das Krieg ich alles gebacken und das tue ich mit der
Abfragesprache von. Der Abfragesprache von Influx,
die ich ja wie gesagt die, die jetzt erst mal nicht SQL
basiert, ist im ersten Schuss, sondern in der Zweier.
Halt dieses Flux, ja, das heißt Flux FLUX, wieder
Fluxkompensator beim Zurück in die Zukunft.
Ja, und das ist n krasses Monster, da hab ich, da muss man
erst mal schlucken, da muss erst mal raffen, dass das überhaupt
ne abfragesprache ist und dass es das gibt, das habt ihr jetzt
durch mich irgendwie einfacher ich als ich das erste Mal influx
gebeten bin, hab ich gedacht, was ist denn jetzt kaputt, was
ist das, was heißt flux, was muss ich damit machen.
Ja, das ist quasi das SQL Underlogon.
Ja und sieht komplett anders aus, hat damit nichts mehr zu
tun, die haben halt quasi neue Sprache entwickelt.
Ja so mit fromm und sowas sieht so n bisschen aus wie Java
Script und hat dann aber so komische Symbole mit so Pipes
und so weiter ja und am Ende des Tages drück ich aber in jeder
flux Anfrage 3 Sachen aus. Ja ich muss halt immer angeben
was ist meine Datenquelle ja also da sag ich zum Beispiel
from Bucket Wetterstation ja. Dann muss ich immer angeben, ein
Zeitintervall, das ist wichtig. Also ich sag immer den letzten
Monat oder wir machen oft tail tail, da kennst du Garrett, also
die letzte zeigt mir an die letzten 100 Punkte, 100
Datenwerte, egal wie lang, ja da kann ich auch total krass, ich
kann mit relativen Zeiten arbeiten, das macht flux alles
intern, ich sag einfach nur -1 m, das heißt den letzten Monat
also echt total trivial und dann hab ich gesagt schon woher und
welches Intervall. Jetzt kommt jetzt würde mir
schon irgendwie n riesen datenstapel entgegenkommen und
diesen Datenstapel der da jetzt entgegenkommen würde, den kann
er jetzt auch noch mal filtern. Ja beliebig ja, da gibt es so
die Funktionen sind so ähnlich wie n Java Script, ich kann
filtern, ich kann mappen, ja ich kann, also ich kann wirklich on
the Fly auch noch die die Strukturen umbiegen und so
weiter die haben da halt, die haben in dieser Abfragesprache
richtig einen reingehauen. Ja das ist so n bisschen wie
unsere Modifier ja, also das ist so n bisschen on the Fly.
Abfrage ja, und aber das Ding ist, dass das halt nicht hinten
passiert, sondern vorne an der Datenbank.
Das heißt, wenn man das gut aufschreibt, dann ist das wie
ein gutes SQL Statement, dann kriegt man halt schon die
Vorformatierten Selektierten gefilterten Daten wie man sie
halt wirklich haben will, vielleicht für den
letztendlichen Plot schon direkt von der Datenbank vorgearbeitet.
Ja und übers Netz kommt nur noch genau das, was ich anzeigen
will. Ja und der Client muss dann
quasi nicht mehr viel Computing machen, das mach ich dann quasi.
Nahe der Datenbank nahe, also quasi dem Server der der diese
Doc, diese diese influx Datenbank kostet.
Ja, und diese Abfragesprache die da könnt ihr mal n eigenes
Kapitel für meinen eigenen Podcast, für meinen machen aber
nicht das müsst ihr euch mal angucken.
Ja das ist extrem krass was man da alles machen kann.
Ja und die die Funktionen die da wichtig sind sind sowas wie
Every und Aggregate ne also das ist alles schon drin, da kann
ich sagen jede Minute mach mir den Mean daraus und so weiter ja
also diese ganzen komplexen Zeitfragen und so weiter sind da
sehr sehr elegant und einfach gelöst.
Und bei unserer Plattform, wenn wir jetzt so ne Read Funktion da
haben um aus der influx DB Rauszulesen wenn man da wenn man
die konfiguriert quasi mit einem Filter zum Beispiel für n
bestimmten Zeitraum dann im Hintergrund machst du daraus so
n so n flux macht den. Fluxkompensator ja genau, ich
mach da im Hintergrund n flux draus.
Ja ich, dies ist halt so kompliziert, dass man das haben
die selber gemacht, so ne, also die UI wovon ich sprach, die im
Container ausgeführt wird, der von Influx selber mitgebracht
wird, da hast du quasi auch so visuelle.
Filterkomponenten, wo du auf dem High Level mit Dropdowns und so
weiter kannst du da das auch sagen?
Every und so weiter und die Tags angeben und so.
Ja weil also das und du kannst die dann.
Das Schöne ist, wenn du das visuell gemacht hast, dann
kannst du ja auch anzeigen, also wie sieht eigentlich mein Flux
mein Fluxskript aus, wie würde die so sagen und dann hast du so
n fettes Skript da hast hat dann irgendwie 10 Zeilen ne einfacher
zu verstehen ist, wenn du das quasi grafisch irgendwie visuell
irgendwie vor ja wieso NSQL Bilder halt ne das SQL ist ja
auch im Notfall ganz schön kompliziert mit den ganzen
Joints und so weiter. Und aber das Unterstützen die
quasi auch durch so eine Art Abfrage.
Ui Bilder ja und dann kommt halt dieses Flux raus und so machen
wir es auch, wir reduzieren diesen diesen krassen Content
von Flux runter auf ein paar Optionen die wo jetzt ich ganz
privat mal denke, das sind die wichtigsten und dann werden die
entsprechenden Flux Anfragen gestellt.
Ja und wer krass drauf ist, der hat auch das gibt es auch die
RAW flux kannst du da auch reingeben ja also das habe ich
auch, ist ja immer die Idee von Software macht es ganz einfach
aber lass es trotzdem für die. Für die krassen Experten wenn
dann Advanced Use Case ist. Die Möglichkeit ist auch
irgendwie ganz detailliert zu beschreiben.
Das heißt, du kannst bei uns auch die ganze Flux selber
reinpasten. Es geht auch, ja, du musst aber
wissen was du tust. Ja, so ist auch deren Ansatz.
Ja finde ich irgendwie auch schick ja also genau und und
dieses mächtige Ding, also das hat also ich sag das nur mal
kurz ja, also das machst du nicht im Vorbeigehen so ne
Skriptsprache und das ist quasi n Datenbank Curry Optimizer ja
da müssen Sachen vorkompiliert werden und so weiter das muss
gepasst und interpretiert werden, ist ne neue Sprache.
Da haben die wohl n paar Jahre dran mit vielen Entwicklern
geknackt. Ja, das war für die n Riesending
ja in der für die zweier Version dieses flugs ja und leider wie
es ja manchmal so ist, ja, ist leider nicht so ganz, vielleicht
auch weil es einfach ziemlich komplex ist.
Ja, ist irgendwie nicht so auf den fruchtbaren Boden gefallen
wie sie es gerne hätten. Ja, es gibt wohl viele Power
User, aber so in der breiten Masse ist das irgendwie ja nicht
so richtig angekommen und deswegen wohl auch ein Grund das
noch mal angefasst zu haben in der Dreier Version ne.
Vielleicht kommt es irgendwann auch mal wieder.
Jetzt habe ich noch nichts zum Schreiben gesagt, das mache ich
noch und da sind wir nämlich eigentlich, da bin ich mit
meinen Themen durch, gerade wenn du schon eine Frage hast und
mich dabei, aber lass mich 1 noch mal sagen.
Ja, das wollte ich dich noch fragen.
Ja, das. Schreiben, das haben Sie richtig
cool gemacht, das haben Sie ganz einfach gemacht.
Also es gibt eine Möglichkeit, es gibt natürlich wieder viele
Möglichkeiten, aber die Hauptmöglichkeit, das sogenannte
Line Protokoll, und das ist im Prinzip, ich kann tatsächlich
echt einfach nur ein textuell ASCII mit einem http post curl
gegen meinen Datenbank Endpunkt. Kann ich da reinklatschen?
Ne, das ist das ist total einfach.
Ich schreib da irgendwie sowas hin wie Measurement gleich
Wetterstation Komma ja dann schreib ich meine Tag gleich bla
und so weiter hin Key und Tag und dann schreib ich dann Value
gleich 23,7 und tatsächlich ist es einfach so als dringend eine
Zeile ja und dann sag ich Post schick ab ne also haben wir ja
ganz oft schon gemacht, Rest ist n Rest ab hier ich poste das Sky
auf der Commandline machen mit irgendeinem Tool ja COL zum
Beispiel n leichtes Ding der Datenbank ja und weil das so
einfach ist unten drunter. Gibt es eine Millionen
Integration in die ganzen Programmiersprachen?
Ja, also ich nutze natürlich irgendwie so ein API Rapper SDK,
wie man so schön sagt für No js in dem Fall ja, aber das Macht
nichts anderes als dann diese diese einfache Line Protokolls
abzusetzen. Ja und da gibt es dann noch
irgendwie ein bisschen batch bisschen bla, aber ist total
trivial. Ja, ich Donna eigentlich im
Prinzip Datenpunkte raus, ja ich schraube mir, schraube mir lokal
meinen Datenpunkt zusammen und dann schicke ich den ab und dann
ist der da drinne fertig also das ganze Management von Influx
DB ist relativ einfach ja weil ich.
Also diesen relationalen Aspekt ja auch nicht hab.
Ich kann dann einfach auch die Datenpunkte löschen, ich kann
Measurements löschen und so weiter Buckets neu erstellen,
löschen hin und her. Ja ich muss natürlich gucken,
dass ich mir nichts wegschmeiße was ich haben will, aber boah
ich hab jetzt auch nicht so n Schmerz mit irgendwelchen 0
values und so weiter weil ich diesen ganze Relationskrams
nicht hab weil es dann einfach so über tags funktioniert.
Ja ist einfach. Die komplexere Sache ist dann
halt nicht beim Managen, sondern eher beim Abfragen.
Wenn ich dann halt sagen will, fassen wir zusammen das
Measurement mit dem Measurement oder mit dem Tech und nur die
Wetterstationen aus Deutschland mit, die irgendwie und so weiter
ja dann fängt s halt an, da kommt dann halt der Hase im
Pfeffer sag ich mal. Wenn ich das richtig abfragen
will und da kann auch viel falsch machen, da kommt immer
irgendwas raus wie bei der KI, das hat meistens keinen
Syntagsfehler, aber ob das das ist was du da raushaben willst,
ob du das wirklich ob das wirklich, ob du das wirklich
richtig formuliert hast? Ja siehst du, wenn du wenn das
Licht angeht ja, also was ich sagen will, du musst das auch
mal üben glaub ich mit Influx also sofort in Production zu
gehen. Also ich würd mal sagen so nimm
mal so n Excel hin mit 100 Zeilen irgendwas drin wo du die
Werte kennst wo du dann mal mit Excel n paar Funktionen machst,
dass du so weißt was da statistisch rauskommt und dann
baust du das einmal kurz nach mit so n paar Fluxdingern.
Damit man auch weiß, dass man, dass man keinen Mist gebaut hat,
so ja bei der Auswertung. Es geht schnell, dass da
irgendwie was komisches rauskommt, hab ich mich auch,
also ich spreche aus Erfahrung, ich hab es mit dem Text am
Anfang nicht verstanden gehabt und dann kommen da auch lustige
Sachen, da kommt was raus, aber das ist nicht das was du denkst,
was es sein sollte ja so n bisschen n kleiner kleiner
Kaviat hier an der Stelle ja, dass man das n bisschen
ausprobiert mal, aber dann hat, da ist man irgendwann dahinter
und dann geht es. Wir hatten noch mal vorhin, also
mit Schreiben bist du durch. Oder ich bin mit schreiben
durch. Ich bin insgesamt durchgeredet.
Also wir hatten jetzt. Ich fass noch mal kurz zusammen,
wir hatten die Datenstruktur angeschaut, wir hatten schreiben
jetzt ganz zum Schluss zum Lesen, lesen ist halt dieses
Fluxgedöns, dann hab ich über die Tasks gesprochen, die was
ganz Besonderes sind, wo ich quasi Daten ja automatisch
umsortieren verwalten kann. Ich kann da so quasi zu so einem
lebendigen Objekt machen, meine ganze Datenbank und so wie wieso
n conjob ja oder wieso n Windows Service jede Woche passiert
irgendwas mit meinen Daten ja und man enthält sich von alleine
ja. Und zum Ausprobieren habe ich
auch was gesagt. Also insofern wäre jetzt so mein
mein Rundumschlag, so ein bisschen durch, wäre aber
natürlich klar hierfür. Ich glaube ja, dass influx DB
total anwendernahe ist. Also ich will ja nicht nur Daten
aufzeichnen, will sie ja dann auch anzeigen visualisieren.
Also da sehe ich es dann immer auch, wenn man mal über die
Hannover Messe oder ähnliche Industriemessen geht.
So jeder zweite stand, der irgendwie Daten anzeigt oder
wahrscheinlich noch noch mehr als jeder zweite.
Die die, die sind dann aufgezeichnet mit influx DB oder
in eine influx DB und visualisiert mit Graphana so das
ist so der Klassiker glaub ich den man da in der Kommunikation
in der Kombination benutzt ne, aber man kann ja auch mal zum
Beispiel heißen, wir benutzen ja auch, wir können uns ja auf ne
beliebige influx DB draufsetzen, ne oder halt auch.
Und andere Tools nämlich ich denke mal da gibt es Integration
für alles mögliche, ja. Ja, weil das relativ, also wie
gesagt, das ist jetzt keine Raketenwissenschaft, was da
reingeht und rauskommt, das ist relativ einfach, und ich sag
mal, jede jede, und es gibt ja zig Web, also graphana ist n
graphana ist ja nichts anderes als ne sehr gut sortierte Chart
libry, also webkomponenten die charting können ne also bar,
Charts, Line, Charts, sanky, Charts was weiß ich, pi, Charts
und so weiter und sofort davon gibt es aber auch wie Sand am
Meer, also man ist. Wenn man keine Lust hat,
Garphana als großes Ding anzubinden, da kann ich mir auch
aus der aus der großen weiten Welt der Open Source Chart
Libraries, die sehr, sehr hervorragend sind, eine
raussuchen und kriegt die Easy gefüttert.
Ja mit dem, was aus einer Influx rauskommt, wenn ich das in
Anfrage mache, ich glaube, das Schwierigste ist, noch
schwierigste ist vielleicht tatsächlich noch diese diese
flux Queries zu erstellen, diese Skripte.
Anhand einer grafischen Oberfläche.
Ich glaub das ist was graphana besonders gut kann.
Also das ist ja auch nicht so einfach, also ich diese ganzen
Filter so zu bauen, das können natürlich diese charting
Libraries erstmal nicht, aber auch das kann man bauen und
vielleicht gibt es da sogar auch Tools, weiß ich nicht, also man
kann ja in den Sources ja als Open Source, man kann ja zum
Beispiel den Source Code von diesem von dem eigenen Influx DB
Interface gucken, ne und sich das komplett übernehmen was die
da als also die werden es ja wissen wie es geht, ja die sich
dann den Flow. Den Flow Flux Flow UI Generator
da irgendwie mal anschaut, ne. Also wenn man Softwareentwickler
ist, ja sonst kann man es natürlich nicht.
Ja aber also ich mein Ja. Nee, prima, dann hab ich heute
auch nichts mehr. Also was ich nur sagen wollte
ist, zur Visualisierung gibt es dann auch wieder etliche Tools,
die man einfach oben drauf stecken kann und ich glaube in
der im IOT Space ist auch so n so n klassischer Stack ich hab
irgendwie was zum Daten reinfüttern irgendein Tool ja um
um von verschiedenen Sensoren und Protokollen Dinge zu
verfassen. Note Red ist dann natürlich
gängig. Man kann auch da heißen Werbung
nutzen. Jetzt mach ich doch noch mal n
bisschen Werbung, dann das Kram speichern in in der Infox DB und
dann wieder visualisieren in Graphana also so n klassischer
Stack oder man nimmt n Tool wie unseres wo das alles in einem
geht ja genau oder mischt die wie man möchte ja das geht
natürlich auch OKOK gut. Gut, gut.
Dann haben wir es ja. Ich würd sagen, ja, ich hab
jetzt auch nicht viel mehr und meine Nase ist zu.
Ja, hast gut durchgehalten und wieder ein cooles Thema
erläutert, hat Spaß gemacht und wir hören uns dann vielleicht im
neuen Jahr vielleicht nicht mal sehen, vielleicht auch schon
vorher. Vielleicht fällt uns noch was
anderes ein, aber Burkhard, lassen wir mal in die
Weihnachtspause was Podcast, was den Podcast angeht, ja auf jeden
Fall ja. Genau, genau.
Meine Kunden haben ja schon gesagt, ja, du musst doch unterm
Tannenbaum programmieren, insofern machen wir vielleicht
beim Podcast mal eine kleine Pause, aber ihr hört von uns,
wir kriegen das hin. Wir machen auch ein weiteres
Jahr weiter. Ja, und jetzt erstmal
wunderschöne Feiertage, ja bleibt gesund, habt eine schöne
Zeit mit eurer Familie und eurer Liebsten, kommt dann gut ins
neue Jahr und wir hören uns dann wie gesagt spätestens dann
wieder. So ist es wünsche ich euch auch.
Trinkt mal einen Glühwein, ist gesund, Grüße aus Hamburg,
Tschüss. Und danke, dass ihr uns in
diesem Jahr so treu wart. Bis dahin, tschau.
Einfach komplex wird präsentiert und produziert von Heiseware.
Wir freuen uns auf deine Fragen und
deinfeedbackanpodcast@heiseware.com vielen Dank fürs Hören dieser
Folge bis Dienstag in 2 Wochen und Tschüss aus Hamburg.