How to shrink big database files faster than dbcc command? There is a DBCC command to shrink files of a database. Unless the files are almost empty or the free space is nearly unfragmented this command is often refered as 'don't use'. In rare cases I need to shrink files to a new size. An alternative to the DBCC command in this szenario is what I am looking for.

The databases I'm working on are 'big data': Size of each DB some TB, Size of each file some 100GB.
An alternative to the DBCC command in this szenario is what I am
  looking for.


One possible alternative to shrink is described in Paul Randal's article:
Why you should not shrink your data files


  The method I like to recommend is as follows:
  
  
  Create a new filegroup
  Move all affected tables and indexes into the new filegroup using the    CREATE INDEX … WITH (DROP_EXISTING = ON) ON syntax, to move the
  tables and remove fragmentation from them at the same time
  Drop the old filegroup that you were going to shrink anyway (or    shrink it way down if its the primary filegroup)
  


Even if this method will lead to desired result and even more: you'll achieve defragmentation of all your indexes, it is not faster than shrink, it requires additional free space before you can shrink the old files, it can hardly be automated and there will be a problem with LOB data as it will remain in the old FG unless you copy it manually to new FG.