LASR Procedure

PROC LASR Statement

Controls the SAS LASR Analytic Server.

Syntax

PROC LASR server-options;

Server Options

These options control how the server starts, stops, and operates with data.

ADD

specifies to load a table to the SAS LASR Analytic Server. The data to load is identified by the DATA= option or the HDFS= option.

You can also add tables to memory with the SAS LASR Analytic Server engine. An important difference between using the LASR procedure and the engine is that the procedure has the ability to load data in parallel.

CONCURRENT=maximum-requests

specifies the number of concurrent requests that can execute in the server. This option does not reject connections or requests that exceed maximum-requests. When maximum-requests is reached, the additional requests are queued and then processed in first-in-first-out order.

After the server is running, you can adjust this value in a SERVERPARM statement with the VASMP procedure.
Alias NACTIONS=
Default 20

CREATE <="server-description-file">

specifies to start a server. The optional server-description-file argument specifies the fully qualified path to a file. The file is created when the server starts. Enclose the value in quotation marks. The fully qualified path is limited to 200 characters. The server description file is assigned to the LASRLAST macro variable.

If you do not specify a server description file, then you can use the PORT= option to specify the network port number. In either case, the LASRPORT macro variable is updated with the network port number that the server uses for communication.

DATA=libref.member-name

specifies the data to load into the SAS LASR Analytic Server.

DETAILS= TABLES | ALL

specifies the information to return. Use TABLES to retrieve the table names, NLS encoding, row count, owner, and the table load time. The ALL value provides the previous information and adds the MPI rank and host name for each machine in the server.

The information always includes the performance information. This information includes the host name for the grid host, the grid installation location, and the number of machines in the server.

EXTERNALMEM=pct

specifies the percentage of memory that can be allocated before the server stops transferring data to external processes such as external actions and the SAS High-Performance Analytics procedures. If the percentage is exceeded, the server stops transferring data.

Default 75

FMTLIBXML

specifies the file reference for a format stream. For more information, see Working with User-Defined Formats.

FORCE

specifies that a server should be started even if the server description file specified in the CREATE= option already exists. The procedure attempts to stop the server process that is described in the existing server description file and then the file is overwritten with the details for the new server.

Restriction Use this option with the CREATE= option only.

FULLCOPYTO=n

specifies the number of full copies of a table to load into child non-distributed servers. For more information, see High Volume Access to Smaller Tables.

HDFS(HDFS-options)

specifies the parameters for the SASHDAT file to load from HDFS.

Tip
Instead of specifying the HDFS option and parameters, you can use the ADD and DATA= options with a SASHDAT engine library.

FILE=

specifies the fully qualified path to the SASHDAT file. Enclose the value in quotation marks. The filename is converted to lowercase and the SASHDAT file in HDFS must be named in lowercase.

Alias PATH=

LABEL=

specifies the description to assign to the table. This value is used to override the label that was associated with the data set before it was stored in HDFS. If this option is not specified, then the label that was associated with the data set is used. Enclose the value in quotation marks.

DIRECT

specifies that the data is loaded directly from HDFS into memory. This option provides a significant performance improvement. With this option, the user account ID that is used to start the server process is used to create the table signature file.

Alias HADOOP=
Interaction To load encrypted SASHDAT files, you must specify the DIRECT suboption when you use the HDFS option.

LIFETIME=maximum-runtime<(active-time)>

specifies the duration of the server process, in seconds. If you do not specify this option, the server runs indefinitely.

maximum-runtime

When the maximum-runtime is specified without an active-time value, the server exits after maximum-runtime seconds.

active-time

When the maximum-runtime and active-time values are specified, the server runs for maximum-runtime seconds and then starts a run timer with an inactivity time-out of active-time seconds. When the server is contacted with a request, the run timer is reset to zero. Each second that the server is unused, the run timer increments to count the number of inactive seconds. If the run timer reaches the active-time, the server exits.

LOGGING <(log-options)>

The log file is named lasr.log.

CLF

specifies to use the common log format for log files. This format is a standardized text file format that is frequently analyzed by web analysis software. Specifying this option implies the LOGGING option.

KEEPLOG

specifies to keep the log files when the server exits instead of deleting them. By default, the log files are removed when the server exits.If you did not specify this option when the server was started, you can specify it as an option to the STOP option.

MAXFILESIZE=

specifies the maximum log file size, in megabytes, for a log file. When the log file reaches the specified size, a new log file is created and named with a sequentially assigned index number (for example, .log.1). The default value is 100 megabytes.

Tip
Do not include an MB or M suffix when you specify the size.

MAXROLLNUM=

specifies the maximum number of log files to create. When the maximum has been reached, the server begins to overwrite existing log files. The oldest log file is overwritten first. The default value is 10.

