在分布式环境中,sql访问多个数据库中的表,优化器需要选择一个运算节点,将其他节点的数据传送到运算节点再执行sql。由于本地数据库无法知道远程数据库表的统计信息,因此会采用假设,例如假设远程表的记录数为100条,这往往与实际情况出入很大,这会导致优化器选择不合适的运算节点。而开发人员是了解真实情况的,因此可以通过hint来指定驱动节点,即在哪个数据库中进行运算(通常选择大表所在的节点)。SELECT /*+DRIVING_SITE(dept)*/ *FROM emp, dept@rsiteWHERE emp.deptno = dept.deptno;这有时是个非常有用的优化方法,设想dept有...
Link URL: http://luw.itpub.net/post/43737/531121
Link URL: http://luw.itpub.net/post/43737/531121
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/18474/viewspace-767450/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/18474/viewspace-767450/