Resource Usage / Memory v10
The configuration parameters in this section control resource usage pertaining to memory.
edb_dynatune
Parameter Type: Integer
Default Value: 0
Range: 0 to 100
Minimum Scope of Effect: Cluster
When Value Changes Take Effect: Restart
Required Authorization to Activate: EPAS service account
Determines how much of the host system’s resources are to be used by the database server based upon the host machine’s total available resources and the intended usage of the host machine.
When Advanced Server is initially installed, the edb_dynatune
parameter is set in accordance with the selected usage of the host machine on which it was installed (i.e., development machine, mixed use machine, or dedicated server). For most purposes, there is no need for the database administrator to adjust the various configuration parameters in the postgresql.conf
file in order to improve performance.
The edb_dynatune
parameter can be set to any integer value between 0 and 100, inclusive. A value of 0, turns off the dynamic tuning feature thereby leaving the database server resource usage totally under the control of the other configuration parameters in the postgresql.conf
file.
A low non-zero, value (e.g., 1 - 33) dedicates the least amount of the host machine’s resources to the database server. This setting would be used for a development machine where many other applications are being used.
A value in the range of 34 - 66 dedicates a moderate amount of resources to the database server. This setting might be used for a dedicated application server that may have a fixed number of other applications running on the same machine as Advanced Server.
The highest values (e.g., 67 - 100) dedicate most of the server’s resources to the database server. This setting would be used for a host machine that is totally dedicated to running Advanced Server.
Once a value of edb_dynatune
is selected, database server performance can be further fine-tuned by adjusting the other configuration parameters in the postgresql.conf
file. Any adjusted setting overrides the corresponding value chosen by edb_dynatune
. You can change the value of a parameter by un-commenting the configuration parameter, specifying the desired value, and restarting the database server.
edb_dynatune_profile
Parameter Type: Enum
Default Value: oltp
Range: {oltp | reporting | mixed}
Minimum Scope of Effect: Cluster
When Value Changes Take Effect: Restart
Required Authorization to Activate: EPAS service account
This parameter is used to control tuning aspects based upon the expected workload profile on the database server.
The following are the possible values:
oltp.
Recommended when the database server is processing heavy online transaction processing workloads.reporting.
Recommended for database servers used for heavy data reporting.mixed.
Recommended for servers that provide a mix of transaction processing and data reporting.
edb_enable_icache
Parameter Type: Boolean
Default Value: false
Range: {true | false}
Minimum Scope of Effect: Cluster
When Value Changes Take Effect: Restart
Required Authorization to Activate: EPAS service account
Enables or disables Infinite Cache. If edb_enable_icache
is set to on, Infinite Cache is enabled; if the parameter is set to off, Infinite Cache is disabled.
If you set edb_enable_icache
to on, you must also specify a list of cache servers by setting the edb_icache_servers
parameter.
edb_icache_servers
Parameter Type: String
Default Value: none
Range: n/a
Minimum Scope of Effect: Cluster
When Value Changes Take Effect: Reload
Required Authorization to Activate: EPAS service account
The edb_icache_servers
parameter specifies a list of one or more servers with active edb-icache daemons. edb_icache_servers
is a string value that takes the form of a comma-separated list of hostname:port
pairs. You can specify each pair in any of the following forms:
- hostname
- IP_address
- hostname:portnumber
- IP_address:portnumber
If you do not specify a port number, Infinite Cache assumes that the cache server is listening at port 11211. This configuration parameter will take effect only if edb_enable_icache
is set to on. Use the edb_icache_servers
parameter to specify a maximum of 128 cache nodes.
You can dynamically modify the Infinite Cache server nodes. To change the Infinite Cache server configuration, use the edb_icache_servers
parameter in the postgresql.conf file to perform the following:
- Specify additional cache information to add server(s).
- Delete server information to remove server(s).
- Specify additional server information and delete existing server information to both add and delete servers during the same reload operation.
After updating the edb_icache_servers
parameter in the postgresql.conf
file, you must reload the configuration parameters for the changes to take effect.
edb_icache_compression_level
Parameter Type: Integer
Default Value: 6
Range: 0 to 9
Minimum Scope of Effect: Per session
When Value Changes Take Effect: Immediate
Required Authorization to Activate: Superuser
The edb_icache_compression_level
parameter controls the compression level that is applied to each page before storing it in the distributed Infinite Cache.
When Advanced Server reads data from disk, it typically reads the data in 8kB increments. If edb_icache_compression_level
is set to 0, each time Advanced Server sends an 8kB page to the Infinite Cache server that page is stored (uncompressed) in 8kB of cache memory. If the edb_icache_compression_level
parameter is set to 9, Advanced Server applies the maximum compression possible before sending it to the Infinite Cache server, so a page that previously took 8kB of cached memory might take 2kB of cached memory. Exact compression numbers are difficult to predict, as they are dependent on the nature of the data on each page.
This parameter must be an integer in the range 0 to 9.
- A compression level of 0 disables compression; it uses no CPU time for compression, but requires more storage space and network resources to process.
- A compression level of 9 invokes the maximum amount of compression; it increases the load on the CPU, but less data flows across the network, so network demand is reduced. Each page takes less room on the Infinite Cache server, so memory requirements are reduced.
- A compression level of 5 or 6 is a reasonable compromise between the amount of compression received and the amount of CPU time invested.
The compression level must be set by the superuser and can be changed for the current session while the server is running. The following command disables the compression mechanism for the currently active session:
SET edb_icache_compression_level TO 0;