push de cosas de teoria
This commit is contained in:
37
BasesDeDatos/procesamiento de Consultas/1.md
Normal file
37
BasesDeDatos/procesamiento de Consultas/1.md
Normal file
@@ -0,0 +1,37 @@
|
||||
Para el parcial en la clase 7 esta el modelo del parcial toca speedruniar
|
||||
|
||||
# Tipos de optimizaciones
|
||||
## Por Costos
|
||||
El motor calcula el costo de usar cada tipo de plan de ejecucion y elije el más optimo basado en una balanza de uso de memoria vs uso de procesamiento.
|
||||
## Heuristica
|
||||
En vez de calcular los costos elije un costo el cual es el más optimo en la mayoria de las veces y se ahora intentar computar cual es mejor.
|
||||
|
||||
● Aplicar primero las selecciones (filtrar registros).
|
||||
● Realizar primero las proyecciones (reducir columnas).
|
||||
● Evitar joins sin condiciones (productos cartesianos).
|
||||
● Usar índices si la selectividad es alta.
|
||||
|
||||
# catalogo estadistico
|
||||
Tambien conocido como diccionario de datos contiene estadisticas como:
|
||||
|
||||
- cant registros por tabla
|
||||
- cant valores por columna
|
||||
- distribucion de datos
|
||||
- size bloques y factores bloqueo
|
||||
|
||||
## que permite
|
||||
|
||||
Permite elejir de forma adecuada si combiene hacer un scaneo de tabla completa o utilizar un indice. y ordenar los joins de forma optima
|
||||
|
||||
# Buenas Pracitcas
|
||||
- Evitar Select *
|
||||
|
||||
- NOT EXISTS >> NOT IN
|
||||
|
||||
- No utilizar funciones en los WHERE
|
||||
|
||||
- Evaluar el uso de indices
|
||||
|
||||
- Evitar Distict, Groupby, Order by si no son necesarios
|
||||
|
||||
|
||||
Reference in New Issue
Block a user