The first flow is right. Additionally if the "database" is actually an extract, Server will be doing the work to run the query against itself as well.
So, yes, Tableau Server would be doing some amount of work if you connect to a Data Source hosted on it from Desktop (or Server itself). "How much" work it would do depends on lots of things (# of queries, how much data returned, querying a live DB or an extract, etc), but even if I had specifics on usage, I'm not sure I could answer that definitively.
As of now, we have decided not to use extracts to reduce burden on the Tableau Server. We will just be publishing Live connections onto the Tableau Server for users to create reports.
In that case I don't think I'd generally expect a huge amount of resource consumption. Querying and refreshing extracts is by far more resource intensive than proxying live database connections with Datasources. You can watch the CPU & memory for the dataserver.exe process on your Server host(s) to get an idea of what the usage might cost you.