I'm planning to run a Ethereum server for getting wallet balances at a specific time, which type of node should i run, fast sync will work ? or should i go for archive node ?
For this purpose you need to use an
archive node, that's because with this mode you have an historial of all states of values and balances of an account.
Fast sync doesn't have an historial, so you can't get balances or states in past blocks. Only the state for certain blocks kept in memory (128 for Geth).
To run an
archive node to have an historial about data, you must use
--gcmode archive to disable pruning.