Skip to content

Conversation

@sumwale
Copy link
Contributor

@sumwale sumwale commented Dec 14, 2016

Changes proposed in this pull request

  • LocalJoin now adjusts its requiredChildDistributions to match that of a child in case
    partial set of join keys match the partitioning of one or both children
  • check for subset match order to see if the same can be applied to both children,
    else if both had different matches then choose the child with bigger size as per plan statististics
  • also add join column aliases from projections, if any, to OrderlessHashPartitioning

TODO: add similar to SortMergeJoinExec (or its optimized version in SnappyData when it is added)

Patch testing

precheckin; TPCH Q2, Q5, Q9 plans, NorthWind test

ReleaseNotes.txt changes

NA

Other PRs

TIBCOSoftware/snappy-spark#37

…of partitioning columns

- LocalJoin now adjusts its requiredChildDistributions to match that of a child in case
  partial set of join keys match the partitioning of one or both children
- check for subset match order to see if the same can be applied to both children,
  else if both had different matches then choose the child with bigger size as per plan statististics
- also add join column aliases from projections, if any, to OrderlessHashPartitioning

TODO: add similar to SortMergeJoinExec (or its optimized version in SnappyData when it is added)
Copy link
Contributor

@hbhanawat hbhanawat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good

case e: Expression =>
val numColumns = e.children.length
if (keys.length > numColumns) {
keys.indices.combinations(numColumns).map(s => s.map(keys.apply) -> s)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

combinations.. nice API. Pretty interesting way of writing this.

@sumwale sumwale merged commit 0977af6 into master Dec 15, 2016
@sumwale sumwale deleted the SNAP-1252 branch December 15, 2016 06:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants