I'm not sure you understood Rashi's comment - it sounds like you're both taking about the same thing.
Your comment is a little unclear - I'm not sure if you mean one database instance which includes both the production MB and AB databases, or have the AB database include a copy of the MB database? I'm not sure if for replication you're referring to having a replica of the MB database on the AB server, or performing replication of the AB database in the same way that MB does it, or combining MB+AB and sending replica packets with data from both products to all MB customers?
To summarise, we are considering 3 ways of combining the AB/MB data in order to allow us to use up-to-date MB data on the AB website (any other combination of the data is out of the scope of this project):
- Host both MB and AB on the same physical database server - discarded because of load/storage considerations
- Connect directly to an MB database from the AB app (either a replica database on the AB server, or a master MB mirror)
- Replicate parts of the MB database (which relate to recordings in AB) directly to a separate schema inside the AB database.
Rashi's summer of code project has been to implement 3). This ticket is to do an evaluation of common queries that we need to run in AB using both 2) and 3) to see which one is the fastest (We expect that 3. is faster, but it requires much more infrastructure than 2., so there is a tradeoff that we want to compare)
See code changes in pull request #292 submitted by rsh7.