Skip to content

Commit 1a09b95

Browse files
authored
Add vinyl section to configuration reference (#4298)
1 parent 60a8acf commit 1a09b95

File tree

2 files changed

+240
-63
lines changed

2 files changed

+240
-63
lines changed

doc/reference/configuration/configuration_reference.rst

Lines changed: 214 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3834,6 +3834,220 @@ snapshot.by.*
38343834
| Default: 10^18
38353835
| Environment variable: TT_SNAPSHOT_BY_WAL_SIZE
38363836
3837+
.. _configuration_reference_vinyl:
3838+
3839+
vinyl
3840+
-----
3841+
3842+
The ``vinyl`` section defines configuration parameters related to the
3843+
:ref:`vinyl storage engine <engines-vinyl>`.
3844+
3845+
.. NOTE::
3846+
3847+
``vinyl`` can be defined in any :ref:`scope <configuration_scopes>`.
3848+
3849+
- :ref:`vinyl.bloom_fpr <configuration_reference_vinyl_bloom_fpr>`
3850+
- :ref:`vinyl.cache <configuration_reference_vinyl_cache>`
3851+
- :ref:`vinyl.defer_deletes <configuration_reference_vinyl_defer_deletes>`
3852+
- :ref:`vinyl.dir <configuration_reference_vinyl_dir>`
3853+
- :ref:`vinyl.max_tuple_size <configuration_reference_vinyl_max_tuple_size>`
3854+
- :ref:`vinyl.memory <configuration_reference_vinyl_memory>`
3855+
- :ref:`vinyl.page_size <configuration_reference_vinyl_page_size>`
3856+
- :ref:`vinyl.range_size <configuration_reference_vinyl_range_size>`
3857+
- :ref:`vinyl.read_threads <configuration_reference_vinyl_read_threads>`
3858+
- :ref:`vinyl.run_count_per_level <configuration_reference_vinyl_run_count_per_level>`
3859+
- :ref:`vinyl.run_size_ratio <configuration_reference_vinyl_run_size_ratio>`
3860+
- :ref:`vinyl.timeout <configuration_reference_vinyl_timeout>`
3861+
- :ref:`vinyl.write_threads <configuration_reference_vinyl_write_threads>`
3862+
3863+
.. _configuration_reference_vinyl_bloom_fpr:
3864+
3865+
.. confval:: vinyl.bloom_fpr
3866+
3867+
A bloom filter's false positive rate -- the suitable probability of the
3868+
`bloom filter <https://en.wikipedia.org/wiki/Bloom_filter>`_
3869+
to give a wrong result.
3870+
The ``vinyl.bloom_fpr`` setting is a default value for the
3871+
:ref:`bloom_fpr <index_opts_bloom_fpr>`
3872+
option passed to ``space_object:create_index()``.
3873+
3874+
|
3875+
| Type: number
3876+
| Default: 0.05
3877+
| Environment variable: TT_VINYL_BLOOM_FPR
3878+
3879+
.. _configuration_reference_vinyl_cache:
3880+
3881+
.. confval:: vinyl.cache
3882+
3883+
The cache size for the vinyl storage engine. The cache can
3884+
be resized dynamically.
3885+
3886+
|
3887+
| Type: integer
3888+
| Default: 128 * 1024 * 1024
3889+
| Environment variable: TT_VINYL_CACHE
3890+
3891+
.. _configuration_reference_vinyl_defer_deletes:
3892+
3893+
.. confval:: vinyl.defer_deletes
3894+
3895+
Enable the deferred DELETE optimization in vinyl. It was disabled by default
3896+
since Tarantool version 2.10 to avoid possible performance degradation
3897+
of secondary index reads.
3898+
3899+
|
3900+
| Type: boolean
3901+
| Default: false
3902+
| Environment variable: TT_VINYL_DEFER_DELETES
3903+
3904+
.. _configuration_reference_vinyl_dir:
3905+
3906+
.. confval:: vinyl.dir
3907+
3908+
A directory where vinyl files or subdirectories will be stored.
3909+
3910+
This option may contain a relative file path.
3911+
In this case, it is interpreted as relative to
3912+
:ref:`process.work_dir <configuration_reference_process_work_dir>`.
3913+
3914+
|
3915+
| Type: string
3916+
| Default: 'var/lib/{{ instance_name }}'
3917+
| Environment variable: TT_VINYL_DIR
3918+
3919+
.. _configuration_reference_vinyl_max_tuple_size:
3920+
3921+
.. confval:: vinyl.max_tuple_size
3922+
3923+
The size of the largest allocation unit, for the vinyl storage engine.
3924+
It can be increased if it is necessary to store large tuples.
3925+
3926+
|
3927+
| Type: integer
3928+
| Default: 1024 * 1024
3929+
| Environment variable: TT_VINYL_MAX_TUPLE_SIZE
3930+
3931+
.. _configuration_reference_vinyl_memory:
3932+
3933+
.. confval:: vinyl.memory
3934+
3935+
The maximum number of in-memory bytes that vinyl uses.
3936+
3937+
|
3938+
| Type: integer
3939+
| Default: 128 * 1024 * 1024
3940+
| Environment variable: TT_VINYL_MEMORY
3941+
3942+
.. _configuration_reference_vinyl_page_size:
3943+
3944+
.. confval:: vinyl.page_size
3945+
3946+
The page size. A page is a read/write unit for vinyl disk operations.
3947+
The ``vinyl.page_size`` setting is a default value
3948+
for the :ref:`page_size <index_opts_page_size>`
3949+
option passed to ``space_object:create_index()``.
3950+
3951+
|
3952+
| Type: integer
3953+
| Default: 8 * 1024
3954+
| Environment variable: TT_VINYL_PAGE_SIZE
3955+
3956+
.. _configuration_reference_vinyl_range_size:
3957+
3958+
.. confval:: vinyl.range_size
3959+
3960+
The default maximum range size for a vinyl index, in bytes.
3961+
The maximum range size affects the decision of whether to
3962+
:ref:`split <engines-vinyl_split>` a range.
3963+
3964+
If ``vinyl.range_size`` is specified (but the value is not ``null`` or 0), then
3965+
it is used as the default value for the
3966+
:ref:`range_size <index_opts_range_size>`
3967+
option passed to ``space_object:create_index()``.
3968+
3969+
If ``vinyl.range_size`` is not specified (or is explicitly set to ``null`` or 0),
3970+
and ``range_size`` is not specified when the index is created,
3971+
then Tarantool sets a value later depending on performance considerations.
3972+
To see the actual value, use
3973+
:doc:`index_object:stat().range_size </reference/reference_lua/box_index/stat>`.
3974+
3975+
|
3976+
| Type: integer
3977+
| Default: box.NULL (means that an effective default is determined in runtime)
3978+
| Environment variable: TT_VINYL_RANGE_SIZE
3979+
3980+
.. _configuration_reference_vinyl_read_threads:
3981+
3982+
.. confval:: vinyl.read_threads
3983+
3984+
The maximum number of read threads that vinyl can use for
3985+
concurrent operations, such as I/O and compression.
3986+
3987+
|
3988+
| Type: integer
3989+
| Default: 1
3990+
| Environment variable: TT_VINYL_READ_THREADS
3991+
3992+
.. _configuration_reference_vinyl_run_count_per_level:
3993+
3994+
.. confval:: vinyl.run_count_per_level
3995+
3996+
The maximum number of runs per level in the vinyl LSM tree.
3997+
If this number is exceeded, a new level is created.
3998+
The ``vinyl.run_count_per_level`` setting is a default value for the
3999+
:ref:`run_count_per_level <index_opts_run_count_per_level>`
4000+
option passed to ``space_object:create_index()``.
4001+
4002+
|
4003+
| Type: integer
4004+
| Default: 2
4005+
| Environment variable: TT_VINYL_RUN_COUNT_PER_LEVEL
4006+
4007+
.. _configuration_reference_vinyl_run_size_ratio:
4008+
4009+
.. confval:: vinyl.run_size_ratio
4010+
4011+
The ratio between the sizes of different levels in the LSM tree.
4012+
The ``vinyl.run_size_ratio`` setting is a default value for the
4013+
:ref:`run_size_ratio <index_opts_run_size_ratio>`
4014+
option passed to ``space_object:create_index()``.
4015+
4016+
|
4017+
| Type: number
4018+
| Default: 3.5
4019+
| Environment variable: TT_VINYL_RUN_SIZE_RATIO
4020+
4021+
.. _configuration_reference_vinyl_timeout:
4022+
4023+
.. confval:: vinyl.timeout
4024+
4025+
The vinyl storage engine has a scheduler that performs compaction.
4026+
When vinyl is low on available memory, the compaction scheduler
4027+
may be unable to keep up with incoming update requests.
4028+
In that situation, queries may time out after ``vinyl.timeout`` seconds.
4029+
This should rarely occur, since normally vinyl
4030+
throttles inserts when it is running low on compaction bandwidth.
4031+
Compaction can also be initiated manually with
4032+
:doc:`/reference/reference_lua/box_index/compact`.
4033+
4034+
|
4035+
| Type: integer
4036+
| Default: 60
4037+
| Environment variable: TT_VINYL_TIMEOUT
4038+
4039+
.. _configuration_reference_vinyl_write_threads:
4040+
4041+
.. confval:: vinyl.write_threads
4042+
4043+
The maximum number of write threads that vinyl can use for some
4044+
concurrent operations, such as I/O and compression.
4045+
4046+
|
4047+
| Type: integer
4048+
| Default: 4
4049+
| Environment variable: TT_VINYL_WRITE_THREADS
4050+
38374051
.. _configuration_reference_wal:
38384052

38394053
wal

0 commit comments

Comments
 (0)