0

ich auf Daten arbeitete Wrangling Problem mit Python, , die ein schmutziges Excel in eine saubere Exceleine bessere parallele Architektur in Python Wahl

Datei Datei verarbeitet Ich mag durch die Einführung von Parallelität/Parallelität mehr Input-Dateien verarbeiten.

Ich habe die folgenden Optionen 1) Unter Verwendung von Multithreading 2) Mit multiProceesing Module 3) ParallelPython Modul,

ich eine Grundidee der drei Methoden haben, würde ich gerne wissen, welche Methode am besten und warum?

In Bref, Verarbeitung eines einzelnen schmutzig Excel-Datei heute 3 Minuten dauert,

Ziel: Parallelität/Parallelität einzuführen mehrere Dateien auf einmal zu verarbeiten. der Suche nach, beste Methode der Parallelität das Ziel

Antwort

0

Da Ihr Prozess gebunden ist meist CPU Multi-Threading wird nicht schnell wegen der GIL zu erreichen ...

würde ich empfehlen Multiprozessing oder concurrent.futures, da sie etwas einfacher die ParallelPython (nur ein bisschen :))

Beispiel sind:

with concurrent.futures.ProcessPoolExecutor() as executor: 
    for file_path, clean_file in zip(files, executor.map(data_wrangler, files)): 
     print('%s is now clean!' % (file_path)) 
     #do something with clean_file if you want 

Nur wenn Sie die Last zwischen Servern verteilen müssen, würde ich ParallelPython empfehlen.