OSENCODING

specifies that the log file is produced with the operating system encoding of the SAS LASR Analytic Server root node. This option is useful when the server is run in a different encoding than the operating system, but you want a log file that is readable in the server operating system.

PATH='log-file-directory'

specifies the fully qualified path to the directory to use for server log files. The default value is /tmp.

MERGELIMIT=n

specifies that when the number of unique values in a numeric GROUPBY variable exceeds n, the variable is automatically binned and the GROUPBY structure is determined based on the binned values of the variable, rather than the unique formatted values.

For example, if you specify MERGELIMIT=500, any numeric GROUPBY variable with more than 500 unique formatted values is binned. Instead of returning results for more than 500 groups, the results are returned for the bins. You can specify the number of bins with the MERGEBINS= option.

NOCLASS

specifies that all character variables are not to be treated implicitly as classification variables. Without this option, all character variables are implicitly treated as classification variables. The performance for loading tables is improved when this option is used.

PATH="signature-file-path"

specifies the directory to use for storing the server and table signature files. The specified directory must exist on the machine that is specified in the GRIDHOST= environment variable.

PORT=integer

specifies the network port number to use for communicating with the server. You can specify a port number with the CREATE option to start a server on the specified port.

Interaction Do not specify the PORT= option in the LASR procedure statement with a LASRSERVER= option in the PERFORMANCE statement.

READAHEAD

specifies for the server to be more aggressive in reading memory pages during the mapping phase when tables are loaded from HDFS. Loading the table takes more time with this option, but the first access of the table is faster.

Engine SASHDAT engine

SERVERPERMISSIONS=mode

specifies the permission setting for accessing the server instance. The mode value is specified as an integer value such as 755. The mode corresponds to the mode values that are used for UNIX file access permissions.

Alias SERVERPERM=
Range 600 to 777
Interaction You can use this option with the CREATE option when you start a server.

SIGNER="authorization-web-service-uri"

specifies the URI for the SAS LASR Authorization web service. The web service is provided by the SAS Visual Analytics software. For more information, see SAS Visual Analytics: Administration Guide.

Example SIGNER="https://server.example.com/SASLASRAuthorization"

SIGNERFILEPOLICY

specifies to apply the encryption policies stored in metadata to the file.

See For more information, see SIGNERFILEPOLICY Data Set Option.

SQUEEZE

specifies to compress the table as it is added to the server. You can specify this option when you use the ADD and DATA= options.

Be aware that specifying the option when you start a server does not result in compressing all tables that are added to the server. The option applies only to the table that is loaded when CREATE is also specified, or to the table that is added when the ADD option is specified. In other words, the SQUEEZE option is not a persistent option for the lifetime of the server.
Alias COMPRESS
Interaction This option is ignored when reading SASHDAT tables from HDFS.
See Compressed Tables and the LASR Procedure

STOP <(stop-options)>

terminates a SAS LASR Analytic Server. The server instance is specified in the LASRSERVER= option that identifies a server description file, or it is determined from the LASRLAST macro variable. Once the server instance receives a request to stop, the server does not accept new connections.

IMMEDIATE

specifies to stop the server without waiting for current requests to complete. Without this option, termination requests are queued and can be queued behind a long-running request.

Alias NOW

KEEPLOG

specifies to keep log files that are created with the LOGGING option.

Alias TERM

TABLEMEM=pct

specifies the percentage of memory that can be allocated before the server rejects requests to add tables or append data. If the percentage is exceeded, adding a table or appending rows to tables fails. These operations continue to fail until the percentage is reset or the memory usage on the server drops below the threshold.

This option has no effect for non-distributed servers. For non-distributed servers, the memory limits can be controlled with the MEMSIZE system option.
Note: The specified pct value does not specify the percentage of memory allocated to in-memory tables. It is the percentage of all memory used by the entire machine that—if exceeded—prevents further addition of data to the server. The memory used is not measured at the process or user level, it is computed for the entire machine. In other words, if operating system processes allocate a lot of memory, then loading tables into the server might fail. The threshold is not affected by memory that is associated with SASHDAT tables that are loaded from HDFS.
Alias MEMLOAD=
Default 75

TABLEPERMISSIONS=mode

specifies the permission setting for accessing a table. The mode value is specified as an integer value such as 755. The mode corresponds to the mode values that are used for UNIX file access permissions.

Alias TABLEPERM=
Range 600 to 777
Interaction You can use this option with the ADD option when you load a table to memory.

VERBOSE

specifies to request additional information about starting a server or connecting to a server in the SAS log. This information can be helpful to diagnose environment configuration issues.

Alias GRIDMSG