SDE配置参数说明
The ArcSDE initialization parameters are stored in the SERVER_CONFIG
system table (SDE_SERVER_CONFIG in SQL Server databases), making them
accessible to multiple services and direct connections. In most cases,
the default values are sufficient and there is no reason to alter them.
However, the values can be adjusted to control the resources allocated
to each ArcSDE session. The parameters can be managed by using the
sdeconfig administration command or editing the giomgr.defs file prior
to the creation of the SERVER_CONFIG table.
For your reference, the operation of, and default settings for, each ArcSDE initialization parameter are described in this list, along with notes of recommendation or warning.
For your reference, the operation of, and default settings for, each ArcSDE initialization parameter are described in this list, along with notes of recommendation or warning.
Parameter | Description | Default | Note |
ALLOWSESSIONLOGFILE | Set this parameter to TRUE if you want your users to use session-based ArcSDE log files. Session-based log files are optimized for applications that remain connected to ArcSDE over an extended period of time and that select many records. | DB2, Oracle, Informix = FALSE SQL Server = TRUE |
|
ATTRBUFSIZE | The size of the attribute array buffer | 50,000 (100 rows with 500 bytes of attribute data each) | Performance is affected when the number of rows that can be fetched into the attribute buffer does not match the MAXARRAYSIZE parameter setting. For queries involving multiple columns, add the number of bytes per column to get a total row size. The ATTRBUFSIZE divided by row size cannot exceed the number of rows specified by MAXARRAYSIZE. ArcSDE will automatically reduce the size of the attribute buffer to hold MAXARRAYSIZE rows. |
AUTOCOMMIT | This is the implicit ArcSDE user automatic commit rate within a transaction. If AUTOCOMMIT is set to 0, the transaction will commit only if the application issues an explicit commit. If it is set to a number greater than 0, the operation will commit after the number of updates specified has occurred. (For instance, for the default setting, a commit will occur after 1,000 updates.) This feature prevents transactions from becoming too large and exceeding the database management system (DBMS) logs. | 1,000 | |
AUTH_KEY | The encrypted license keycode | No default value | This value is assigned during set up; you should not alter it within the SERVER_CONFIG table or giomgr.defs file. |
BLOBMEM | When binary large objects (BLOB) are stored, the server must accumulate the BLOB chunks the application sends over the network. If the BLOB size is greater than BLOBMEM, the server writes the BLOB data to a disk file before storing it in the database. If the BLOB size is less than BLOBMEM, the server accumulates the BLOB in memory. If BLOBMEM is a negative number, the server always uses memory, regardless of the BLOB size. | 1,000,000 | |
CONNECTIONS | The maximum number of simultaneous connections accepted by the application server. | 48 | Beginning with ArcSDE 9.0, this parameter also limits the number of direct connections. Therefore, your total number of connections, two-tiered and three-tiered, cannot exceed the value of this parameter. |
DEFAULTPRECISION | You may set this parameter to 32-bit integer precision. Spatial columns created with the default value of 64-bit will store 64-bit geometry. | 64-bit integers | |
DISABLEDC | Set to TRUE, this disables the describe cache; set to FALSE, the describe cache is enabled. | FALSE | It is recommended that you use the default—describe cache enabled. The value should only be changed to TRUE if you experience SQL syntax errors using in-line or aggregate functions in select lists. |
DETECT8XNULLSHAPE | Set this parameter to TRUE if you are using ArcSDE for Oracle8i and you expect that at least some of your feature classes will contain NULL shapes. | FALSE | This is an ArcSDE for Oracle 8i parameter only. |
DISABLEAUTOREG | Disables the autoregistration of business tables containing spatial columns created with an object relational data type. The DB2 Spatial Extender, Informix Spatial DataBlade, Oracle Spatial, and ArcSDE for Oracle provide object relational spatial types. When the ArcSDE application server is started, it scans the system tables for any unregistered spatial columns that may exist in the database, and registers them. Setting DISABLEAUTOREG to FALSE disables this capability. | TRUE | Not present in SQL Server geodatabases |
ERRLOGMODE | Determines whether the time stamp, session ID, and client computer name are logged with each error when an error is written to the ArcSDE error log file. If you want to limit the items included with the error, set the parameter to the letters of those items. (See default list.) If you want to include none of these items with the error, set the parameter to NONE. | By default this parameter is set to TIC. T-time stamp I-Session ID C-Client computer |
|
HOLDLOGPOOLTABLES | By default, this parameter is set to TRUE, which directs the ArcSDE application to keep and reuse all session-based log files that it has checked out of the session log file pool until it disconnects. When set to FALSE, ArcSDE applications release log files to the pools whenever log files are deleted. | TRUE | In almost all cases, this should be left set to TRUE. |
INT64TYPES | Leave this parameter set to FALSE (the default) if you want to disable 64-bit integers, which you will need to do if your application does not support them. When set to FALSE, ArcSDE will return 64-bit integer fields as double precision and disallow the creation of 64-bit integer fields. Setting this parameter to TRUE allows you to use 64-bit integers. | FALSE | You must set this parameter to FALSE if your application does not support 64-bit integers. |
LARGEIDBLOCK | The value of this parameter is used in the calculation of the number of row ID values ArcSDE allocates to a buffered stream. When ArcSDE detects that a buffered stream is attempting to load a large number of records into a table, it calculates the number of row IDs to be allocated as the minimum of this parameter and twice the current row ID allocation. The row ID allocation is initially set to the value of the SMALLIDBLOCK and doubles in size until it reaches LARGEIDBLOCK. | 0 | |
LAYERAUTOLOCKING | As of ArcSDE 9, layer autolocking has been disabled by default. You can enable it for the ArcSDE server by setting the server configuration parameter LAYERAUTOLOCKING to TRUE, in which case layers that have their autolocking property enabled will autolock shapes when they are edited in NORMAL_IO mode. By default, a layer is created with its autolocking property enabled. To disable autolocking for a particular layer, use the sdelayer administration command's alter operation. | ArcSDE 9 = FALSE Before ArcSDE 9 = TRUE |
|
LOGFILEPOOLSIZE | This parameter specifies the size of the session-based log file pool. By default, this parameter is set to 0, which represents the number of log files that will be owned by the ArcSDE administrator and shared among users. Users may check out log files from the pool as opposed to creating their own. | 0 | This parameter replaced SESSIONLOGPOOLSIZE beginning with ArcSDE 9.0. If you don't want to use a log file pool, leave this set to 0. |
MAXARRAYBYTES | This is the maximum number of array bytes allocated per stream. It is used to manage the memory allocations for array buffers on the server. | 550,000 | The
sum of ATTRBUFSIZE and SHAPEPTSBUFSIZE must be less than or equal to
MAXARRAYBYTES. If it isn't, the ArcSDE application server (aka service)
will not start. If this problem occurs, either increase MAXARRAYBYTES
or decrease either ATTRBUFSIZE or SHAPEPTSBUFSIZE. This value cannot be changed with the SE_connection_set_stream_spec function and can only be altered in the SDE.SERVER_CONFIG table by the ArcSDE administrator. |
MAXARRAYSIZE | The maximum number of rows that the server will fetch per request | 100 | Optimal values can range between 20 and 150, depending on platforms and DBMS. Once the shape points data (SHAPEPTSBUFSIZE) and attribute buffer (ATTRBUFSIZE) are correctly tuned, try several array sizes to determine the optimal setting for your installation. |
MAXBLOBSIZE | The maximum size of user-defined BLOBs in bytes | 1,000,000 | |
MAXBUFSIZE |
This is the maximum buffer threshold. The minimum value is 12,288 (12 KB). | 64 kilobytes | If the MAXBUFSIZE value is greater than 12 KB but less than the MINBUFSIZE, the two values are switched. Learn more about MAXBUFSIZE |
MAXDISTINCT | This parameter controls the maximum number of distinct values returned by an SE_DISTINCT_STATS statistic in a call to SE_table_calculate_stats or SE_stream_calculate_table_statistics. A value of 0 means an unlimited number of distinct values can be returned. | 512 | The distinct values are generated in memory on the server and passed to the client's memory when the list is complete. Calculating the statistics of a large table could pose a threat to the client and server resources. A prudent database administrator will set this value high enough to allow most queries to complete, but not so high as to expose the server or the client application to a memory shortage. Should a user receive the error message SE_TOO_MANY_DISTINCTS, the MAXDISTINCT parameter may be raised, but this should be done cautiously since it impacts both client and server memory. It may be advisable to examine the applications to determine whether queries could be performed more efficiently. |
MAXINITIALFEATS | This parameter specifies the maximum number of features allowed in the initial features argument of the sdelayer administration tool and the SE_layer_create function. This parameter prevents the inadvertent creation of excessively large initial extents for the table of a feature class. | 10,000 | This is an ArcSDE for Oracle parameter only. |
MAXGRIDSPERFEAT | Specifies the maximum number of grids per feature in the spatial index. | 1000 | Cannot be set below 1000 |
MAXSTANDALONELOGS | The maximum number of stand-alone log files a user is allowed to create | 0 | If using any log file configuration other than stand-alone log files, keep this parameter set to 0. |
MAXTIMEDIFF | Specified in seconds, the maximum time difference allowed between the system clocks of the server machine and a client machine. It prevents an unauthorized entry by someone who may have captured a network packet containing an ArcSDE connection string. When this person tries to resend the packet, it is rejected if the time that has elapsed between the capture and the resend is greater than the MAXTIMEDIFF setting. | 1,800 seconds | This parameter does not restrict direct connections. Set this parameter to -1 to disable it. If legitimate connections receive a "-99 password received was sent 7 MAXTIMEDIFF seconds before" error, reset the client machine's system time to the host's system time. |
MINBUFOBJECTS | The minimum number of buffer objects (rows) in the transport buffer | 512 rows | MINBUFOBJECTS depends on the size (bytes) of a row of data. Learn more about MINBUFOBJECT |
MINBUFSIZE | The minimum buffer threshold; the minimum value is 4 kilobytes | 16 kilobytes | Setting MINBUFSIZE too high increases wait time; therefore, set MINBUFSIZE to no more than one-half of the MAXBUFSIZE. Learn more about MINBUFSIZE |
PACKETSIZE | SQL Server allows you to change the network packet size of the packets transferred between the SQL Server instance and the client (in this case, ArcSDE). Testing at ESRI has determined that ArcSDE performs best when this packet size is set to 8 KB, the default setting for this parameter. | 8 kilobytes | This parameter applies to ArcSDE for SQL Server only. |
PRECISION10 | For ArcSDE for Oracle, setting this parameter to TRUE increases the precision of the interpretation of the LONG integer value from 9 bytes to 10 bytes. At ArcSDE 8.1, the LONG integer was shortened to 9 bytes as a bug fix. However, this affected the storage of legacy data, which requires the LONG to be interpreted as 10 bytes. | FALSE | Unless you are having a problem with legacy data created prior to ArcSDE 8.1, do not change the setting of this parameter. |
PROCSTATS | The process statistics parameter controls the interval at which sessions update the SDE.PROCESS_INFORMATION table. By default, this parameter is set to -1, which disables entries to the PROCESS_INFORMATION table. To enable entries, set the parameter to a positive integer that reflects the interval, in seconds, in which the sessions will write their statistics to the table. The interval represents the time that must pass before the session last wrote statistics. The session will only write statistics if a change has occurred. | -1 | Writing statistics to the SDE.PROCESS_INFORMATION table can be expensive and should be avoided. |
RASTERBUFSIZE | This
parameter defines the size of the raster buffer, which controls raster
data transfer. The raster transfer includes both an array buffer and
transport buffers. The raster array buffer is set at two times the
RASTERBUFSIZE parameter, while the raster transport buffers are set to
the RASTERBUFSIZE. Therefore, the memory allocated to raster transfer
on the server is three times RASTERBUFSIZE. On the client, RASTERBUFSIZE bytes of memory are allocated to the client raster transport buffer when raster tiles are accessed by a stream. The raster buffers are not deallocated until the stream is closed, unless the stream is added to the stream pool. (See STREAMPOOLSIZE.) |
16,384 bytes (128 pixels * 128 pixels, or data equivalent to 8 bits per pixel) | This
value is specified in bytes and must be large enough to store the
largest raster tile accessed. The SE_RASTERBUFFER_TOO_SMALL error is
returned if the raster tile that does not fit into the transport
buffer. If memory is at a premium, specify a smaller tile size rather
than raise the RASTERBUFSIZE. The pixel depth must be taken into account when calculating the number of bytes per pixel. Examples: image pixel depth=64-bit, tile size=128 * 128, required RASTERBUFSIZE=131,072 bytes (128 * 128 * 8) image pixel depth=8-bit, tile size=256 * 256, required RASTERBUFSIZE=65,536 bytes (256 * 256 * 1) Beginning with ArcSDE 9.2, the throughput of ArcSDE raster data has been threaded to make better use of the server's processing power. Additionally, several more memory buffers have been added. Therefore, it is very important to set the RASTERBUFSIZE parameter no larger than 1 MB. The recommended size is 100 KB. |
READONLY | This parameter either allows or disallows edits of the geodatabase by ArcSDE clients. When set to TRUE, the ArcSDE service will not allow edits to be performed by ArcSDE clients. | FALSE | FALSE = allows editing TRUE = read-only connection |
SHAPEPTSBUFSIZE | This is the size of the shape POINTS array buffer. | 400,000 | The default value (400,000) is calculated for a two-dimensional area feature with 500 points. |
SMALLIDBLOCK | The value of the parameter is used to calculate the minimum number of row IDs that ArcSDE allocates to the stream. | 16 | |
STATEAUTOLOCKING | This parameter disables or enables the autolocking of the states. | FALSE (disables autolocking of states) | Unless you have third-party applications (those not created by ESRI) editing states, you should not set this parameter to TRUE, because it will degrade the overall performance of your system. |
STATECACHING | When state caching is set to TRUE, the state of each stream is maintained in memory on the server. If FALSE, the state must be read from the disk for each stream operation. Frequent stream operations should be cached for maximum performance. | TRUE | |
STATUS | Values are 1 if this instance is accepting new connections or 2 if it is paused (not accepting new connections). | 1 | |
STREAMPOOLSIZE | This is the maximum number of allocated stream resources added to the stream pool. The resources of the stream pool are reused whenever new streams are created. Until the value of STREAMPOOLSIZE is exceeded, the resources of released streams are added to the stream pool. If the stream pool is full when a stream is released, its resources are deallocated. | 6 | If the STREAMPOOLSIZE is set to 0, no pool of released stream resources is created. |
TCPKEEPALIVE | Setting
TCPKEEPALIVE to TRUE will allow the ArcSDE service (aka application
server) to use the current system's TCP/IP KEEPALIVE settings. ArcSDE
services will then be able to detect clients whose machines have
crashed or have been deliberately terminated by the Windows Task
Manager or the Unix kill command. TCPKEEPALIVE set to TRUE turns on a form of probing in which, after approximately two hours of idle time, a packet is sent on the idle connection to see if there is anything on the other end. TCPKEEPALIVE does not disconnect valid connections that have simply been sitting idle for more than two hours. It only disconnects application connections that have been terminated or crashed. |
FALSE | If TCPKEEPALIVE is set to TRUE, a disconnection can be triggered by short-term network outages (~10 minutes). TCPKEEPALIVE will not disconnect a direct connection. The system's TCP/IP KEEPALIVE setting is system wide and affects all application server processes running in the TCP/IP environment. |
TEMP | Specifies the full pathname to a temporary disk space directory and used for attribute binary large objects that exceed the size specified by the giomgr parameter BLOBMEM | The full path to the system temporary directory (for example, c:\documents and settings\username\local settings\temp) | A directory with at least 5 MB of available space should be specified. Some files that the ArcSDE application server creates are always stored in the temp directory. |
TLMINTERVAL | The time last modified interval (TLMINTERVAL) is the number of seconds that must pass before TABLES_MODIFIED (SDE_TABLES_MODIFIED in SQL Server databases) ArcSDE system table is queried again by ArcSDE to determine if a change has been made to any of the other ArcSDE tables. | 1 second | If the ArcSDE metadata is not changing (in other words, you are not adding, removing, or altering layers, raster columns, or XML columns or changing the registration of business tables), you can set this parameter higher than the default to avoid the overhead of queries to the TABLES_MODIFIED table. |
TRIMLOCKINGTYPE | Defines
whether or not explicit table locking occurs on a versioned table’s D
(deletes) table during a compress operation or when a versioned row is
updated or deleted. By default, explicit table locking is enabled. Possible values are
|
ONLY DURING COMPRESS |