Para algo como esto, creo que SSIS sería lo más simple. Está diseñado para insertos grandes de hasta 1 TB. De hecho, recomendaría este artículo de MSDN Cargamos 1 TB en 30 minutos y tú también puedes .
Hacer cosas simples como eliminar índices y realizar otras optimizaciones como la partición haría que su carga fuera más rápida. Si bien 30 minutos no es un tiempo factible, sería una tarea muy sencilla ejecutar un paquete SSIS fuera del horario comercial.
Mi negocio no tiene una carga en la escala que usted tiene, pero actualizamos nuestras bases de datos de más de 100 millones por noche, lo que no toma más de 45 minutos, incluso si está mal optimizado.