Choosing your SAS OS: Choosing between Linux and Windows

Earlier this year, we talked about the advantages of hosting your SAS environment*. So now that you have chosen your vendor and unless the vendor’s solution decides this for you, invariably the next question is choosing your front-end Operating System. These days it comes down to Windows or Linux.  In this article, we will review some of the things to consider when making this choice.

Given that we have decided to host our SAS environment; whether we choose Windows or Linux, this will be a server implementation. Since Windows and Linux run on the same hardware and both can support SAS Grid, for the purposes of our discussion, we will consider that performance is not a major factor when choosing between Windows and Linux. This is especially true since choosing Windows as your front-end does not mean your back-end compute server will not be Linux.  Let’s take a look at typical Linux and Windows environments.

A “bare bones” Linux environment can be accessed and interacted with via a secure shell (SSH) and SFTP tools. For example, using the UltraEdit editor and its built-in SFTP and SSH interfaces is an effective way to log into the hosted Linux environment and use a file manager for navigation and basic commands. In fact, a SAS Display Manager-like interface can be configured to submit programs and have the log and listing file refresh. This is limited to batch submission and the user will not be able to easily browse the SAS workspace datasets or submit sections of code. Of course, all the great tools (e.g. grep, sed and awk) as well as scripting languages (e.g. bash, Perl, and Python) are included in Linux.  In this environment, MS Office products would normally be used from the user’s local Windows workstations.

For a Windows environment, typically users log into a remote desktop environment (e.g. Windows Remote Desktop, Citrix and Ericom). From the server desktop, users can launch Windows SAS Display Manager, SAS Enterprise Guide and also be provided all the tools needed such as editors, file comparison tools and MS Office products. Back-end computer services can be Linux or Windows, but the user interaction would be Windows. There are cost considerations. There almost certainly will be more licensing costs when implementing a Windows environment. For example, client access licenses (CALs) are required when connecting to a Windows server and a license will be needed for each user.

In the end, we have found that our users’ experience and preference steer their decision toward the Windows environment described above.  For SAS programmers, the abilities to submit sections of code and easily navigate to the SAS workspace and view temporary work files during code development are must-have capabilities that are not effectively provided in a Linux environment. You can use an X Window System display to provide these capabilities through SAS Display Manager from a Linux environment. However, in our experience, performance is unacceptable and essentially unusable.

*Please also see: Hosting Your SAS Environment