Podrias darnos el
plan de ejecucion? Cuando mencionas que el producto cartesiano se resuelve rapido, has identificado EXACTAMENTE en que paso esta la demora? El comando EXPLAIN podria dar una luz...
Lo ultimo que se me ocurre es eliminar los indices y triggers antes de la insercion y reagregarlos al final. Tambien, meter los datos en una tabla temporal y de alli traspasarlos.
Pero quizas debes analizar esta presentacion sobre desempeño:
http://www.slideshare.net/ibsurgeon/...mance-problems