I would like to know the performance difference in the two approaches Data Page with look up option and Obj-Open in activity for opening an object. Can someone help in understanding the difference. (We can go for data page with look up option if we are opening the same object multiple times, would like to know if any other than this)
The difference is that will the data page you will have the ability to add scope(thread, requestor, and node), refresh strategies (you can cache the data), and you can choose a myriad of sources using a datapage (not only lookup but report definition, connectors, and activities).
In addition, with a data page you can hide the complexity from the end consumer of the object as they only need to know the name of the data page and the structure.
If your question is to open an object in an activity and to choose between obj-open (or) look up datapage in doing it, both of them hit the database. But if you have look up OOTB or pre-created then go for it. Else obj-open can be used when DPage is not exisitng.
Further added to this, if your requirement is to fetch things in bulk, you can also think of report definition and get all those at one shot.
ex: get orgunit for all WBs my operator is associated to.