Hey There!
You could only render / make parts of the array ‘filled’ based where the player is in the world ! I am also assuming you don’t have a way to not draw elements which are not on the screen ? This would down turn a-lot of memory ! As only drawing tiles which are on screen makes it super effective.
A note to add:
I have a drawing technique equipped in my game ( I am also making a tile based game too ! ) and I am only able to max out for a good frame rate at around (100 * 100) tiles which are 32 * 32 pixels big. Using P2D can help out a-lot too.