sql >> Databasteknik >  >> RDS >> PostgreSQL

Skapa sql-tabell från dask-dataram med map_partitions och pdf.df.to_sql

Du har helt enkelt skapat en dataram som är en föreskrift av det arbete som ska utföras, men du har inte utfört det. För att köra måste du anropa .compute() på resultatet.

Observera att utdata här inte är en dataram, varje partition utvärderas till None (eftersom to_sql har ingen utgång), så det kan vara renare att uttrycka detta med df.to_delayed , något liknande

dto_sql = dask.delayed(pd.DataFrame.to_sql)
out = [dto_sql(d, 'table_name', db_url, if_exists='append', index=True)
       for d in ddf.to_delayed()]
dask.compute(*out)

Observera också att om du får bra parallellitet beror på databasdrivrutinen och själva datasystemet.



  1. Hur tar jag bort alla blanksteg från ett fält i en Postgres-databas i en uppdateringsfråga?

  2. PostgreSQL långsam på ett stort bord med arrayer och massor av uppdateringar

  3. Lagring av dynamiska egenskaper för objekt i SQL

  4. DAYOFWEEK() Exempel – MySQL