Skip to main content

SAS Workspace Server explained

SAS workspace server
Most of our SAS code generated by the application or written by user is executed on a workspace server. It creates a session to execute SAS code for accessing libraries, performing task using SAS language, retrieve results.

Types of workspace server 
On a broader perspective we have workspace server for admin and non admins. We can introduce server side pooling in SAS workspace server as well. This pooled server will be used by non admin.

The workspace server for SAS metadata server is used by administrator. This should be secured for the sas administrators group with metadata permission.

How does workspace server works?
Standard workspace server create a new process each time a client requests a connection. The process will be owned by the user who is requesting. The connection will be terminated once the user close the session. Desktop user need to close the application to terminate the connection and web user connection will be automatically terminated once the request is complete.


Workspace Server as Load Balancer - Best way to do?
SAS provider feature to load balance your workspace server. If you have SAS products like SAS data integration studio or SAS Enterprise miner it is recommended to load balance across physical machine.

When the workspace server is load balanced the objects spawner on each physical machine will communicate within themselves to do the load balancing.  if your Express server is configured to load balance, object spawner will compare the load between each machine and complete the request.

Polling in Workspace server - Why we need?
The standard workspace server will take time to launch new process for each request.  To avoid that we can do a workspace server pooling.  This will  improve the performance by cutting down the time taken to launch a workspace server.  By default  polling is used for relational information map. The polling happens automatically whenever information map is opened or  indirectly opened through report.  Generally information map is accessed from applications like SAS web report Studio and SAS information map studio. No need for additional configuration to use pooled workspace server.




Comments

Popular posts from this blog

SAS 9.4 server startup order

In Linux / Unix OS we normally use sas.servers to start the services. The script in the background follows an order to start the services. It is important to follow the order to run the services correctly. In this post we can see what is the order to start / stop and to generate the sas.servers script. It is not really required to memorize the order because SAS provide an utility to create the sas.servers script automatically which will start / stop the service in order. Starting order SAS Metadata server Olap server SAS object spawner SAS / SHARE server SAS / connect spawner SAP table server SAP remote services SAS deployment tester server Stopping will be the same in reverse. How to create sas.server script? We can create sas.server script by using generate_boot_script.sh. if you have made any changes to your environment like adding a new server or spawner we can use the script to generate new sas.server. You can use the script even if you have removed the spanner o...

Insufficient authorization to access PIPE error in SAS EG

Issue: When I tried to run SAS code in SAS Enterprise Guide it throws following errors: ERROR: Insufficient authorization to access PIPE. ERROR: Error in the FILENAME statement. Screenshot of error: Solution: This error occurs when you try to run OS commands in SAS code. To run the OS commands in SAS code you need to enable XCMD option. You check it in SAS Management Console by following below steps.   Open SMC -> Expand Servers -> Expand   In SASApp , expand Logical Workspace Server -> right click on Workspace Server. Click properties -> option tab -> advanced options -> launch properties. Check whether Allow XCMD is checked. The issue arises if the Allow XCMD is not checked. In above image, Allow XCMD option is not checked. It should be checked to run OS commands from SAS code. In Unix /Linux machines, this XCMD option can be enabled by using system option XCMD in sasv9 config file or workspaceserver.sh script f...

SAS - CLI error trying to establish connection

Issue: User asked me to make a database connectivity to SQL Server. They provided following details SQL server hostname and ip address Database/DSN name Username Password I made entry in ODBC.ini file. You know, SQL Server entries were made in ODBC.ini and Oracle entries were made in TNS.ora file. Everything went fine, took back up of odbc.ini, made entry and saved the file. So to test this connection I ran the libname statement in SAS Enterprise Guide 6.1. It throwed following error. Error Message: My DB team showed that they are able to login   14 GOPTIONS ACCESSIBLE; 15 LIBNAME test ODBC DATASRC=SGE_DS SCHEMA=VST USER=sales PASSWORD=XXXXXXXXX; ERROR: CLI error trying to establish connection: [SAS/ACCESS to SQL Server][ODBC SQL Server Legacy Driver][SQL Server]Login failed for user 'sales'. Solution: First I suspected that Login failed for user 'sales' meant the password provided by DB team was wrong. They responded that they were able to login wi...