<Rewrote from my newgroup post>
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?
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.