Report Server tempdb's chunk data table is growing very large on daily basis In SQL Server 2005, reportservertempdb chunk data table is growing too much in gbs. Need to know why? We are truncating it on a daily basis, still it grows too much. Database is in simple mode. Need to clarify why is it growing so much.
Most of all facing same issue: Report server tempdb growing very fast, It's better to schedule a job which purges the chunk table (can add required tables if need) and make sure that the scheduled time will have a light load on the server (lets start for every 8 or 12 hrs)

try with below query for scheduling job:

DECLARE @RowCount INT
SET @RowCount = ( SELECT    COUNT(1)
                  FROM      Segment WITH ( NOLOCK )
                )

WHILE ( @RowCount &gt; 0 ) 
    BEGIN
        DELETE TOP ( 1000 )
        FROM    Segment
        SET @RowCount = ( SELECT    COUNT(1)
                          FROM      Segment WITH ( NOLOCK )
                        )
        PRINT @RowCount
    END


Then Truncate table and Shrink files (both data and log files)

TRUNCATE TABLE Table_name


-- Shrink the truncate tables data and log file to a specified target size (to 1 MB).  

DBCC SHRINKFILE (TempDB', 1)
GO

DBCC SHRINKFILE (TempDB_log', 1)
GO


Edit:

Table grows significantly may occur due to the following reasons:


Check the report execution
Report snapshots are too large to process for reporting services.


Because of this issue, as the time progresses it left lots of orphaned snapshots which in turn resulted in growth of the database. 

You can use following query for obtaining those reports with the largest size contribution to ReportServerTempDB:

--Reports that are largest contributors to ReportServerTempDB size through tables Segment, ChunkSegmentMapping, SegmentedChunk and SessionData:
SELECT 
   sd.ReportPath,
   COUNT(s.SegmentId) as CountOfSegmentId
FROM 
   [ReportServerTempDB].dbo.Segment s 
INNER JOIN 
   [ReportServerTempDB].dbo.ChunkSegmentMapping m 
ON 
   m.SegmentId = s.SegmentId
INNER JOIN 
   [ReportServerTempDB].dbo.SegmentedChunk c 
ON 
   c.ChunkId = m.ChunkId
INNER JOIN 
   [ReportServerTempDB].dbo.SessionData sd 
ON 
   sd.SnapshotDataID = c.SnapshotDataId 
GROUP BY   
   sd.ReportPath
ORDER BY 
   CountOfSegmentId DESC;


Note: 


  Make sure temp DB is Simple - recovery model