Do sort and freq now work in cas? Any others?
Yes. Assuming that you use a caslib to specify the CAS table, then a procedure that is NOT CAS-enabled should behave as follows:
1. The caslib engine pulls the data down to SAS, making a temp data set;
2. The procedure reads and analyzes the temp data set
3. If the proc needs to create output to a CAS table, it will first write a temporary output data set. The caslib engine will then transfer it to a CAS table.
Obviously, this is inefficient for large data, but for small and medium data, the caslib engine enables you to use any existing SAS procedure to interact with CAS tables.
Just to clarify, when you get SAS Viya, all procedures "work" on SAS data sets. The OP's question (I assume) is "If I have a CAS table, which procedures can take advantage of parallel processing in CAS" so that they run faster on big data tables in CAS. Anand's link answers that question.
For the procedures that do not perform parallel processing, the CAS libname engine might try to pull the CAS table back to SAS and make a temporary data set, which might not be efficient for large data.
Yes, this is what I meant. Will the procs that are not cas enabled like proc freq still work if you specify an input dataset that is in cas memory and an output dataset that is in cas memory.
Yes. Assuming that you use a caslib to specify the CAS table, then a procedure that is NOT CAS-enabled should behave as follows:
1. The caslib engine pulls the data down to SAS, making a temp data set;
2. The procedure reads and analyzes the temp data set
3. If the proc needs to create output to a CAS table, it will first write a temporary output data set. The caslib engine will then transfer it to a CAS table.
Obviously, this is inefficient for large data, but for small and medium data, the caslib engine enables you to use any existing SAS procedure to interact with CAS tables.
Proc sort is an exception to this rule, correct?
I don't know what "rule" you are talking about. The doc lists which procedures can execute on the CAS server.
For PROC SORT, it says "YES, for the NODUPKEY and NOUNIKEY options." If you don't use those options, then the answer is "no," and PROC SORT will behave as I outlined. Of course, this will be a waste of resources since CAS tables are nor guaranteed to preserve order when you read them, so there is no need to sort a CAS table.
Also see SAS Visual Statistics Procedures for a list of statistical procedures that are designed to run on CAS tables.
PROC FREQTAB (in SAS Visual Statistics) provides the tabulation and statistical analysis capabilities of PROC FREQ.
(And like @Rick_SAS mentioned, all SAS/STAT procedures are available with SAS Viya.)
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.