You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/postgresql/flexible-server/concepts-server-parameters.md
+11-2Lines changed: 11 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,13 +28,22 @@ In order to review which parameters are available to view or to modify, we recom
28
28
29
29
Here is the list of some of the parameters:
30
30
31
-
| Parameter Name | Description |
31
+
32
+
| Parameter Name | Description |
32
33
|----------------------|--------|
33
34
|**max_connections**| You can tune max_connections on Postgres Flexible Server, where it can be set to 5,000 connections. Please see the [limits documentation](concepts-limits.md) for more details. |
34
35
|**shared_buffers**| The 'shared_buffers' setting changes depending on the selected SKU (SKU determines the memory available). General Purpose servers have 2GB shared_buffers for 2 vCores; Memory Optimized servers have 4GB shared_buffers for 2 vCores. The shared_buffers setting scales linearly (approximately) as vCores increase in a tier. |
35
36
|**shared_preload_libraries**| This parameter is available for configuration with a predefined set of supported extensions. Note that we always load the `azure` extension (used for maintenance tasks), as well as the `pg_stat_statements` extension (you can use the pg_stat_statements.track parameter to control whether the extension is active). |
36
37
|**connection_throttling**| You can enable or disable temporary connection throttling per IP for too many invalid password login failures. |
37
-
|**require_secure_transport**| If your application does not support SSL connectivity to the server, you can optionally disable secured transport from your client by turning `OFF` this parameter value. |
38
+
|**work_mem**| This parameter specifies the amount of memory to be used by internal sort operations and hash tables before writing to temporary disk files. If your workload has few queries with a lot of complex sorting and you have a lot of available memory, increasing this parameter may allow Postgres to do larger scans in-memory vs. spilling to disk, which will be faster. Be careful however, as one complex query may have number of sort, hash operations running concurrently. Each one of those operations will use as much memory as it value allows before it starts writing to disk based temporary files. Therefore on a relatively busy system total memory usage will be many times of individual work_mem parameter. If you do decide to tune this value globally, you can use formula Total RAM * 0.25 / max_connections as initial value. Azure Database for PostgreSQL - Flexible Server supports range of 4096-2097151 bytes for this parameter.|
39
+
|**effective_cache_size**|The effective_cache_size parameter estimates how much memory is available for disk caching by the operating system and within the database itself. The PostgreSQL query planner decides whether it’s fixed in RAM or not. Index scans are most likely to be used against higher values; otherwise, sequential scans will be used if the value is low. Recommendations are to set Effective_cache_size at 50% of the machine’s total RAM. |
40
+
|**maintenance_work_mem**| The maintenance_work_mem parameter basically provides the maximum amount of memory to be used by maintenance operations like vacuum, create index, and alter table add foreign key operations. Default value for that parameter is 64 KB. It’s recommended to set this value higher than work_mem; this can improve performance for vacuuming. |
41
+
|**effective_io_concurrency**| Sets the number of concurrent disk I/O operations that PostgreSQL expects can be executed simultaneously. Raising this value will increase the number of I/O operations that any individual PostgreSQL session attempts to initiate in parallel. The allowed range is 1 to 1000, or zero to disable issuance of asynchronous I/O requests. Currently, this setting only affects bitmap heap scans.. |
42
+
|**require_secure_transport**| If your application does not support SSL connectivity to the server, you can optionally disable secured transport from your client by turning `OFF` this parameter value. |
43
+
44
+
>[!NOTE]
45
+
> As you scale Azure Database for PostgreSQL - Flexible Server SKUs up or down, affecting available memory to the server, you may wish to tune your memory global parameters, such as work_mem or effective_cache_size accordingly based on information above.
0 commit comments