Bevor ich ins Detail gehe, um mir ein gutes Bild zu machen, möchte ich sagen, dass die Anwendung Power BI in gewisser Weise ähnelt, aber es ist offensichtlich ist kein Klon davon. Zweitens kenne ich Python nur für Datenanalysen und bin mit Pandas vertraut.
Jetzt ins Detail gehen:
Die Anwendung im Kern erhält vom Benutzer Daten in Form von entweder CSV- oder Excel-Dateien. Betrachten Sie als Beispiel vorerst zwei Dateien, eine mit Verkaufsdaten (verkaufte Einheiten) für eine Reihe von Produkten für ein Jahr und die andere mit Produktdaten mit Attributen wie Stückkosten, Stückabmessungen usw.
Der Benutzer wird Laden Sie diese beiden Dateien in die Anwendung hoch und die Anwendung kann bestimmte Diagramme ausgeben, z. B. verkaufte Einheiten pro Tag (dies wäre ein einfaches Liniendiagramm), ABC-Analyse basierend auf verkauften Einheiten (dies ist eine Tabelle mit der Anzahl der Zeilen). entspricht der Anzahl einzigartiger Produkte, denen jeweils eine Kategorie zugewiesen ist Produkt, entweder A, B, C oder D) und andere ähnliche Diagramme. Offensichtlich wird es Dropdown-Menüs und Benutzereingabefelder zum Auswählen von Parametern und eine Schaltfläche „Ausführen“ zum Generieren dieser Diagramme geben.
Abschließend, und hier kann es schwierig werden, können diese Dateien groß sein, beispielsweise die Verkaufsdatendatei Insbesondere könnten leicht 5 oder 10 Millionen Zeilen erreicht werden. Nehmen wir vorerst eine höhere Grenze von 50 Millionen Zeilen an.
Schließlich muss es benutzerfreundlich sein – laden Sie einfach die Daten hoch (ignorieren Sie vorerst das Problem von Datentypfehlern in den Daten beim Hochladen), und das tun wir Gut zu gehen.
Was ich mir überlegt habe:
- Eine in C# geschriebene Windows-Anwendung mit einem GUI erstellt und in eine ausführbare Datei umgewandelt, die der Endbenutzer auf seinem PC installieren kann: Ich habe keine Kenntnis davon, aber kann die Anwendung die Daten problemlos speichern? Oder braucht es eine Datenbank wie SQL Server?
- Eine in Python geschriebene Windows-Anwendung mit einer GUI und „irgendwie“ in eine ausführbare Datei konvertiert damit der Endbenutzer es auf seinem PC installieren kann: Der Vorteil dieses Szenarios besteht darin, dass ich etwas Python kenne, aber ich befürchte, dass der Prozess der Konvertierung in eine ausführbare Datei ein Problem darstellen könnte. Ich habe online nachgeschaut und es gibt Pakete, die jedoch gemischte Ergebnisse liefern. Zweitens weiß ich nicht, ob die großen Datenmengen ein Problem darstellen könnten, aber ich denke, eine Bibliothek wie Polars könnte hilfreich sein, habe es allerdings nicht ausprobiert.
- Eine in Python geschriebene Webanwendung: Ich weiß nichts über Webanwendungen, aber ich denke, ich kann eine in Python schreiben und sie dann auf AWS/Azure laufen lassen. Es macht mir nichts aus, für AWS/Azure zu bezahlen. Wird es jedoch in der Lage sein, die großen Datendateigrößen (einige GB?) sowohl hinsichtlich der Speicherung als auch der Berechnung zu bewältigen? Muss ich noch etwas lernen? Wie Back-End- oder Front-End-Sprachen?
- Gibt es noch etwas, das ich nicht weiß?