Quadrants are a 25x25 area, one entire map's view.
The inherent problem is the speed of database transactions. I'm still working through how I want to handle this. I'm thinking of a few different options. All of them end with making the map "static". That is, only load one screen, change the individual parts on that screen, etc. instead of moving to a new screen on each point. The old game did things that way, and it worked out very well.
1) My first thought on speedings things up is to throw a compiled array into memcache and maintain it. I'd need a 27x27 array for this, as I'd need a 1 tile ring around the map for display purposes only. I'd need to swap data in and out of the memcache array just to be safe. It does lead to an issue with writes though. The DB isn't async, so the response would still hang.
2) To build on #1, scrap the memcache thought, and add a memory table to the DB for "queued updates". Have a php job that runs in an infinite loop, looking every few seconds to see if there's anything in the memory table, and if so, process and update the DB. This would separate the business logic from the display and would drastically speed up game play, with the down-side of non-immediate responses.
3) Combine the memcache & memory table scenarios together. It'd be extensive and memory intensive, but it might work...
Any other ideas?