1. What can be the issue behind it?
There could be many possible reasons; the data size itself could be huge; the data model could be not that efficient (like, synthetic key, improper joins...); improper loop in the script...
2. Is there any way ...
Perhaps not. QDS seems to be a rather static in nature. Please refer :Re: Publisher memory usage.
I seem to have seen in a qlik community discussion where some guy suggested some setting that's required to be enabled in the QDS.exe.config file to limit the memory usage by QDS. But, not able to recollect that setting now.
Also, is it like that QDS will utilize entire physical memory for data loads when required and then reside to paging?