Hallo,
ich möchte ein Programm bauen, welches bei eingehendem File (XML, csv, txt, whatever) automatisch Datenbanken anspricht und in diesen Datenbanken nach Werten aus dem File sucht und am Ende eine Abgleichsdatei wieder ausgibt. Läuft natürlich auf einem Server.
Meine Frage ist, wie ich die Schnittstelle für das eingehende File bauen würde. Sprich, was kommt dafür in Frage?
(Ich bin in Sachen Schnittstellen noch ein Anfänger)
Den Abgleich würde ich dann mit SQlite o. Ä. machen.
Wäre so ein Stück Software in Python eigentlich auch schnell genug?
Viele Grüße und schonmal Danke.
Programm für automatischen Datenabgleich
-
- User
- Beiträge: 439
- Registriert: Mittwoch 8. August 2018, 16:42
__backjack__: "Jemand der VB oder PHP kann, der also was Programmieren angeht irgendwo im negativen Bereich liegt (...)"
Das was du da beschreibst nennt sich ETL - https://en.wikipedia.org/wiki/Extract,_transform,_load
Dafuer gibt es auch was in Python: https://towardsdatascience.com/python-e ... f731e70b49
Da wird zB pandas empfohlen, weil das eine Vielzahl von Dateiformaten recht gut automatisch in einen DataFrame wandelt. Du kommst aber nicht um eigenen Code herum.
Grundsaetzlich musst du ein System schaffen, das
- per Heuristik ein eingehendes File auf eine ID oder etwas aehnliches Abbilded
- ein Mapping zwischen einer solchen ID und einer Transformations-Funktion anlegen, und dann die jeweiligen Schritte, die notwendig sind, ausprogrammieren.
Zur Performance kann man ausser Gemeinplaetzen nicht viel sagen, ohne das System zu kennen. Ich behaupte mal, wenn du noch mit dem Entwurf eines solchen Systems kaempfst, ist Performance nicht deine Sorge. Und immer gilt: Korrektheit kommt zuerst.
Dafuer gibt es auch was in Python: https://towardsdatascience.com/python-e ... f731e70b49
Da wird zB pandas empfohlen, weil das eine Vielzahl von Dateiformaten recht gut automatisch in einen DataFrame wandelt. Du kommst aber nicht um eigenen Code herum.
Grundsaetzlich musst du ein System schaffen, das
- per Heuristik ein eingehendes File auf eine ID oder etwas aehnliches Abbilded
- ein Mapping zwischen einer solchen ID und einer Transformations-Funktion anlegen, und dann die jeweiligen Schritte, die notwendig sind, ausprogrammieren.
Zur Performance kann man ausser Gemeinplaetzen nicht viel sagen, ohne das System zu kennen. Ich behaupte mal, wenn du noch mit dem Entwurf eines solchen Systems kaempfst, ist Performance nicht deine Sorge. Und immer gilt: Korrektheit kommt zuerst.
-
- User
- Beiträge: 439
- Registriert: Mittwoch 8. August 2018, 16:42
Ja danke dir. Mega gut.
Pandas habe ich noch nie in der Hinsicht genutzt. Immer nur um CSVs einzulesen und irgendwelche Matrixoperationen durchzuführen.
Muss mir nur noch klarmachen, wie Pandas das dann automatisch einließt und alles was reinkommt verarbeitet. Habe das bislang nämlich immer nur skriptbasiert mit Pfadangabe gemacht.
Pandas habe ich noch nie in der Hinsicht genutzt. Immer nur um CSVs einzulesen und irgendwelche Matrixoperationen durchzuführen.
Muss mir nur noch klarmachen, wie Pandas das dann automatisch einließt und alles was reinkommt verarbeitet. Habe das bislang nämlich immer nur skriptbasiert mit Pfadangabe gemacht.
__backjack__: "Jemand der VB oder PHP kann, der also was Programmieren angeht irgendwo im negativen Bereich liegt (...)"
-
- User
- Beiträge: 439
- Registriert: Mittwoch 8. August 2018, 16:42
Welche Bibliothek könnt ihr denn für einen ETL-Prozess empfehlen?
Da gibt es ja wieder super viele...
Da gibt es ja wieder super viele...
__backjack__: "Jemand der VB oder PHP kann, der also was Programmieren angeht irgendwo im negativen Bereich liegt (...)"