MarkLogic 9 Product Documentation
Database Merge Configuration Help
A
Database
is a collection of Forests.
A Forest
consists of Stands.
Each
Stand is
a set of XML fragments, and is implemented by a set of compressed
binary files contained within a sub-directory of the forest
directory.
The following are the configuration
options:
-
merge
priority specifies the CPU scheduler priority
at which merges should run.
The settings are:
-
normal
specifies the same CPU scheduler priority as for requests.
-
lower
specifies a lower CPU scheduler priority than for requests.
Merges always run with normal priority on forests with more than
16 stands.
-
merge max
size specifies the maximum size, in megabytes, of a stand
that will result from a merge. If a stand grows beyond the
specified size, it will not be merged. If two stands would be
larger than the specified size if merged, they will not be
merged together. If you set this to smaller sizes, large
merges (which may require more disk and CPU resources) will be
prevented. Set this to 0 to allow any sized stand
to merge. The default is 32768 (32G), which provides a good balance
between keeping the number of stands low and preventing merges from
needing large amounts of free disk space. Use care when setting this
to a non-zero value lower than the default value, however, as
this can prevent merges which are ultimately required for the
system to maintain performance levels and to allow optimized
updates to the system.
-
merge min
size specifies the minimum number of fragments that stands
can contain. Two or more Stands with fewer than this number of
fragments are automatically merged.
-
merge min
ratio specifies the minimum ratio between the number of stand
fragments. Stands with a fragment count below this ratio relative
to all smaller stands are automatically merged with the smaller
stands. Specify a positive integer for the merge min ratio.
-
merge
timestamp specifies the timestamp stored on merged stands.
This is used for point-in-time queries, and determines when space
occupied by deleted fragments and old versions of fragments may be
reclaimed by the database. If a fragment is deleted or updated at
a time after the merge timestamp, then the old version of the
fragment is retained for use in point-in-time queries. Set this
to 0 (the default) to let the system reclaim the maximum amount
of disk space during merge activities. A setting of 0 will remove
all deleted and updated fragments when a merge occurs. Set this
to 1 before loading or updating any content to create a complete
archive of the changes to the database over time. Set this to the
current timestamp (by clicking the
current timestamp button)
to preserve all versions of content from this point on.
Set this to a negative number to specify a window of
timestamp values, relative to the last merge, at ten million
ticks per second.
The timestamp is a number maintained by
MarkLogic Server that increments every time a change occurs
in any of the databases in a system (including configuration
changes from any host in a cluster). To set to the current
timestamp, click the current
timestamp
button; the timestamp is displayed in in red until you press OK
to activate the timestamp for future merges. For details on
point-in-time queries, see the Application Developer's Guide.
-
Merge blackout
periods allow you to specify times when merges are disabled.
To specify a merge blackout period, click the
Create tab and specify when you want the blackout to occur.
You can make it a recurring blackout period, or specify a one-time
blackout period. Use caution when setting large blackout periods
when there are significant updates occurring on the system; merges
are a normal part of the self-tuning mechanism of the database, and
disabling them completely or for long periods of time can cause
performance degradation.
Buttons and Tabs:
- Use the
Create
tab to create a new merge blackout period. You can create
recurring periods or a one-time blackout period.
- Use the
Configure tab to configure merge
parameters for this database.
Copyright © 2024 MarkLogic Corporation. MARKLOGIC is a
registered trademark of MarkLogic Corporation.