Interface SupportsPushDownJoin
- All Superinterfaces:
ScanBuilder
A mix-in interface for
ScanBuilder. Data sources can implement this interface to
push down join operators.- Since:
- 4.1.0
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final recordA helper class used when there are duplicated names coming from 2 sides of the join operator. -
Method Summary
Modifier and TypeMethodDescriptionbooleanReturns true if the other side of the join is compatible with the currentSupportsPushDownJoinfor a join push down, meaning both sides can be processed together within the same underlying data source.booleanpushDownJoin(SupportsPushDownJoin other, JoinType joinType, SupportsPushDownJoin.ColumnWithAlias[] leftSideRequiredColumnsWithAliases, SupportsPushDownJoin.ColumnWithAlias[] rightSideRequiredColumnsWithAliases, Predicate condition) Pushes down the join of the currentSupportsPushDownJoinand the other side of joinSupportsPushDownJoin.Methods inherited from interface org.apache.spark.sql.connector.read.ScanBuilder
build
-
Method Details
-
isOtherSideCompatibleForJoin
Returns true if the other side of the join is compatible with the currentSupportsPushDownJoinfor a join push down, meaning both sides can be processed together within the same underlying data source.
For example, JDBC connectors are compatible if they use the same host, port, username, and password. -
pushDownJoin
boolean pushDownJoin(SupportsPushDownJoin other, JoinType joinType, SupportsPushDownJoin.ColumnWithAlias[] leftSideRequiredColumnsWithAliases, SupportsPushDownJoin.ColumnWithAlias[] rightSideRequiredColumnsWithAliases, Predicate condition) Pushes down the join of the currentSupportsPushDownJoinand the other side of joinSupportsPushDownJoin.- Parameters:
other-SupportsPushDownJointhat thisSupportsPushDownJoingets joined with.joinType- the type of join.leftSideRequiredColumnsWithAliases- required output of the left sideSupportsPushDownJoinrightSideRequiredColumnsWithAliases- required output of the right sideSupportsPushDownJoincondition- join condition. Columns are named after the specified aliases inleftSideRequiredColumnWithAliasesandrightSideRequiredColumnWithAliases- Returns:
- True if join has been successfully pushed down.
-