Previous Page | Next Page

SAS/ACCESS Interface for Informix

Autopartitioning Scheme for Informix


Overview

Autopartitioning for SAS/ACCESS Interface to Informix is a modulo (MOD) function method. For general information about this feature, see Autopartitioning Techniques in SAS/ACCESS.


Autopartitioning Restrictions

SAS/ACCESS Interface to Informix places additional restrictions on the columns that you can use for the partitioning column during the autopartitioning phase. Here is how columns are partitioned.


Using WHERE Clauses

Autopartitioning does not select a column to be the partitioning column if it appears in a SAS WHERE clause. For example, the following DATA step cannot use a threaded read to retrieve the data because all numeric columns in the table are in the WHERE clause:

data work.locemp;
set trlib.MYEMPS;
where EMPNUM<=30 and ISTENURE=0 and
 SALARY<=35000 and NUMCLASS>2;
run;


Using DBSLICEPARM=

Although SAS/ACCESS Interface to Informix defaults to three threads when you use autopartitioning, do not specify a maximum number of threads in DBSLICEPARM= LIBNAME option to use for the threaded read.

This example shows how to use of DBSLICEPARM= with the maximum number of threads set to five:

libname x informix user=dbitest using=dbigrp1 server=odbc15;
proc print data=x.dept(dbsliceparm=(ALL,5));
run; 


Using DBSLICE=

You can achieve the best possible performance when using threaded reads by specifying the DBSLICE= data set option for Informix in your SAS operation. This example shows how to use it.

libname x informix user=dbitest using=dbigrp1 server=odbc15;
data xottest;
set x.invoice(dbslice=("amtbilled<10000000" "amtbilled>=10000000")); 
run;

Previous Page | Next Page | Top of Page