-
Notifications
You must be signed in to change notification settings - Fork 230
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for MapType in selected operators #984
Conversation
Signed-off-by: Kuhu Shukla <kuhus@nvidia.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know this is still WIP, but I wanted to make sure that we were going in the right direction.
shims/spark300/src/main/scala/com/nvidia/spark/rapids/shims/spark300/Spark300Shims.scala
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/GpuColumnVector.java
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/GpuColumnVector.java
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/GpuColumnVector.java
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/RapidsHostColumnVector.java
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/scala/com/nvidia/spark/rapids/GpuRowToColumnarExec.scala
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/scala/com/nvidia/spark/rapids/basicPhysicalOperators.scala
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/scala/org/apache/spark/sql/rapids/complexTypeExtractors.scala
Outdated
Show resolved
Hide resolved
…into getMapValue_main
sql-plugin/src/main/java/com/nvidia/spark/rapids/GpuColumnVector.java
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/RapidsHostColumnVector.java
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/GpuColumnVector.java
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/RapidsHostColumnVector.java
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/RapidsHostColumnVector.java
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/RapidsHostColumnVectorCore.java
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/RapidsHostColumnVectorCore.java
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/scala/com/nvidia/spark/rapids/basicPhysicalOperators.scala
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/RapidsHostColumnVector.java
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/GpuColumnVector.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, I have one nit that would be nice to fix here and several follow on issues that we should file.
sql-plugin/src/main/java/com/nvidia/spark/rapids/GpuColumnVector.java
Outdated
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/RapidsHostColumnVector.java
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/RapidsHostColumnVector.java
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/RapidsHostColumnVectorCore.java
Show resolved
Hide resolved
sql-plugin/src/main/java/com/nvidia/spark/rapids/RapidsHostColumnVectorCore.java
Show resolved
Hide resolved
build |
I have pushed a bug fix for python failures seen in CI. |
build |
Seeing a bunch of NoSuchMethod found errors :
this seems related to #1009 |
I will try again once #1009 is in. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. Just need to get the build to pass.
…into getMapValue_main
build |
Oh well I was bit by an intermittent failure in |
build |
Signed-off-by: Kuhu Shukla <kuhus@nvidia.com>
build |
I'm going to merge this now. |
* Add support for getMapValue and MapType for certain operators Signed-off-by: Kuhu Shukla <kuhus@nvidia.com>
* Add support for getMapValue and MapType for certain operators Signed-off-by: Kuhu Shukla <kuhus@nvidia.com>
* Add support for getMapValue and MapType for certain operators Signed-off-by: Kuhu Shukla <kuhus@nvidia.com>
… RmmSpark (NVIDIA#984) Signed-off-by: Robert (Bobby) Evans <bobby@apache.org>
Adds support for getMapValue and whitelists maps wherever required per some targeted queries. Also swicthes Builder to ColumnBuilder.
Needs a ton of testing but this is what I have so far. Very much a WIP.
Need to add tests for - filter and project with operators we now support for maptype and negative test for a couple others as sanity. Also verify the offset and length params to ColumnarMap make sense, initial tests seems to give the right answers but needs more testing. I could not get away with not adding the supported data type whitelisting in filter and project exec. Open to alternative approaches there.
Also for now I have disabled filter to use coalesce, to show how this works for certain targeted queries we want to support. I can modify the approach we take on that as part of this change based on what people think.