Configuration Parameters

Below we provide a table with all the TileDB configuration parameters, along with their description and default values. See Configuration for information on how to set them.

Parameter

Default Value

Description

"sm.check_coord_dups"

"true"

This is applicable only if sm.dedup_coords is false. If true, an error will be thrown if there are cells with duplicate coordinates during sparse array writes. If false and there are duplicates, the duplicates will be written without errors, but the TileDB behavior could be unpredictable.

"sm.check_coord_oob"

"true"

If true, an error will be thrown if there are cells with coordinates lying outside the array domain during sparse array writes.

"sm.check_global_order"

"true"

If true, an error will be thrown if the coordinates are not in the global order. Applicable only to sparse writes in the global order.

"sm.consolidation.amplification"

"1.0"

The factor by which the size of the dense fragment resulting from consolidating a set of fragments (containing at least one dense fragment) can be amplified. This is important when the union of the non-empty domains of the fragments to be consolidated have a lot of empty cells, which the consolidated fragment will have to fill with the special fill value (since the resulting fragment is dense).

"sm.consolidation.buffer_size"

"50000000"

The size (in bytes) of the attribute buffers used during consolidation.

"sm.consolidation.step_max_frags"

"4294967295"

The maximum number of fragments to consolidate in a single step.

"sm.consolidation.step_min_frags"

"4294967295"

The minimum number of fragments to consolidate in a single step.

"sm.consolidation.step_size_ratio"

"0"

The size ratio of two (“adjacent”) fragments must be larger than this value to be considered for consolidation in a single step.

"sm.consolidation.steps"

"4294967295"

The number of consolidation steps to be performed when executing the consolidation algorithm.

"sm.consolidation.mode"

"fragments"

The consolidation mode, one of fragments (consolidate all fragments), fragment_meta (consolidate only fragment metadata footers to a .meta file), or array_meta (consolidate array metadata only).

"sm.vacuum.mode"

"fragments"

The vacuuming mode, one of fragments (remove consolidated fragments), fragment_meta (remove only consolidated fragment metadata), or array_meta (remove consolidated array metadata files).

"sm.dedup_coords"

"false"

If true, cells with duplicate coordinates will be removed during sparse array writes. Note that ties during deduplication are broken arbitrarily.

"sm.enable_signal_handlers"

"true"

Determines whether or not TileDB will install signal handlers.

"sm.memory_budget"

"5GB"

The memory budget for tiles of fixed-sized attributes (or offsets for var-sized attributes) to be fetched during reads.

"sm.memory_budget_var"

"10GB"

The memory budget for tiles of var-sized attributes to be fetched during reads.

"sm.num_async_threads"

"1"

The number of threads allocated for async queries.

"sm.num_reader_threads"

"1"

The number of threads allocated for filesystem read operations.

"sm.num_writer_threads"

"1"

The number of threads allocated for filesystem write operations.

"sm.num_tbb_threads"

"-1"

The number of threads allocated for the TBB thread pool (if TBB is enabled). Note: this is a whole-program setting. Usually this should not be modified from the default. See also the documentation for TBB’s task_scheduler_init class.

"sm.tile_cache_size"

"10000000"

The tile cache size in bytes.

"vfs.num_threads"

# of cores

The number of threads allocated for VFS operations (any backend), per VFS instance.

"vfs.file.max_parallel_ops"

vfs.num_threads

The maximum number of parallel operations on objects with file:/// URIs.

"vfs.file.enable_filelocks"

true

If set to false, file locking operations are no-ops in VFS for file:/// URIs.

"vfs.file.posix_permissions"

"755"

Permissions to use for posix file system with file or directory creation.

"vfs.min_batch_gap"

"512000"

The minimum number of bytes between two VFS read batches.

"vfs.min_batch_size"

"20971520"

The minimum number of bytes in a VFS read operation.

"vfs.min_parallel_size"

"10485760"

The minimum number of bytes in a parallel VFS operation, except parallel S3 writes, which are controlled by parametervfs.s3.multipart_part_size

"vfs.s3.connect_max_tries"

"5"

The maximum tries for a connection. Any long value is acceptable.

"vfs.s3.connect_scale_factor"

"25"

The scale factor for exponential backoff when connecting to S3. Any long value is acceptable.

"vfs.s3.connect_timeout_ms"

"3000"

The connection timeout in ms. Any long value is acceptable.

"vfs.s3.endpoint_override"

""

The S3 endpoint, if S3 is enabled.

"vfs.s3.max_parallel_ops"

vfs.num_threads

The maximum number of S3 backend parallel operations.

"vfs.s3.multipart_part_size"

"5242880"

The part size (in bytes) used in S3 multipart writes. Any uint64_t value is acceptable. Note: vfs.s3.multipart_part_size * vfs.s3.max_parallel_ops bytes will be buffered before issuing multipart uploads in parallel.

"vfs.s3.proxy_host"

""

The S3 proxy host.

"vfs.s3.proxy_password"

""

The S3 proxy password.

"vfs.s3.proxy_port"

"0"

The S3 proxy port.

"vfs.s3.proxy_scheme"

"https"

The S3 proxy scheme.

"vfs.s3.proxy_username"

""

The S3 proxy username.

"vfs.s3.region"

"us-east-1"

The S3 region.

"vfs.s3.aws_access_key_id"

""

The AWS access key id (AWS_ACCESS_KEY_ID)

"vfs.s3.aws_secret_access_key"

""

The AWS access secret (AWS_SECRET_ACCESS_KEY"vfs.s3.aws_secret_access_key"

"vfs.s3.aws_session_token"

""

The AWS session token to use

"vfs.s3.logging_level"

""

The AWS SDK logging level (OFF, DEBUG, TRACE)

"vfs.s3.request_timeout_ms"

"3000"

The request timeout in ms. Any long value is acceptable.

"vfs.s3.scheme"

"https"

The S3 scheme.

"vfs.s3.use_virtual_addressing"

"true"

Determines whether to use virtual addressing or not.

"vfs.s3.ca_file"

""

The path to a cURL-compatible certificate file.

"vfs.s3.ca_path"

""

The path to a cURL-compatible certificate directory.

"vfs.s3.verify_ssl"

"true"

Enable certificate verification for HTTPS connections.

"vfs.hdfs.kerb_ticket_cache_path"

""

Path to the Kerberos ticket cache when connecting to an HDFS cluster.

"vfs.hdfs.name_node_uri"

""

Optional namenode URI to use (TileDB will use "default" if not specified). URI must be specified in the format <protocol>://<hostname>:<port>, ex: hdfs://localhost:9000. If the string starts with a protocol type such as file:// or s3:// this protocol will be used (default hdfs://).

"vfs.hdfs.username"

""

Username to use when connecting to the HDFS cluster.

"rest.server_address"

https://api.tiledb.com

URL for REST server to use for remote arrays.

"rest.server_serialization_format"

"CAPNP"

Serialization format to use for remote array requests (CAPNP or JSON).

"rest.username"

""

Username for login to REST server (a token can be used instead).

"rest.password"

""

Password for login to REST server.

"rest.token"

""

Authentication token for REST server (used instead of username/password).

"rest.resubmit_incomplete"

"true"

If true, incomplete queries received from server are automatically resubmitted before returning to user control.

"rest.ignore_ssl_validation"

"false"

Have curl ignore ssl peer and host validation for REST server.