We apply the one shot semi-join execution strategy, which allows parallelism and processes multiple semi-joins simultaneously, to optimize the transmission cost of distributed queries. The query optimization problem based on this strategy is NP-hard. Nevertheless, in practice most of the parameters needed for query optimization, such as relation cardinality and selectivity, are of fixed-precision, i.e. their binary representations have no more than a fixed number of digits after the binary point. Imposing this fixed-precision constraint, we develop an efficient distributed query processing algorithm. For situations where the fixed-precision constraint doe not apply, we propose a method to truncate the parameters and use the same algorithm to find near-optimal solutions. By analyzing the truncation errors, we provide a quantitative comparison between the near-optimal solutions and the optimal ones.
Computer Systems Science And Engineering,8(4),245-253