Hola mary!
Las vistas son objetos precompilados que optimizan un poco el rendimiento, pero no realizan copias de los datos que estás utilizando.
El problema con consultar desde 3 servidores distintos es que el motor tiene que interactuar con los 3 para resolver la consulta. Por ello lo más recomendable trasladar los datos que vas a utilizar para consultar a un sólo servidor.
Cómo? utilizando tablas temporales.
Puedes enviar la consulta que estás utilizando? (así te podría explicar mejor)
Supongo que cuando ejecutas la consulta y se demora 2 horas lo haces vía analizador de consultas (o Query analyzer), y lo que estás programando está en Visual basic, PHP u otro lenguaje.
mándame los códigos