Me acerco a todos humildemente como alguien que NO es un DBA, y estoy seguro de que mi pregunta está llena de deficiencias conceptuales y "depende de" las minas terrestres. También estoy bastante seguro de que todos los que elijan responder van a querer mucho más en cuanto a detalles de lo que puedo ofrecer actualmente.
Dicho esto, tengo curiosidad sobre el siguiente escenario en general:
- Digamos que tengo dos consultas no triviales.
- La consulta 1 requiere 2 minutos para completar en promedio.
- La consulta 2 requiere 5 minutos para completar en promedio.
Si los ejecuto en serie, uno después del otro, espero que requiera 7 minutos para completar en promedio. ¿Es esto razonable?
Más que eso, sin embargo, ¿qué pasa si ejecuto las dos consultas al mismo tiempo? Dos conexiones separadas al mismo tiempo.
- ¿En qué condiciones esperaría ver una aceleración? (Tiempo total <7 minutos)
- ¿En qué condiciones esperaría ver una desaceleración? (Tiempo total> 7 minutos)
Ahora, si tuviera 1,000 consultas no triviales ejecutándose simultáneamente, tengo el presentimiento de que resultaría en una desaceleración general. En ese caso, ¿dónde estaría el cuello de botella? ¿Procesador? ¿RAM? Unidades?
Una vez más, sé que probablemente sea imposible responder la pregunta con precisión sin conocer los detalles (que no tengo). Estoy buscando algunas pautas generales en las que pensar cuando hago las siguientes preguntas:
- ¿En qué circunstancias las consultas concurrentes resultan en una aceleración general?
- ¿En qué circunstancias las consultas concurrentes resultan en una desaceleración general?
fuente