ExecuteMany performance is insanely bad

Offen
#558 1 Kommentar 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
20/100
Issue-Typ
Feature
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
python, sql

Rechercherichtung

Beginne damit, die executemany-Implementierung des Connectors zu lokalisieren und das dokumentierte Verhalten zu lesen, das sie als naive Schleife beschreibt. Untersuche, wie eine einzelne SQL-Anweisung mit VALUES(...) das angeforderte Batching für Schreibvorgänge in eine Delta-Tabelle unterstützen könnte, und definiere den Abschluss anhand einer verbesserten Performance bei nichttrivialen DataFrame-Ladevorgängen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

I know that the documentation makes it clear that executemany is a naive for loop:

No optimizations of the query (like batching) will be performed. 

But it's 2025 and please have a more optimized executemany that just issues a single SQL statement using VALUES(...) or something so this is actually usable in a data pipeline. Otherwise, trying to use the databricks SQL connector to write any non-trivial dataframe to a delta table is pointless.

Thanks!

Vorherrschende Sprache
Python
Sterne
233
Forks
152
Ø Merge
21 Std. 5 Min.
Gemergte PRs (30 T.)
10

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus databricks/databricks-sql-python

Alle Issues in databricks/databricks-sql-python

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.