First, does R3 support BGP and does it have enough RAM to support all the routes on R1 and R2? If not, then BGP isn't an option.
Second, do R1 and R2 receive a full Internet routing table? If so, then redistributing several 100k routes into OSPF would not be wise if at all possible. In this case I'd recommend using iBGP. On the other hand, if R1 and R2 are only receiving default routes, or a small number of routes, then redistributing into OSPF would be the preferred option and would allow the routing information to reach other OSPF only routers in the internal network so that they can make more informed routing decisions.