SAS 9.1.3 Intelligence Platform: System Administration Guide
SAS 9.1.3 Intelligence Platform: System Administration Guide
SAS 9.1.3 Intelligence Platform: System Administration Guide
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
110 Concurrent Queries/Clients R Chapter 14<br />
metadata is loaded into memory, and no I/O for Column metadata queries should<br />
happen again until the server is paused and resumed or stopped and restarted.<br />
Concurrent Queries/Clients<br />
The number of processors on the server determines the number of concurrent<br />
queries that can run on the server.<br />
If you expect a small volume of concurrent clients, you can probably use a<br />
single-processor machine. If you are expecting 1,000 concurrent clients, you will want<br />
an eight-processor machine.<br />
When configuring the metadata server, set the MAXACTIVETHREADS option in the<br />
omaconfig.xml server configuration file to the number of processors. Also be sure to<br />
set the THREADSMIN (TMIN) and THREADSMAX (TMAX) OBJECTSERVERPARMS<br />
options in the metadata server start-up command such that TMIN=TMAX and<br />
TMAX=(#_processors * 2) + 1. For more information about how the metadata server<br />
handles concurrent queries and threads, see “Configuring the Number of Threads Used<br />
by the Metadata Server” on page 103.<br />
Estimating Metadata Storage Requirements<br />
The metadata storage requirement is largely fixed and can be roughly estimated by<br />
using the following formula:<br />
50MB + size_of_all_repositories<br />
In this formula, 50MB is the approximate amount of memory that the server uses to<br />
register the first repository, and size_of_all_repositories is roughly equal to the<br />
size of all of the metadata type containers in all repositories on the metadata server.<br />
A metadata type container is a <strong>SAS</strong> data set that stores the attributes of metadata<br />
object instances as observations. A metadata type container is created when the first<br />
object instance of that type is created in a repository. Therefore, the amount of required<br />
RAM increases as containers are added, until each repository on the server has<br />
containers for all of the metadata types in the <strong>SAS</strong> Metadata Model.<br />
The server also creates several containers in each repository that do not map to a<br />
metadata type. For example:<br />
3 an MDASSOC container stores information about all metadata object associations<br />
3 a TXTPAGE stores overflow information from metadata type containers<br />
3 an MRRGSTRY container stores information about the object IDs that are used in<br />
the repository<br />
3 a CNTAINER container maintains a list of other containers that have been created<br />
The memory requirement for stored metadata is also affected by:<br />
3 the number of observations created in each container<br />
3 the value of the PHYSICAL_DELETE server configuration option. When the<br />
PHYSICAL_DELETE option is on (the default), then the memory used by an<br />
observation will be recovered when a metadata object instance is deleted. When<br />
PHYSICAL_DELETE is turned off, then an observation for every metadata object<br />
ever created will be held in memory until the deleted records are purged from the<br />
repository.<br />
A downloadable program called ContainerStatsExport.sas measures the size of<br />
the containers in a repository. The program also reports statistics about the containers<br />
that can be used to manage memory, such as the observation length, and the number of<br />
logical observations versus the number of physical observations. If you create a