Repository navigation
feat(python): Plug into DataFusion Python natively through a custom FFI query planner - #2588
Conversation
e57d4d3 to
32b0078
Compare
|
hey @timsaucer this is follow up on your #2252 after datafusion python 55 released, I have removed good part of ballista specific code, happy day scenario works, it connects to ballista and runs the query, but any ideas what could be done ? cc @andygrove another pair of eyes would help (thanks) |
32b0078 to
d568260
Compare
|
there is comment apache/datafusion-python#1679 (comment) but it makes no sense to me, perhaps @timsaucer may have better idea what claude wants to say :D |
andygrove
left a comment
There was a problem hiding this comment.
Thanks for pushing this through @milenkovicm, and @timsaucer for the groundwork in #2252! Moving to a real DataFusion SessionContext is a big improvement. Every DataFrame method now runs on the cluster, where before only the few the metaclass wrapped did.
I built this branch and main locally and ran a few probes against setup_test_cluster(). I left comments on a config regression, EXPLAIN ANALYZE and some API cleanup. I'm requesting changes mainly for the config issue, since it makes queries fail that work on main today.
Since this removes DistributedDataFrame, turns BallistaSessionContext into a function and changes what config does, could we also add the api-change label and a Python client section to docs/source/upgrading/56.0.0.md?
|
thanks @andygrove comments make sense, will follow up over the weekend, converting to PR draft until then |
3f8c511 to
b1ad4ea
Compare
... as there is no need for it right now
4e32cd5 to
bdb3ce5
Compare
|
thanks @andygrove! |
The workspace is pinned to a DataFusion commit on main, and the Python crate took the Ballista crates by path, so its build pulled that DataFusion in next to the DataFusion 55 that datafusion-python needs, and python/Cargo.lock fell out of date with the manifests. The published 55.0.0 crates cannot stand in: the Python client uses core changes made after that release (apache#2588). Take the Ballista crates from 72d6807, the last commit on main before the pin, and keep the path dependencies commented for when the workspace is back on a released DataFusion.
Which issue does this PR close?
Closes #.
Part of #2618
Rationale for this change
What changes are included in this PR?
DistributedDataFrameandBallistaContextDistributedDataFrameandBallistaContextDistributedDataFrameandBallistaContext, i would argue they should not be there in the first placeAre there any user-facing changes?
yes api changed, some methods and classes disappeared, as python integration was experimental users should have expected
this PR builds on @timsaucer's PR #2252
Follow up