<Rewrote from my newgroup post>

Case:

4GB database with two "big" tables: 1.5 million records, table with  almost 1 million records, and each month, import about
300,000 records, also delete some old records. database goes up to 5 or 6 GB and the transaction log goes up to 7 or 8 GB. If dbcc shrink file is used, then data file and log file size goes down to  4 GB and 3 GB, respectively.  Should dbcc shrink file be used regularly?

Answer:

By using the "simple" recovery model, or doing a log backup
periodically, you can keep the log size capped at some manageable levels,
such as 6GB. Then I would not even attempt to shrink the log because it
would just grow back to the max size needed for the insert job. It is not
good from a performance point of view to grow file on demand and it will
cause more disk fragmentation.

On the other hand, it sounds like you might benefit slightly by having 2
filegroups dedicated for the two big tables. Space utilization should
improve if big tables have their own dedicated files. It will also make dbcc
shrinkfile faster if you ever need to do that.  Again, as long as you can
manage the database file size and utilization at certain level, I would not
do shrinkfile either.