Reading massive sensor outputs with high speed

2000 sensors @200 Hz is 400K analogreadings per second.
I don't know the MEGA but an UNO has only one ADC on board which is multiplexed and can do ~8.5 K readings with 100% CPU load @10bits.

How many bits per sample do you want? because The Arduino allows to do analogRead faster for the prize of some precision. I have some code that can do 50K samples per second and IIRC it still had 7-8 bits prec.

Cr0sh answer is very good.

I would start sampling only 1 in 100 sensors (~20) at strategic places constantly. And do a finer grain sampling if one of the 20 is triggered. Dividing the area in 16 squares and if the midpoint is triggered => sample the whole square.

2000 = 40 x 50 (assumption) => 20 squares of 10x10 => 20 midpoints

ON the other hand take time to look at other uProc like the mbed that work at higher clockspeeds . Think you will need that.

my 2 cents,