To minimize efforts the first question you need to ask is: Is this really a migration?
Migration means you have for example active running business processes that you need to keep and take over to the new system, so you need a DB concent clone + migration.
If you are lucky and this is not the case you can do this like an “upgrade” just start with an clean new 10.1 installation.
The second question is about your IS instances - do they stay on the same OS as before or does it need to change?
If that is “minimize efforts” - means the same OS you can then migrate your code and settings with the standard methods – ideally on an temporary IS installation and from there deploy directly to the new servers (runtime based deploy) or checking to an source control and build packages with ABE (repository based deploy).
Sure you have to adjust your JDBC libraries and connections from Oracle to MS SQL Connect strings.
With regards to “Data” from IS in the database it depends how you maintain Scheduled Jobs, Customer User Certificates etc. Those are stored in the DB. To manually migrate those if needed should not be much of an issue. Better is for sure a new clean setup.
Finally remains the MWS part - here again it depends if you have to migrate existing portles, stay on the same OS and keep data (e.g. User, Group and Role setups; Optimize Data etc.) or just do the version upgrade as fresh installation and apply some configurations and deploy portlets later.
UM and TSA have no relationship to your DB anyway.