对于分布式查询过程是在不同的机器上执行的,可分两步:
①在远程服务器上执行尽可能b多的查询处理阶段;
②在请求者服务器上执行其余阶段(合并中间结果和之后的所有内容)。
例如,SELECT f(sum(g(x)))FROM distributed_table GROUP BY h(y)中,
如果distributed_table至少有两个分片,则在远程服务器上执行函数’g’和’h’,并在请求服务器上执行函数’f’。
如果distributed_table只有一个分片,则在该分片的服务器上执行所有’f’,’g’和’h’功能。
这虽然不影响结果,合理安排每次请求的集群中主机的IP地址,会提高查询的性能;
使用字典的函数时将使用运行它们的服务器上存在的字典
函数的结果通常不依赖于它在哪个服务器上执行。但是,有时这很重要。