I'm not monitoring. I'm just gonna check dem balances, if there are balances.
No need to import the private keys to check balances. Just write a little script / programm that queries a known API or even better several APIs in turn. Most wallet programms will not work with 3 million private keys AFAIK anyway. And I am pretty sure if you write blockchain.info a Mail from an university address with a recomendation they will keep the IP (range) from getting banned.
Below is a list of block explorers...
Update: I'm listing out the outcome of this thread here...
1. https://blockchain.info/
2. https://blockr.io/
3. https://blockexplorer.com/
4. https://www.biteasy.com/
5. https://chain.so/btc
6. https://helloblock.io/
7. http://bitcoinchain.com/block_explorer
8. https://bkchain.org/btc
9. http://bitinfocharts.com/bitcoin/
10. http://www.blocktrail.com
If u query all of them in a round-robin manner to 3M+ get address values, all of them will ban your IP range for attempt to DDOS. The only way to do this is having the blockchain locally, have it transformed to a local Oracle/MySQL instance with address and its balances in 2 column and query it locally. That way, U'll miss the real time updated values of Bitcoin addresses though.