1. Unión de bucle anidado :
este es un tipo de algoritmo de unión física que se utiliza en el caso de unir 2 relaciones. Esta unión es una técnica de unión interna, lo que significa que no podemos ver la unión. Este es el más simple de todos los tipos de uniones. Este es el algoritmo más adecuado para datos pequeños y transacciones más pequeñas. En el caso de 2 relaciones denominadas R y S, el algoritmo para la combinación de bucle anidado sería el siguiente:
For each record x of R read in, do Use the index on B for S Get all the matching records (having B=x.A) End
2. Hash Join:
Hash Join también es un tipo de algoritmo de unión física que se utiliza en el caso de unir dos tablas internamente. La unión es una técnica de unión interna, lo que significa que no podemos ver la unión. La selección de combinación la realiza automáticamente el optimizador de consultas. La unión hash se realiza mediante dos pasos, la construcción y la sonda. En el caso de 2 relaciones denominadas R y S, el algoritmo para Hash join sería el siguiente:
Hash records of R, one by one, using A values (Use the same M buckets and same hash function h) Hash matching pair of records into the same bucket End
Diferencia entre la unión de bucle anidado y la unión hash:
S. No. | Unión de bucle anidado | Unión hash |
---|---|---|
1. | Se procesa formando un bucle externo dentro de un bucle interno, después de lo cual el bucle interno se procesa individualmente para la menor cantidad de entradas que tenga. | Se utiliza específicamente en caso de unión de mesas más grandes. |
2. | La combinación anidada tiene el menor rendimiento en el caso de tablas grandes. | Tiene el mejor rendimiento en el caso de entradas grandes, ordenadas y no indexadas. |
3. | Hay dos fases en este procesamiento de bucle externo e interno. | Las dos fases en esto son construir y sondear. |
4. | Los pasos involucrados incluyen identificar una tabla de control externa y asignarle la tabla interna, y procesar las filas de la tabla interna para cada fila de la tabla externa. | Los pasos involucrados son construir una tabla Hash en una mesa pequeña. Se utiliza para comprobar si el valor hash de la tabla Hash es aplicable para cada elemento de la segunda fila. |
5. | El escaneo de rango de índice se realiza aquí. | El escaneo de la tabla completa de la tabla más pequeña se realiza en caso de unión hash. |
6. | Esto utiliza menos recursos de RAM. | Utiliza más recursos de RAM. |
7. | Es el tipo de unión más común. | No es tan común como la unión de bucle anidado. |
8. | Se requiere el menor número de comparaciones en caso de unión de bucle anidado. | Necesita más comparaciones que la unión de bucle anidado, por lo que utiliza más recursos de RAM. |
9. | Es el algoritmo de combinación más rápido debido al menor número de comparaciones. | No es tan rápido debido al mayor número de comparaciones. |
10 | Es mejor que todos los demás tipos de combinación para transacciones pequeñas y datos pequeños. | No es tan bueno como la combinación de bucle anidado en el caso de datos más pequeños. |
11 | Es de tres tipos, a saber, unión de bucle anidado, unión de bucle anidado indexado y unión de bucle anidado indexado temporal. | Sus tipos son hash join clásico, hash join Grace, hash join híbrido, hash anti-join, hash semi-join, hash join recursivo y hash bailout. |
12 | No se selecciona automáticamente. | Esta combinación se selecciona automáticamente en caso de que no haya una razón específica para adoptar otros tipos de algoritmos de combinación. También se le conoce como el tipo de referencia de todos los operadores de combinación. |
Publicación traducida automáticamente
Artículo escrito por supriya_saxena y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA