Memory Selection help needed

I am working on a program where I need to store a few hundred 2k byte files in some kind of memory. The data in these 2k files are captured on the fly from the A/D port of the processor. As the processor acquires a new sample of data in the A/D it will need to check the memory to see if the data matches any of the samples already stored to memory. If it isnt it stores the file off to memory and continues to wait until a new sample is acquired. If it is recognized as a sample already stored in memory it will notify the operator (in some way not sure yet how) that it recognizes the sample.

Now for the rub. I have thought about using a stand alone flash chip, meaning not a purchased flash drive but a chip like the SPI EEPROM chips sold by microchip or atmel. The problem is the chips the sell are very small... say in the order of 1 or 2 Mbits. Does anyone know of a source for chips that are larger (remember it is SPI compatible hopefully), reasonably prices and easily acquired.

OR... should I just use a MMC card and just leave it installed full time? I figured 100 or 200MBytes of memory should be more than enough for anything I will ever do..

The processor is the Arduino Mega 1280

Comments and suggestions welcome.

Thanks

NAND FLASH storage chips have higher density than EEPROM and can write faster, in general. Here is a 64Mbit (8Mbyte) SPI NAND FLASH chip:

http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=SST25VF064C-80-4I-SCE-ND


The Gadget Shield: accelerometer, RGB LED, IR transmit/receive, speaker, microphone, light sensor, potentiometer, pushbuttons

I looked at that chip previously. Unfortunately that will probably not store enough of my captured files.. thanks

So use a couple of them then. Bank of 4, or more.