This course teaches DS2 programming. DS2 is a fourth-generation SAS language, designed for advanced data manipulation. It blends DATA step and SQL syntax using modern programming structures and can process multiple rows of data in parallel in Base SAS and in supported massively parallel processing environments such as Hadoop, Teradata, and SAS Cloud Analytic Services (CAS). A brief introduction to SAS Viya and Cloud Analytic Services is included.
The self-paced e-learning includes:
Annotatable course notes in PDF format.
Virtual lab time to practice.
Learn How To
Identify the similarities and differences between the SAS DATA step and a DS2 data block.
Convert a Base SAS DATA step to a DS2 data block.
Control data type and precision with DS2 variable declarations
Use DS2 functions, methods, and expressions for conditional processing and high-precision data manipulation.
Use predefined packages to access advanced processing techniques in DS2 code.
Create user-defined packages to add custom, reusable methods to the DS2 language.
Execute multi-threaded DS2 code for parallel processing in Base SAS.
Execute multi-threaded DS2 code for parallel processing in supported databases with the SAS In-Database Code Accelerator.
Execute multi-threaded DS2 code for high-speed parallel processing of memory-resident data.
Who Should Attend
Experienced SAS software users who want to use modern programming techniques for complex manipulation of large data
Prerequisites
This course is not appropriate for beginning SAS software users. Before attending this course, you should have several months of SAS programming experience or have taken the SAS Programming 2: Data Manipulation Techniques course. A good understanding of ANSI SQL is also beneficial.
SAS Products Covered
SAS/ACCESS;Base SAS;SAS Viya
Course Outline
Introduction
DS2 overview.
Introduction to SAS Cloud Analytic Services (CAS).
Starting and setting up a virtual lab.Getting Started
Differentiating between DATA steps and DS2 data programs.
Basic DS2 syntax.DATA Steps versus DS2 Data Blocks
Similarities to the DATA step.
Exploring DS2 "missing" features.
Converting DATA steps to DS2 data programs. New Data Types and Syntax
Program block structuring.
Data types.
Automatic data type conversion.
Expressions.
Selected functions.Methods and Packages
Methods.
Creating, using, and deleting a user-defined package.
Using predefined packages.Threaded Processing
Working with DS2 threads.
Threading on massively parallel processing (MPP) platforms.