
Whiz-zarD
Mitglieder-
Gesamte Inhalte
2083 -
Benutzer seit
-
Letzter Besuch
-
Tagessiege
51
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Alle Inhalte von Whiz-zarD
-
Wie handhabt ihr denn die Notebooks? Sammelt ihr sie zum Feierabend auch wieder ein?
-
Wo ist weiterhin das Problem? Jeder Mitarbeiter, der so ein Notebook bekommt, bekommt auch automatisch einen Adapter dazu. Fertig.
-
Verstehe das Problem auch nicht. Entweder bekommt halt jeder so ein Adapter und habt dann noch eine Reserve auf Lager oder für den Fall, dass ihr WLAN-Only-Menschen habt, dann schreibt ihr halt an jeden Mitarbeiter eine Mail und fragt nach, wer so einen Adapter braucht. Jeder Mitarbeiter ist dann für seinen Adapter verantwortlich. Warum so kompliziert?
-
Nein. Ein Data Lake ist schon ein bisschen mehr, als nur ein Filesystem im Netzwerk, auf denen Dateien gespeichert werden. Ein Data Lake ist ein ganzes Ökosystem. Lies dir doch mal den Wikipedia-Artikel zu Hadoop durch. Da stehen alle Einzelteile von Hadoop: Hadoop Distributed File System (HDFS) Ein Filesystem, was die Daten auf mehrere Computercluster ablegt aber zentral verwaltet. Dabei werden nicht einfach irgendwelche Dateien im Kilo- oder Megabyte Bereich abgelegt, sondern von Giga- bis Terabytes. Yet Another Resource Negotiator (YARN) Eine Ressourcenverwaltung der Cluster MapReduce Ein Programmiermodell für nebenläufige Berechnungen. Hier findet das Lesen und Analysieren der Daten statt. Directed-Acyclic-Graph (DAG) Ein Ausführungsverfahren für die Ausführung von komplexen verteilten Algorithmen. Transparente Kompression Kompression von Dateien zur optimalen Speicher- und Ressourcen-Unterstützung Transparente Dateiformatunterstützung Implementierungen der Einlese-Algorithmen von Dateien. Standardgemäß unterstützt Hadoop CSV und JSON. Andere Formate lassen sich aber aufgrund der Modularisierung hinzufügen.
-
Nur hat das überhaupt nichts mit Data Lake zu tun. Ob man nun Live oder in fünf Tagen die Daten hat, spielt für den Data Lake überhaupt keine Rolle. Auch dein Beispielt mit "einer Kette von Geschäften" hat überhaupt nichts mit Data Lake zu tun. Auch ein DWH kann Echtzeit-Daten besitzen. Es kommt auf die Implementierung des DWHs an. z.B. ob es in Intervallen über ein ETL gefüttert wird oder ereignisbasiert Daten empfängt. Der Unterschied zwischen DWH und Data Lake (DL) liegt in ihrer Gleichheit. Während ein DWH meist aus mehreren hetereogen Datenquellen in ein homogenes zusammengeführt wird, besteht ein Data Lake aus mehreren hetereogen Datenquellen. Das können Daten unterschiedlicher Art sein. z.B. ein Stream mit Sensordaten, (SQL-)Datenbanken, Dateien z.B. XML, CSV, JSON, Word, Excel, PDF. Es auch können Video- oder Audioquellen sein, usw. Ein Kassenabschluss, Bestandsbewegungen oder sonstige Geschäftsauswertungen, wie oben beschrieben, lassen ich auch über ein DWH ermitteln. Der Hintergrund vom Data Lake ist nicht, dass man Geschäftsprozesse abwickelt, wie z.B. ein Kassenabschluss, sondern dass man die Daten analysieren und kombinieren kann und sich daraus neue Informationen bilden, die man wiederum mit anderen Daten kombinieren kann. Beispiel: Ich bleib bei einem Geschäft und möchte wissen, welche Bevölkerungsschicht bei mir einkauft und welche Waren sie kaufen, um so meine Angebote gezielt auszurichten. Da ich nicht für jeden Kunden einen Datensatz im DWH speichern möchte, speichere die Rohdaten des Kassensystems und frage die Kunden nach der PLZ. Es gibt dann vielleicht noch eine CSV-Datei mit Regionen und deren Durschnittseinkommen. Ich habe also drei Quellsysteme: Roh-Daten des Kassensystem (Bondaten und Bon-ID) PLZ zu jedem Bon, die der Kasserer/die Kassererin manuell eintippt PLZ und deren Durchschnittseinkommen Die Daten kann ich in einem Data Lake speichern und verarbeiten. Mit Hilfe der PLZ und deren Durchschnittseinkommen, könnte ich die Bons dann in die Bevölkerungsschichten gruppieren und könnte anfangen, die Waren der Bevölkerungsschichten zu gruppieren. Vielleicht finde ich auch heraus, dass Menschen aus einem bestimmten Ort bei mir gar nicht einkaufen. Dann lohnt sich dort auch keine Werbung. Oder finde heraus, dass 4-lagiges Toilettenpapier überwiegend von der Mittelschicht gekauft werden und nicht, wie angenommen von der Oberschicht. Oder ich kombiniere noch die Uhrzeiten und kann sehen, wann die Stoßzeiten sind und wann welche Schicht bei mir einkauft. So ist z.B. schon heute in vielen Geschäften die Beschallungsmusik von der Tageszeit abhängig, da man herausfand, dass bestimmte Bevölkerungsschichten zu bestimmten Uhrzeiten einkaufen. z.B. Jugendliche um 14 Uhr. Als wird um 14 Uhr überwiegend Pop-Musik gespielt.
-
Ich glaube, dass er dies auch nicht vorhat, sondern dass er irgendwo wohl eine GUI gefunden hat, dessen Style er übernehmen möchte. Vielleicht sowas, wie die ModernUI for WPF.
-
Datenbank in Visual Studio C# WinForm App implementieren
Whiz-zarD antwortete auf itzzshiro's Thema in Datenbanken
Welchen Mehrwert soll denn die GUI haben? Genau so gut kann ich die Skripte doch auch per Kommandozeile ausführen. Mit der GUI hab ich nichts gewonnen. Im Gegenteil. Ich verliere die Möglichkeit die Skripte automatisiert auszuführen bzw. es schwieriger, da ich nun Mausklicks automatisieren müsste. Ein weiteres Problem ist auch die Wartbarkeit der Skripte, da sie in der Datenbank in deinem CLOB-Feld liegen. D.h. wenn ich die Skripte anpassen oder korrigieren möchte, muss ich erstmal das Skript wieder aus der Datenbank lesen, es dann ändern und wieder in die Datenbank schreiben. Also braucht man noch zusätzliche Werkzeuge. Wenn du aber unbedingt eine GUI haben willst, könnte man auch eine CSV-, XML- oder JSON-Datei anlegen: CSV: NAME;FILE "Hallo Welt";"C:\Scripts\HalloWelt.ps1" "CoolScript";"C:\Scripts\CoolScript.ps1" XML: <?xml version="1.0" encoding="UTF-8"?> <scripts> <script> <name>Hallo Welt</name> <file>C:\scripts\HalloWelt.ps1</file> </script> <script> <name>CoolScript</name> <file>C:\scripts\CoolScript.ps1</file> </script> </scripts> JSON: [ { "Name" : "Hallo Welt", "File" : "C:\\Scripts\\HalloWelt.ps1" }, { "Name" : "CoolScript", "File" : "C:\\Scripts\\CoolScript.ps1" }, ] Die Skripte liegen dann auf der Festplatte und können einfach angepasst und erweitert. Wenn neue Skripte hinzukommen sollen, braucht man nur die Datei anpassen. Mit entsprechenden Deserialisern (CSVHelper, XmlSerializer, JsonSerializer) kann man daraus eine Liste von Objekten erstellen, die dann benutzt werden können, um die Buttons für die GUI zu generieren. Es muss nicht immer eine Datenbank sein. Eigentlich ist die Persistenz nur ein Detail deiner Anwendung. Woher die Daten kommen, sollte auch egal sein. Ich denke, dass du schon mit der GUI genug zu kämpfen haben wirst, sodass das Problem der Persistenz auch erstmal warten könnte und du erst mal mit Dummy-Werten arbeitest. -
Python Excel Automatisierung
Whiz-zarD antwortete auf random8520's Thema in Skript- und Webserverprogrammierung
Lesen sollte nicht das Problem sein. Schreiben evtl. um so mehr. Je nach dem, ob man eine neue Datei erstellt oder in eine bestehende Datei reinschreiben möchte, auf die man kein Einfluss hat (z.B. eine Datei von einem Drittanbieter oder einer anderen Abteilung). Ich hab bis jetzt noch keine Excel-Biblithek gesehen, die zufriedenstellende Ergebnisse liefert. Naja, bei so einem Bollwerk wie OfficeOpen XML, ist es auch kein Wunder. -
Datenbank in Visual Studio C# WinForm App implementieren
Whiz-zarD antwortete auf itzzshiro's Thema in Datenbanken
Was möchtest du überhaupt mit der Datenbank erreichen? Solange ich keine großen und/oder komplexe Datenstrukturen persistieren muss, würde ich auch keine Datenbank nehmen, sondern evtl. reicht auch einfach nur eine JSON-Datei, die ich mir einfach in den Speicher lade aber dies ist eigentlich nur ein Detail. Wo die Daten herkommen sollte, im ersten Moment egal sein. -
Sieht so aus, dass er automatisch geschlossen wird, wenn kein Prozess mehr ein Handle drauf hat.
-
Kann ich nicht nachvollziehen. Bei mir geht er immer in den else-Zweig. Für mich macht der Code auch überhaupt keinen Sinn, der WaitHandle, der mit WaitOne() aufgerufen wird, wartet auf ein Signal, was aber nie kommen wird, da nie ein Signal geschickt wird. Es reicht, wenn man einfach createdNew abfragt. public partial class App : Application { private Mutex mutex; protected override void OnStartup(StartupEventArgs e) { mutex = new Mutex(true, "MyMutex", out bool createdNew); if(!createdNew) { MessageBox.Show("Anwendung läuft bereits!"); Environment.Exit(0); } base.OnStartup(e); } }
-
do while do until Operator tauschen?
Whiz-zarD antwortete auf metalmeier's Frage in Anwendungsentwickler und Programmierer
Das macht überhaupt keinen Sinn... Was soll "größer als 8,9,10" oder "größer oder gleich 7,8,9,10" bedeuten? -
do while do until Operator tauschen?
Whiz-zarD antwortete auf metalmeier's Frage in Anwendungsentwickler und Programmierer
Nein... 🙄 Wo steht denn doch ein -ne für not bzw. nicht? -
do while do until Operator tauschen?
Whiz-zarD antwortete auf metalmeier's Frage in Anwendungsentwickler und Programmierer
Fang doch nicht immer an, die Begriffe umzuformulieren... -gt => greater than => größer als -lt => less than => kleiner als -ge => greater or equals than => größer oder gleich als -le => less or equals than => kleiner oder gleich als while => solange until => bis Das ist alles. Versuche doch deinen oberen Code in einen Sinnvollen Satz zu formulieren und dabei verwendest du einfach das Vokabular. do { // Irgendein Code } while ($n -lt 7) do { // Irgendein Code } until ($n -ge 7) Im oberen Code steht einfach "Durchlaufe die Schleife, solange n kleiner als 7 ist". Wie lautet nun der Satz der zweiten Schleife? -
do while do until Operator tauschen?
Whiz-zarD antwortete auf metalmeier's Frage in Anwendungsentwickler und Programmierer
Was heißt denn: -lt -gt -le -ge Das sind vier unterschiedliche Operatoren, die alle eine unterschiedliche Aussage treffen. -
do while do until Operator tauschen?
Whiz-zarD antwortete auf metalmeier's Frage in Anwendungsentwickler und Programmierer
Überlege doch mal, was an deiner Aussage nicht stimmt. Ist while ($n -lt 7) wirklich das selbe, wie until ($n -gt 7)? Schaue doch mal genau dein Beispiel an, denn da steht schon die Antwort. -
PHP - Daten in Datenbank
Whiz-zarD antwortete auf MauriceL01's Frage in Anwendungsentwickler und Programmierer
$data_type und $length sind optional. Angeben musst du sie nicht. Ich bin zwar kein PHP-Experte aber ich würde sie angeben. Ich kann mir vorstellen, dass sie auch genutzt werden, um XSS-Angriffe zu verhindern (schwache Typisierung und so). Wenn du sie aber benutzt, dann musst du $data_type und $length mit einem Komma trennen: $sth->bindParam(1, $_POST["firma"], PDO::PARAM_STR, 255); $sth->bindParam(2, $_POST["fax"], PDO::PARAM_INT); -
Festplatte verliert unter Last Verbindung
Whiz-zarD antwortete auf Leumast's Frage in Systemadministratoren und Netzwerktechniker
Die Stecker müssten nicht das Problem sein. Wenn es am Strom liegt, muss das Netzteil getauscht werden. -
Festplatte verliert unter Last Verbindung
Whiz-zarD antwortete auf Leumast's Frage in Systemadministratoren und Netzwerktechniker
Joa, sieht stark nach einer sterbenen Festplatte aus. Könnte aber auch das Netzteil sein. Wenn es zu wenig Strom liefert, schaltet sich halt die Festplatte aus. Kenne ich von meinen damaligen Versuchen, 12 Festplatten in meinen Rechner zu bekommen. Wenn du viele Festplatten unter Last standen, lieferte das Netzteil nicht genug Strom und Festplatten schalteten sich sporadisch ab. -
C (array aus unterprogram in main zurück geben)
Whiz-zarD antwortete auf mindtrip_1's Thema in C und C++
Es gibt zwei Arten von Unterprogrammen: Prozeduren und Funktionen. Eine Prozedur führt nur irgendwas aus und hat keinen Rückgabewert. Eine Funktion berechnet irgendwas und gibt dir das Ergebnis zurück. Main() kann sowohl als eine Prozedur als auch eine Funktion betrachtet werden. Wenn du schreibst: int main() { // ... } Dann ist es eine Funktion und es wird ein Rückgabewert mittels dem Schlüsselwort return erwartet. Das Betriebssystem erwartet dann ein Rückgabewert von deinem Programm. Wenn der Rückgabewert 0 ist, dann heißt es, dass Programm lief erfolgreich durch. Bei ungleich 0 ist irgendein Fehler aufgetreten. Wenn du aber hingegen void main() { // ... } schreibst, handelt es sich hier um eine Prozedur, da sie kein Rückgabewert hat. Dies wird mit void gekennzeichnet. Die Prozedur führt halt nur irgendwas aus. Prozeduren und Funktionen kannst du dir halt Vorstellen, wie Blackboxen. Sie machen halt was. Einige geben was zurück, andere wiederum nicht. Jetzt hast du z.B. Abfrage_Rechnung() als Funktion geschrieben aber den Rückgabewert verwendest du gar nicht. Auch ist dir der Gültigkeitsbereich von Variablen nicht klar. Variablen haben nämlich nur eine eingeschränkte Gültigkeit. Sie gelten nur in den geschweiften Klammern, in denen sie deklariert sind. Beispiel: void main() { int wert = 123; // Variable ist in main() gültig. { int wert2 = 234; // Variable ist nur in den inneren geschweiften klammern gültig printf("wert2 = %i\n",wert2); // Funktioniert, weil wert2 im korrekten Gültigkeitsbereich ausgewiesen wird. } printf("wert = %i\n",wert); printf("wert2 = %i\n",wert2); // Der Compiler meldet einen Fehler, da die Variable wert2 nicht bekannt ist. } Es funktioniert also nicht, dass du Variablen für die Rückgabewerte in main() deklarierst und dann versuchst sie innerhalb der Funktionen zu befüllen. Du müsst den Rückgabewert in main() benutzen. Also anstatt: int main() { int wahl; // ... Abfrage_Rechnung(); // ... } int Abfrage_Rechnung() { int wahl; // ... return wahl; } Musst du dann schreiben: int main() { int wahl = Abfrage_Rechnung(); } int Abfrage_Rechnung() { int wahl; // ... return wahl; } Abfrage_Rechnung() ist halt eine Art Platzhalter für einen Wert, den du in dieser Funktion ermittelst. -
Wieso kommst du auf die Idee, unbedingt irgendwas mit der IT machen zu wollen?
-
Python-Programm über Console aufrufen
Whiz-zarD antwortete auf ankon's Thema in Skript- und Webserverprogrammierung
Was steht denn überhaupt in zeit_01.py? -
Wie kann ich eine Map erzeugen aus Daten einer anderen Klasse ?
Whiz-zarD antwortete auf java_anfaenger's Thema in Java
Wir haben doch jetzt alles durch. Wir haben die HashMap. Wieso schreibst du wieder Student.getMatrikelnummer()? Ehrlich gesagt, bin ich mit den Nerven am Ende und möchte hier auch nichts mehr schreiben. Gefühlt muss ich wieder von vorne anfangen... -
Wie kann ich eine Map erzeugen aus Daten einer anderen Klasse ?
Whiz-zarD antwortete auf java_anfaenger's Thema in Java
Ja, wie denn auch? Du splittest ja auch den String "Name;Matrikelnummer;Lieblingfach" und keine Studentendaten. Jetzt kommt der letzte Punkt: Mehrere Studenten in die HashMap füllen Also schreibst du wieder eine for-Schleife, die nun über deine Liste mit deinen Studentendaten (also die Liste mit den string der Studentendaten) iteriert, ihn splittet und die Daten in die HashMap füllt. -
Wie kann ich eine Map erzeugen aus Daten einer anderen Klasse ?
Whiz-zarD antwortete auf java_anfaenger's Thema in Java
Richtig. Also wissen wir nun folgendes: wie man ein string in ein Array splittet wie man auf die Strings im Array zugreifen kann wie man eine HashMap füllt Daraus kann man ja schon mal ein Code schreiben, der die Informationen von einem Student holt und sie in die HashMap überführt. Fehlen nur noch zwei Dinge: Über die HashMap iterieren und die Daten auf der Konsole ausgeben Mehrere Studenten in die HashMap füllen Wie kann man jetzt nun über die HashMap iterieren und den Schlüssel und Wert auf der Konsole ausgeben? Edit: Ja, es kommt so eine for-Schleife. Es muss aber Map.Entry heißen und getValue() gibt ein string zurück und keine Zahl. Also: for (Map.Entry<String, String> pair: studentenDaten.entrySet()) { System.out.format("key: %s, value: %s\n", pair.getKey(), pair.getValue()); }