In-Database Deployment Package for Aster

Prerequisites

SAS Foundation and the SAS/ACCESS Interface to Aster must be installed before you install and configure the in-database deployment package for Aster.
The SAS Scoring Accelerator for Aster requires a certain version of the Aster client and server environment. For more information, see http://www.sas.com/technologies/analytics/datamining/scoring_acceleration/#section=5.

Overview of the In-Database Deployment Package for Aster

This section describes how to install and configure the in-database deployment package for Aster (SAS Embedded Process 9.33).
The in-database deployment package for Aster must be installed and configured before you can use the %INDAC_PUBLISH_MODEL scoring publishing macro to create scoring files inside the database and the %INDAC_PUBLISH_FORMATS format publishing macro to create user-defined format files.
The scoring and format publishing macros are included in the SAS/ACCESS Interface to Aster. For more information about using the scoring and format publishing macros, see the SAS In-Database Products: User's Guide.
The in-database deployment package for Aster includes the SAS Embedded Process. The SAS Embedded Process is a SAS server process that runs within Aster to read and write data. The SAS Embedded Process contains macros, run-time libraries, and other software that is installed on your Aster system so that the SAS_SCORE( ) and the SAS_PUT( ) functions can access the routines within its run-time libraries.

Aster Installation and Configuration Steps

  1. If you are upgrading from or reinstalling a previous release, follow the instructions in Upgrading from or Reinstalling a Previous Version before installing the in-database deployment package.
  2. Install the in-database deployment package.

Upgrading from or Reinstalling a Previous Version

Follow these steps to upgrade from or reinstall a previous release.
  1. Log in to the queen node.
    ssh -l root name-or-ip-of-queen-node
  2. Move to the partner directory.
    cd /home/beehive/partner
  3. If a SAS directory exists in the partner directory, enter this command to remove an existing installation from the queen.
    rm -rf SAS
    If you want to perform a clean install, enter these commands to remove the SAS directory from all the workers.
    location=/home/beehive/partner/SAS/
    for ip in `cat /home/beehive/cluster-management/hosts | grep node |
       awk '{print $3}'`; \
    do \
       echo $ip; \
       ssh $ip "rm -r $location"; \
    done
    rm -rf $location;

Installing the In-Database Deployment Package Binary Files for Aster

