I have a SQL Server that is used for ETL and data-warehouse operations storage in the night. But during the day, this server is still consuming 31G of RAM (Total 32G). I am trying to compress some files, but SQL Server won't give up the RAM. Nothing is running on the server at this time. Is there a way for me to tell it "Bad SQL Server" and make it give up the RAM?
Are you sure the real culprit isn't Analysis Services, it's not clear if AS is running on your server. It's memory management isn't as smart or robust as SQL Servers. If the OS signals the processes to give up memory SQL Server will try to comply but AS will ignore it and actually gobble up the memory that SQL Server just released. If you stop and restart the OLAP Service is the memory released?
One way to get this accomplished would be to set max memory to a low value, say 4GB, after your ETL and at night bump it back up to 30 GB pre-ETL. Another alternative is to restart SQL Server after ETL.