Enhanced SPDSBASE Sharing

Configuring Enhanced SPDSBASE Sharing

You specify SPDSBASE enhanced user proxy sharing settings via the SHARE= SPD Server LIBNAME option, or via the SHRUSRPRXY= SPD Server server parameter file option.

SHRUSRPRXY= Server Parameter File Option

You can enable enhanced sharing of user proxies via the SPD Server SHRUSRPRXY= parameter file option. The SPD Server SHRUSRPRXY= server parameter file option defines the default behavior for enhanced user proxy sharing. The SHRUSRPRXY= parameter file option setting can be overridden by the SHARE= sasspds engine LIBNAME option.
Syntax
SHRUSRPRXY=[YES|NO]
Default
The default setting for the SHRUSRPRXY= parameter file option is YES.

SHARE= LIBNAME Option

You can enable enhanced sharing of user proxies via the SHARE= sasspds engine LIBNAME option. Enhanced sharing enables librefs with different user credentials in the same SAS session to share the same SPDSBASE user proxy.
Syntax
SHARE=[YES|NO]
Default
If the SHARE= LIBNAME option is not specified, SPD Server enhanced user proxy sharing settings default to the configuration defined by the SHRUSRPRXY= setting in the server parameter file.

Managing Concurrent SPDSBASE Process Resources

The following situations can cause a large number of SPDSBASE processes to be created during a SAS session:
  • Jobs that use multiple LIBNAME statements with different user credentials.
  • A user who is a member of multiple groups requires a separate LIBNAME statement for each group credentials. The result is a separate user proxy for each LIBNAME. SPD Server supports up to 32 groups for each user, but you cannot specify more than one group in a LIBNAME statement.
  • Librefs with different credentials require their own SQL user proxy. The SQL proxy assigns all librefs that have LIBGEN=YES options for explicit SQL, or librefs that are configured via the IP=YES option setting for implicit pass-through SQL to an SQL user proxy.
When you use the SAS Java proxy to access the Hadoop cluster, it requires additional SPD Server process resources, as well as additional start-up requirements for the user proxy.
You can address resource allocation issues by enabling enhanced sharing of SPD Server user proxies. Enhanced SPD Server proxy sharing does not require the following matching credentials:
  • matching SPD Server User ID credentials
  • matching SPD Server Group credentials
  • matching SPD Server ACLSPECIAL credentials
This means that almost all librefs in the same SAS session are able to share the same user proxy. The same is also true for any IP=YES or LIBGEN=YES librefs that are generated by the SQL proxy. Almost all of those librefs can share the same SQL user proxy. Shared proxies contain a control thread for each LIBNAME assigned to the user proxy. The control thread contains the user attributes of the LIBNAME, which are used to authenticate any resources accessed by that LIBNAME.
Enhanced proxy sharing is recommended if you are experiencing resource allocation issues due to a large number of concurrent spdsbase processes. However, turning the feature off is beneficial in the following situations:
You might want to turn off the enhanced user proxy sharing feature for the following reasons:
  • If the user proxy terminates unexpectedly due to a failure, turning it off reduces the number of librefs affected.
  • Turning it off enables you to kill the user proxies for a given job.
For example, if a user submits a job that is consuming too many computing resources and enhanced user proxy sharing is not enabled, you could kill the user proxies for only that user job. However, killing all the user proxies for the SAS session, rather than for that particular job, is easier if enhanced user proxy sharing is enabled.