SQL allows you to perform unions and joins in a single statement. If those 15 tables originate in the same DB, you could combine all memory-hungry logic together with those GROUP BYs into a a few SQL statements and let the DB engine perform most of the filtering/aggregation.
In my experience, RDBMS are quite usable for some data-intensive tasks. The tricky thing is that you may need to tune those SQL statement in order to get optimal performance. And all of this depends on the type of RDBMS you are using.