Loading an array of byte, iterate through it on demand and output to i/O pins

Hello,

Just new to Arduino, so please pardon my ignorance.

Here is what I'd like to do. Load an array of bytes (about 20K if possible) into memory through Ethernet communication, then iterate through the array each time an external signal is received to "display" that particular byte to 8 output pins. I would use an external "clock" that would generate a "5V tick" every 100 milliseconds or so.
I just need to iterate through the array. However, I need to be able to load a new dataset from a computer that will control other hardware and reset the counter to zero.
It seems to me this is well within Arduino's capacity. I'm just wondering if someone had developed something similar and would kindly share code.

Any recommendation for a particular hardware? I'm thinking using the Uno and the ethernet shield.
Thanks

The Uno has 2K of RAM. You'll need some other hardware to store your 20K of data - there are RAM shields, or an SD card would do the job

You could also put the array in the flash memory, and write a small sketch to fit in the space that is left.
Run a sketch to load it up, then run your real sketch that interacts with it.