large data storage

I am developing a project using 7 inch touch screen, Arduino MEGA 2560 and its shield.
My need is to acquire a large data (500K bytes) from analog input A0, store it and then later analyse the same, which will further require say 200-300K bytes, finally print the report on display.
At present I have sample tried the project using limited 4K space of built-in EEPROM, but that in no way fulfills my needs.
Is there any way to expand the data memory ?
Can I use the 2GB-SD card, but in using the SD card, how can I use the statements like;

EEPROM.write(address,byte);
EEPROM.read(address);

Please help/guide.
-arun

Keep in mind that the Mega2560 only has 256K of program memory and only 8K of SRAM. If you really need 200-300K to analyze the data, the Mega probably not going to get the job done. You might consider the Teensy 3.6. It has 1Mb of flash and 256Kb of SRAM and is clocked at 180MHz. You can also use the Arduino IDE to program it.

ark1944:
in using the SD card, how can I use the statements like;

EEPROM.write(address,byte);
EEPROM.read(address);

In very much the same way. The difference is that the read and write functions don't have address parameters. You need to use the position function to change the read or write location in the open file. See the SD library examples at File > Examples > SD, the tutorial pages for those examples at:

and the reference page for the SD library:
https://www.arduino.cc/en/Reference/SD

Sorry, I meant the seek function, not the position function.

Using external EEPROMs

Using external EEPROMs (I2C/SPI) is very easy.

However, they are pretty slow because they are using a serial connection.

If that is not a problem for you, just try it. The chips cost close to nothing.

Depending on the chip 4, 8 or more chips can work in parallel, giving you more storage.

You can write to external memory at 8 Mbit/second, which is SPI with clock divisor set to 2.

EEPROM can require some time to complete its internal write cycle.

FRAM can be written to at the same speed, does not have the EEPROM write delay cycle time, and can be written to 10 to 100 trillion times, vs 100 thousand times with EEPROM.

http://www.digikey.com/products/en/integrated-circuits-ics/memory/774?k=fram+memory&k=&pkeyword=fram+memory&pv1989=0&FV=fff40027%2Cfff80434%2Cffe00306%2C268001d&mnonly=0&newproducts=0&ColumnSort=0&page=1&stock=1&quantity=0&ptm=0&fid=0&pageSize=25

Parallel interface parts are available as well.
You can use two 8-bit ports of a Mega for address lines, an 8-bit port for data lines,
and 3 other lines for CE/, WE/, and OE/
http://www.digikey.com/product-detail/en/fujitsu-electronics-america-inc/MB85R1001ANC-GE1/865-1168-ND/2766719

I am extremely Thankful to all of you for the excellent suggestions.
I just now learnt about TEENSY boards, they seem to be really wonderful devices-es, however it seems not so easy to switch from Arduino to Teensy in a short time that I have for project completion, I could not find easy way for using SD card to access the data for writing/reading at a specified location, i2c type external EEPROM only seems to be a possible solution....however many Thanks toyou all who came forward to help me out.....arun

ark1944:
I could not find easy way for using SD card to access the data for writing/reading at a specified location

You didn’t look very hard. Check out the SD seek() method. You can use it to position the read/write head at any byte location in a file just like an EEPROM uses an offset to index into the address space. You can then use the read() or write() methods to access/store the data.