För något sånt här tror jag att SSIS skulle vara det enklaste. Den är designad för stora skär så stora som 1 TB. Jag skulle faktiskt rekommendera den här MSDN-artikeln Vi laddade 1 TB på 30 minuter och det kan du också .
Att göra enkla saker som att ta bort index och utföra andra optimeringar som partitionering skulle göra din laddning snabbare. Även om 30 minuter inte är en genomförbar tid att skjuta på, skulle det vara en mycket enkel uppgift att köra ett SSIS-paket utanför kontorstid.
Mitt företag har ingen belastning på den skala du har, men vi uppdaterar våra databaser med mer än 100 miljoner per natt, vilket inte tar mer än 45 minuter, även om det är dåligt optimerat.