The in-database deployment package binary files for Aster are contained in a self-extracting archive file named tkindbsrv-9.33-n_lax.sh. n is a number that indicates the latest version of the file. If this is the initial installation, n has a value of 1. Each time you reinstall or upgrade, n is incremented by 1. The self-extracting archive file is located in the SAS-install-directory/SASTKInDatabaseServer/9.31/AsternClusteronLinuxx64/ directory.
To install the in-database deployment package binary files for Aster, you need root privileges for the queen node. Once you are logged in to the queen node as root, you need to create a directory in which to put tkindbsrv-9.33-n_lax.sh, execute tkindbsrv-9.33-n_lax.sh, and install the SAS_SCORE( ) and the SAS_PUT( ) SQL/MR functions.
Enter these commands to install the SAS System Libraries and the binary files:
  1. Change the directory to the location of the self-extracting archive file.
    cd SAS-install-directory/SASTKInDatabaseServer/9.31/AsternClusteronLinuxx64/
  2. Log in to the queen node.
    ssh -l root name-or-ip-of-queen-node
  3. Move to the parent of the partner directory.
    cd /home/beehive/
  4. Create a partner directory if it does not already exist.
    mkdir partner
  5. Move to the partner directory.
    cd partner
  6. From the SAS client machine, use Secure File Transfer Protocol (SFTP) to transfer the self-extracting archive file to the partner directory.
    1. Using a method of your choice, start the SFTP client.
      Here is an example of starting SFTP from a command line.
      sftp root@name-or-ip-of-queen-node:/home/beehive/partner
    2. At the SFTP prompt, enter this command to transfer the self-extracting archive file.
      put tkindbsrv-9.33-n_lax.sh
  7. (Optional) If your SFTP client does not copy the executable attribute from the client machine to the server, change the EXECUTE permission on the self-extracting archive file.
    chmod +x  tkindbsrv-9.33-n_lax.sh
  8. Unpack the self-extracting archive file in the partner directory.
    ./tkindbsrv-9.33-n_lax.sh
    Note: You might need to add permissions for execution on this file. If so, do a chmod +x command on this file.
    This installs the SAS Embedded Process on the queen node. When Aster synchronizes the beehive, the files are copied to all the nodes. This can take a long time.
  9. (Optional) There are two methods to copy the files to the nodes right away. You can do either of the following.
    • Run this command to synchronize the beehive and restart the database.
      /home/beehive/bin/utils/primitives/UpgradeNCluster.py -u 
    • Run this code to manually move the files across all nodes on the beehive by using secure copy and SSH.
      location=/home/beehive/partner/
      cd $location
      for ip in `cat /home/beehive/cluster-management/hosts | 
         grep node | awk '{print $3}'`; \
      do \ 
      echo $ip; \ 
      scp -r SAS root@$ip":$location"; \ 
      done
  10. Change to the directory where SAS is installed.
    cd /home/beehive/partner/SAS/SASTKInDatabaseServerForAster/9.33/sasexe
  11. Install the SAS_SCORE( ), SAS_PUT( ), and other SQL/MR functions.
    1. Start the ACT tool.
      /home/beehive/clients/act -U db_superuser -w db_superuser-password
      -d database-to-install-sas_score-into
    2. (Optional) If this is not the first time you have installed the in-database deployment package for Aster, it is recommended that you remove the existing SQL/MR functions before installing the new ones. To do so, enter the following commands.
      \remove sas_score.tk.so
      \remove sas_put.tk.so
      \remove sas_row.tk.so
      \remove sas_partition.tk.so
    3. Enter the following commands to install the new SQL/MR functions. The SQL/MR functions need to be installed under the PUBLIC schema.
      \install sas_score.tk.so
      \install sas_put.tk.so
      \install sas_row.tk.so
      \install sas_partition.tk.so
  12. Exit the ACT tool.
    \q
  13. Verify the existence and current date of the tkast-runInCluster and tkeastrmr.so files. These two binary files are needed by the SAS SQL/MR functions.
    for ip in \
    `cat /home/beehive/cluster-management/hosts | grep node | awk '{print $3}'`; \
       do \
       echo $ip; \
       ssh $ip "ls -al /home/beehive/partner/SAS/SASTKInDatabaseServerForAster/
          9.33/sasexe/tkeastmr.so"; \
       ssh $ip "ls -al /home/beehive/partner/SAS/SASTKInDatabaseServerForAster/
          9.33/utilities/bin/tkast-runInCluster"; \
    done

Validating the Publishing of the SAS_SCORE( ) and the SAS_PUT( ) Functions

To validate that the SAS_SCORE( ) and the SAS_PUT( ) functions were installed, run the \dF command in the Aster Client or use any of the following views:
  • nc_all_sqlmr_funcs, where all returns all functions on the system
  • nc_user_sqlmr_funcs, where user returns all functions that are owned by or granted to the user
  • nc_user_owned_sqlmr_funcs, where user_owned returns all functions that are owned by the user

Aster Permissions

The person who installs the in-database deployment package binary files in Aster needs root privileges for the queen node. This permission is most likely, but not necessarily, needed by the Aster system administrator.
For Aster 4.5, no permissions are needed by the person who runs the scoring or format publishing macros, because all functions and files are published to the PUBLIC schema.
For Aster 4.6, the following schema permissions are needed by the person who runs the scoring and format publishing macros, because all functions and files can be published to a specific schema.
USAGE permission
GRANT USAGE ON SCHEMA yourschemaname TO youruserid;
INSTALL FILE permission
GRANT INSTALL FILE ON SCHEMA yourschemaname TO youruserid;
CREATE permission
GRANT CREATE ON SCHEMA yourschemaname TO youruserid;
EXECUTE permission
GRANT EXECUTE ON FUNCTION PUBLIC.SAS_SCORE TO youruserid;
GRANT EXECUTE ON FUNCTION PUBLIC.SAS_PUT TO youruserid;
GRANT EXECUTE ON FUNCTION PUBLIC.SAS_ROW TO youruserid;
GRANT EXECUTE ON FUNCTION PUBLIC.SAS_PARTITION TO youruserid;

Documentation for Publishing SAS Formats and Scoring Models in Aster

For information about how to publish SAS formats and scoring models, see the SAS In-Database Products: User's Guide, located at http://support.sas.com/documentation/onlinedoc/indbtech/index.html