A qvw doesn't need mandatory qvd-files - loading (from any sources) and transforming the data and presenting them within gui-objects could be done within a single qvw. But quite often is a qlikview-environment splitted into multiple stages, for example: Generator --> Datamodel --> Report. Advantages of such a data-architecture are the possibility to reuse loaded/transformed data within several applications and to parallelize developing/maintaining/reload tasks which ends in more performant and stable solutions.
Yes - one qvd for one table (there are exceptions but they are not very relevant within the most scenarios).
Yes - it's possible but it will be probably only practicably if you used multiple stages with multiple qvw's as generators and datamodels like above mentioned and if the DB contained "normal" amounts of data you will probably need some incremental approaches for the bigger fact-tables to not loading all data each time else to load only new or changed data.