trait SupportsPushDownJoin extends ScanBuilder
A mix-in interface for ScanBuilder. Data sources can implement this interface to
push down join operators.
- Annotations
- @Evolving()
- Source
- SupportsPushDownJoin.java
- Since
4.1.0
- Alphabetic
- By Inheritance
- SupportsPushDownJoin
- ScanBuilder
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def build(): Scan
- Definition Classes
- ScanBuilder
- abstract def isOtherSideCompatibleForJoin(other: SupportsPushDownJoin): Boolean
Returns true if the other side of the join is compatible with the current
SupportsPushDownJoinfor a join push down, meaning both sides can be processed together within the same underlying data source.Returns true if the other side of the join is compatible with the current
SupportsPushDownJoinfor 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. - abstract def pushDownJoin(other: SupportsPushDownJoin, joinType: JoinType, leftSideRequiredColumnsWithAliases: Array[ColumnWithAlias], rightSideRequiredColumnsWithAliases: Array[ColumnWithAlias], condition: Predicate): Boolean
Pushes down the join of the current
SupportsPushDownJoinand the other side of joinSupportsPushDownJoin.Pushes down the join of the current
SupportsPushDownJoinand the other side of joinSupportsPushDownJoin.- other
SupportsPushDownJointhat thisSupportsPushDownJoingets joined with.- joinType
the type of join.
- leftSideRequiredColumnsWithAliases
required output of the left side
SupportsPushDownJoin- rightSideRequiredColumnsWithAliases
required output of the right side
SupportsPushDownJoin- condition
join condition. Columns are named after the specified aliases in
leftSideRequiredColumnWithAliasesandrightSideRequiredColumnWithAliases- returns
True if join has been successfully pushed down.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)