Actualmente no. Actualmente, Microsoft está investigando formas de hacer esto usando una combinación de trabajo ya completado y un plan de ejecución estimado (Vea los detalles de su investigación en el sitio de Microsoft Research ), por lo que podemos esperar ver algo pronto. Pero este es el único desarrollo del que tengo conocimiento.
La solución que he usado con más éxito en el pasado, para procesos que toman mucho tiempo, es dividir el proceso en tareas más pequeñas y establecer hitos al final de cada tarea. Se registra el tiempo total para todas las ejecuciones de cada tarea, y esto se utiliza para comparar el progreso de la ejecución actual. Esto depende en gran medida de la linealidad de sus consultas (es decir, el tiempo necesario para ejecutar es linealmente proporcional a la cantidad de registros). Los hitos se pueden medir por pasos a través de un proceso, dividiendo los datos en segmentos más pequeños, o ambos.