Poate cineva să sugereze un instrument, un cadru sau un serviciu pentru a îndeplini mai rapid sarcina de mai jos.
Intrare : Intrarea în serviciu este un fișier CSV care constă dintr-un identificator și mai multe coloane de imagine cu peste un milion de rânduri.
Obiectiv: Pentru a verifica dacă vreuna din coloana de imagine a rândului îndeplinește rezoluția minimă și pentru a crea o nouă coloană booleană pentru fiecare rând în funcție de rezultate.
Adevărat - Dacă oricare dintre imaginile din rând îndeplinește rezoluția minimă
Fals - Dacă nicio imagine din rând nu îndeplinește rezoluția minimă
Implementarea curentă: Script Python cu panda și multiprocesare care rulează pe o VM mare (procesor 60 Core) care durează aproximativ 4 - 5 ore. Deoarece aceasta este o sarcină periodică, o programăm și o gestionăm cu Cloud Workflow și Celery Backend.
Notă: Căutăm să reducem costurile, deoarece timpul de funcționare al serverului este de aproximativ 4-6 ore pe zi. Prin urmare, 60 Core CPU 24*7 ar fi o mulțime de resurse irosite.
Opțiuni explorate:
- Am exclus Cloud Run din cauza limitărilor de memorie, CPU și timeout.
- Apache Beam cu Cloud Dataflow, pare că există mai puțin suport pentru încărcăturile de lucru neanalitice, iar implementarea Dataframe cu Apache Beam arată încă defectuoasă.
- Spark și Dataproc par a fi bune pentru sarcinile de lucru analitice. Deși o opțiune fără server ar fi mult preferată.
În ce direcție ar trebui să mă uit?