The first operation will be carrying out several calculations and updating the same tables that users also access. These processes dont depend on any indivual request/state and will always be running.
Should I put the first operation in a separate application/machine?
The second operation acts like a manager across all requests and will be running continuously.
How do I initiate and maintain the second operation? Do I start an Admin request or can I initiate at a global level automatically?
This post (https://blog.stackoverflow.com/2008/07/easy-background-tasks-in-aspnet/) explains how to implement scheduled/background tasks with asp.net mvc. Otherwise you can use Windows Services or WCF services. You can use DB tables to synchronize background jobs with requests.
You don’t need a separate application/machine but it depends on your requirements, your architecture (single server or farm) and your performance goals.