This sounds like the query you use to get data is not performing very well.
If the source is an SQL Server database, probably the best way to find out what takes time is to use
SQL Server Profiler[
^]. Profile the incoming calls from the source server side and see if the query is the bottleneck.