The memory in your CAS environment is a precious commodity and it’s often at a premium. Having as much available memory in your CAS environment is not only important but also essential to your daily operations. This is especially true in a Viya environment with many users. Knowing you have enough memory in CAS to load your tables is beneficial and avoids the need for CAS to page parts of your tables between memory and disk when code is executing.
We all work with temporary tables that we have no use for after the processing is complete. Unlike foundation SAS, CAS doesn’t have a work area. Any table you load into CAS and don’t promote stays in memory until you delete it, or your CAS session is terminated. It’s always a good idea and a best practice to eliminate these temporary tables when you are finished with them. This helps keep as much available memory in your environment. There are many options available to delete these temporary tables. PROC DELETE, PROC DATASETS, and the dropTable CAS action are all good choices. In SAS Studio you can also right click on the table in the library tree and select “Delete”. However, an alternative is to use the lifetime parameter on the CAS table during the load. This parameter is available in the loadTable CAS action. It’s a subparameter in the CasOut parameter. Once the value of the lifetime parameter is met, the table will drop from memory.
In the following example, I’ve loaded the CARS data set from a path based caslib to my CASUSER caslib in CAS. I’ve set a lifetime of 120 seconds so I can run a quick process. The table will be removed from memory after 2 minutes and I don’t have to write any additional code to delete it or manually delete it.
After the table is loaded, I can refresh my library tree and the CARS table resides in the CASUSER caslib. I can now run whatever processes I need to against this table.
After 2 minutes, I refresh my library tree again, and the table has been dropped from memory.
The lifetime parameter is also available in the copyTable CAS action.
Consider using this technique when managing your temporary tables and keeping free memory at a maximum. Happy coding!
SAS is headed back to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team.
Interested in speaking? Content from our attendees is one of the reasons that makes SAS Innovate such a special event!
Data Literacy is for all, even absolute beginners. Jump on board with this free e-learning and boost your career prospects.