Hi,
my experience says, that you should avoid large tables as a table is a collection of labels. Sounds strange, but by optimizing our processes, we managed for example to once load the global table of our application and then filtering just the item, we need. That way, we could increase performance.
But for java automation I'm also using JavaMonkey.exe to get a list of all controls on the window. That application seems to be much faster. It just takes two seconds to get the whole tree with all attributes. I think, you can improve that 🙂