Before going to monitoring memory, we need to clear about why and when we have to monitor memory on the server?
Why & When?
- Troubleshooting and to identify potential resource bottlenecks
- Detect memory leaks
- To check resource usage to plan better capacity planning
- More Memory, Better Performace
To monitor DataStage Memory Usage, we have to work on these 3 points -
1. Monitor memory leaks
Analyzing memory usage can be useful in several scenarios. Some of the most common scenarios include identifying memory leaks. A memory leak is a type of bug that causes a program to keep increasing its memory usage indefinitely.
2. Tune job design
Comparing the amount of memory different job designs consume can help you tune your designs to be more memory efficient.
3. Tune job scheduling
The last scenario is to tune job scheduling. Collecting memory usage by processes over a period of time can help you organize job scheduling to prevent peaks of memory consumption.
Monitoring Memory Usage with ps Command -
- Simple command available in all UNIX/Linux platforms
- Basic syntax to monitor memory usage
ps —e —o pid, ppid, user, vsz, etime, args
pid - process id
ppid - parent's process id
user - user that owns process
vsz - amount of virtual memory
etime - elapsed time process has been running
args - command line that started process
Other ps monitoring -- Check Memory Utilization by Datastage processes
More will be in next post. Monitoring Memory by DataStage Processes #2