Šta je novo?

[Python] Pomoc oko skripte za kopiranje Pandas DataFrame u MySQL tabelu

enterthevoid

Banned
Banovan
Učlanjen(a)
25.11.2017
Poruke
485
Poena
20
Ovako, imam CSV eksportovan iz jedne tabele iz prve baze kao ulaz koji pretvorim u DataFrame preko Pandas API-ja. Taj DataFrame precistim i namestim da nalegne na tabelu u drugoj SQL bazi. Sve je tu OK, unosi se kopiraju ali se kopiraju svaki put zato sto Pandas.to_sql funkcija ima samo append ili replace opcije, prva unosi redove ako tabela postoji i dodaje ih na vec postojece redove u tableti, druga nije opcija jer vrsi zamenu tabele a tabele su uvezane spoljnim kljucevima. Ne postoji update_rows ili neka slicna opcija u ovom Pandas frameworku kada se podaci salju u relacionu bazu.

Sta mi je najbolje ciniti? Bataliti pandas i podatke slati direktno preko SQLAlchemy ORM u nekoj drugoj formi? Nisam probao ali valjda SQLAlchemy ume da uradi taj update.

Druga opcija je neka skripta koju sam nasao na nekom blogu sa funkcijom koja vrsi prosirenje Pandas .to_sql funkcije i omogucava update redova. Ali je to za mene da budem iskren malo zbunjujuce posto te funkcije uvode tajmere i malo me je strah da ce to sve da u nekom momentu se polupa i napravi haos u bazi.

Sta je uopste najbolja opcija u ovom slucaju: sinhronizacija dve baze preko skripte pretvorene u mikroservis koja se da li na aplikativnom serveru. Ne mora biti Python, spreman sam i na drugacije resenje ukoliko imam garanciju da ce ulozeni trud vratiti kroz resenje koje radi kako treba. Posto mi deluje da ovo sto sam probao sa Pandas udarilo u zid i moram sve ispocetka da pravim.
 
Poslednja izmena:
Nazad
Vrh Dno