zhouqingqing / qpmodel

A Relational Optimizer and Executor
MIT License
64 stars 18 forks source link

add replicated, roundrobin table support #172

Closed zhouqingqing closed 3 years ago

zhouqingqing commented 3 years ago

This patch implements create table, insertion, mark exchange and query replicated and roundrobin table mixed with other distribued tables. Mark exchange is still in the conservative way, meaning it may add unnessary shuffle to the plan. For example, a replicated table A join distributed table B on non-aligned join key shall not do any shuffle if A is on the build side. See test case Redistribute(). The complete fix is with memo property enforcement.