Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams

I want to use Dask for some SQL large table, but when I run

dd.read_sql_table('ORDENES', str(engine.url), index_col='ID', npartitions=1)

I receive this

TypeError: Additional arguments should be named <dialectname>_<argument>, got 'autoload'

The original engine is this:

engine = create_engine("mysql+pymysql://" + "xxx" + ":" + "xxx" + "@" + "xxx.amazonaws.com" + "/" + "facturacion")

Any Idea of how to fix this?, I tried to add autoload to mysql engine, but the driver do not accept that

Do you have a more complete exception stack trace? Are you able to read data with sqlalchemy only? – Guillaume EB Feb 23 at 11:13

Dask uses SQLAlchemy to perform SQL operations. The problem is that currently dask hasn't been updated to work with SQLAlchemy 2.0.

It still uses the autoload argument when creating an SQLAlchemy Table object.

According to the SQLAlchemy migration to 2.0 guide autoload_with=engine should be used instead.

Until dask is updated to support SQLAlchemy 2.0, the easiest workaround is to use SQLAlchemy version 1.4.45.

pip install sqlalchemy==1.4.45

Thanks for contributing an answer to Stack Overflow!

  • Please be sure to answer the question. Provide details and share your research!

But avoid

  • Asking for help, clarification, or responding to other answers.
  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.