Home | Previous Page | Next Page   Configuration > Coserver Configuration > Managing Coservers >

Customizing the Coserver Definition

You can customize coservers by adding parameter definitions to the coserver definition. Any parameters added to the coserver definition override the global configuration for that coserver.

Important:
In a multiple-coserver environment, you might also need to set some platform-specific parameters in the coserver-specific section of the ONCONFIG file. See the machine notes file for your platform. If the parameters are not mentioned in the machine notes, your platform does not require them.

Specifying Coserver-Specific Configuration

Figure 8 shows the global ONCONFIG parameters that apply to all coservers but that you can override in the coserver-specific sections.

Figure 8. Global Coserver Configuration Parameters
ROOTSLICE       rootdbs 
ROOTPATH        /informixdata/rootchk%c 
ROOTOFFSET      0               
ROOTSIZE        11000           
PHYSSLICE       physslice       
PHYSFILE        10000           
LOGFILES        20             
LOGSIZE         1024            
LOCKS           4096
BUFFERS         5000
SHMVIRTSIZE     32768       
SHMADD          16384

You can override the following global parameters in the coserver definition:

To customize a coserver, override the global configuration parameters by adding parameters and settings between the COSERVER and END parameters in the coserver-specific section of the ONCONFIG file.

Figure 9 shows the coserver-configuration section for each coserver. One of the specific-purpose coservers is configured with both the COMPUTE and TEMPDATA capabilities. The fully capable coservers on nodes able, baker, and charlie use the global parameters. The specific-purpose coservers on nodes delta and echo specify smaller memory and lock parameters and a larger root dbspace because the root dbspace contains the logical and physical log files.

Figure 9. Coserver Definition Sections of an ONCONFIG Files
COSERVER        1
NODE            able
END

COSERVER        2
NODE            baker
END

COSERVER        3            
NODE            charlie
END

COSERVER        4
NODE            delta
CAPABILITIES    COMPUTE
ROOTSIZE        40000           
PHYSDBS         rootdbs.4
LOCKS           2000            
BUFFERS         100            
SHMVIRTSIZE     8192          
SHMADD          8192            
END

COSERVER        5
NODE            echo
CAPABILITIES    COMPUTE,TEMPDATA
ROOTSIZE        40000           
PHYSDBS         rootdbs.5
LOCKS           2000           
BUFFERS         100            
SHMVIRTSIZE     8192           
SHMADD          8192            
END

Specifying a Specific Purpose for a Coserver

The CAPABILITIES configuration parameter specifies the specific use of the coserver in the COSERVER definition section for a new coserver. If the CAPABILITIES parameter is omitted, the added coserver is a fully capable coserver that can host permanent data and perform all coserver tasks.

To add a specific-purpose coserver that can perform only specified processing tasks and host temporary files, include the CAPABILITIES parameter.

onconfig.std value
None
if not present
The coserver is fully capable.
units
COMPUTE: capability performs compute operations such as aggregation, joins, and sorts, and stores the overflow from these operations in TEMP dbspaces that you create.

TEMPDATA: capability stores temporary user tables in TEMP dbspaces that you create.

separators
Comma or colon (no white spaces)
range of values
COMPUTE
TEMPDATA
COMPUTE,TEMPDATA
takes effect
When shared memory is initialized
refer to
Your IBM Informix: Performance Guide for information about appropriate settings

The types of specific-purpose coservers are: COMPUTE and TEMPDATA. You can specify both COMPUTE and TEMPDATA as arguments to the CAPABILITIES parameter.

Specific-purpose coservers create their root dbspaces when they are initialized, but you need to create TEMP dbspaces for temporary tables and the overflow of query operators.

Creating Storage Spaces for Coservers

For each coserver that you add, you must create dbspaces or dbslices that add dbspaces to these coservers.

For example, if you create cogroup_tempspace to include all specific-purpose coservers and create raw devices with the path /dbspaces/temp.4 and so on, you might use the following onutil command to create a temporary dbslice:

onutil CREATE TEMP DBSLICE spec_temp1 FROM cogroup_tempspace 
CHUNK \"/dbspaces/temp.%c\" SIZE 490000; 

If you specified the ROOTSLICE global configuration parameter, the database server automatically creates uniformly named root dbspaces for each of your coservers. If you do not specify the ROOTSLICE configuration parameter, you define a root dbspace by setting a unique value for the ROOTNAME configuration parameter in each coserver definition.

Tip:
Because specific-purpose coservers do not host permanent tables and databases, they do not need as much space in the root dbspace. For these coservers, you might override the value of ROOTSLICE to create a smaller root dbspace.

In addition, you must create dbspaces:

For information on defining disk space and creating dbspaces and dbslices, refer to your IBM Informix: Administrator's Guide.

Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]