Class EmbeddedStorageConfigurationBuilder.Default
java.lang.Object
one.microstream.storage.embedded.configuration.types.EmbeddedStorageConfigurationBuilder.Default
- All Implemented Interfaces:
Configuration.Builder,EmbeddedStorageConfigurationBuilder,EmbeddedStorageConfigurationPropertyNames
- Enclosing interface:
- EmbeddedStorageConfigurationBuilder
public static class EmbeddedStorageConfigurationBuilder.Default extends Object implements EmbeddedStorageConfigurationBuilder, EmbeddedStorageConfigurationPropertyNames
-
Nested Class Summary
Nested classes/interfaces inherited from interface one.microstream.storage.embedded.configuration.types.EmbeddedStorageConfigurationBuilder
EmbeddedStorageConfigurationBuilder.Default -
Field Summary
Fields inherited from interface one.microstream.storage.embedded.configuration.types.EmbeddedStorageConfigurationPropertyNames
BACKUP_DIRECTORY, BACKUP_FILESYSTEM, CHANNEL_COUNT, CHANNEL_DIRECTORY_PREFIX, DATA_FILE_CLEANUP_HEAD_FILE, DATA_FILE_MAXIMUM_SIZE, DATA_FILE_MINIMUM_SIZE, DATA_FILE_MINIMUM_USE_RATIO, DATA_FILE_PREFIX, DATA_FILE_SUFFIX, DELETION_DIRECTORY, ENTITY_CACHE_THRESHOLD, ENTITY_CACHE_TIMEOUT, HOUSEKEEPING_INTERVAL, HOUSEKEEPING_TIME_BUDGET, LOCK_FILE_NAME, RESCUED_FILE_SUFFIX, STORAGE_DIRECTORY, STORAGE_FILESYSTEM, TRANSACTION_FILE_PREFIX, TRANSACTION_FILE_SUFFIX, TRUNCATION_DIRECTORY, TYPE_DICTIONARY_FILE_NAME -
Method Summary
Modifier and Type Method Description ConfigurationbuildConfiguration()Finishes the building and returns the resultingConfiguration.EmbeddedStorageConfigurationBuilderchild(String key)Creates a builder for a child configuration.EmbeddedStorageConfigurationBuilderset(String key, String value)Sets either a simple key-value pair (foo=bar) or an entry in a child-configuration (full.qualified.foo=bar).EmbeddedStorageConfigurationBuildersetAll(XGettingCollection<KeyValue<String,String>> properties)Sets many entries at once.EmbeddedStorageConfigurationBuildersetAll(KeyValue<String,String>... properties)Sets many entries at once.EmbeddedStorageConfigurationBuildersetBackupDirectory(String backupDirectory)The backup directory.EmbeddedStorageConfigurationBuildersetChannelCount(int channelCount)The number of threads and number of directories used by the storage engine.EmbeddedStorageConfigurationBuildersetChannelDirectoryPrefix(String channelDirectoryPrefix)Name prefix of the subdirectories used by the channel threads.EmbeddedStorageConfigurationBuildersetDataFileCleanupHeadFile(boolean dataFileCleanupHeadFile)A flag defining whether the current head file (the only file actively written to) shall be subjected to file cleanups as well.EmbeddedStorageConfigurationBuildersetDataFileMaximumSize(ByteSize dataFileMaximumSize)Maximum file size for a data file to avoid cleaning it up.EmbeddedStorageConfigurationBuildersetDataFileMinimumSize(ByteSize dataFileMinimumSize)Minimum file size for a data file to avoid cleaning it up.EmbeddedStorageConfigurationBuildersetDataFileMinimumUseRatio(double dataFileMinimumUseRatio)The ratio (value in ]0.0;1.0]) of non-gap data contained in a storage file to prevent the file from being dissolved.EmbeddedStorageConfigurationBuildersetDataFilePrefix(String dataFilePrefix)Name prefix of the storage files.EmbeddedStorageConfigurationBuildersetDataFileSuffix(String dataFileSuffix)Name suffix of the storage files.EmbeddedStorageConfigurationBuildersetDeletionDirectory(String deletionDirectory)The deletion directory.EmbeddedStorageConfigurationBuildersetEntityCacheThreshold(long entityCacheThreshold)Abstract threshold value for the lifetime of entities in the cache.EmbeddedStorageConfigurationBuildersetEntityCacheTimeout(Duration entityCacheTimeout)Timeout for the entity cache evaluator.EmbeddedStorageConfigurationBuildersetHousekeepingInterval(Duration houseKeepingInterval)Interval for the housekeeping.EmbeddedStorageConfigurationBuildersetHousekeepingTimeBudget(Duration housekeepingTimeBudget)Duration used for each housekeeping cycle.EmbeddedStorageConfigurationBuildersetLockFileName(String lockFileName)EmbeddedStorageConfigurationBuildersetRescuedFileSuffix(String rescuedFileSuffix)EmbeddedStorageConfigurationBuildersetStorageDirectory(String storageDirectory)The base directory of the storage in the file system.EmbeddedStorageConfigurationBuildersetTransactionFilePrefix(String transactionFilePrefix)Name prefix of the storage transaction file.EmbeddedStorageConfigurationBuildersetTransactionFileSuffix(String transactionFileSuffix)Name suffix of the storage transaction file.EmbeddedStorageConfigurationBuildersetTruncationDirectory(String truncationDirectory)The truncation directory.EmbeddedStorageConfigurationBuildersetTypeDictionaryFileName(String typeDictionaryFileName)The name of the dictionary file.EmbeddedStorageConfigurationBuildervalueMapperProvider(ConfigurationValueMapperProvider valueMapperProvider)Sets theConfigurationValueMapperProvider.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface one.microstream.configuration.types.Configuration.Builder
child, load, mapMethods inherited from interface one.microstream.storage.embedded.configuration.types.EmbeddedStorageConfigurationBuilder
createEmbeddedStorageFoundation, setBackupDirectoryInUserHome, setStorageDirectoryInUserHome
-
Method Details
-
valueMapperProvider
public EmbeddedStorageConfigurationBuilder valueMapperProvider(ConfigurationValueMapperProvider valueMapperProvider)Description copied from interface:Configuration.BuilderSets theConfigurationValueMapperProvider. Use this method to insert user-defined value mappers.- Specified by:
valueMapperProviderin interfaceConfiguration.Builder- Parameters:
valueMapperProvider- the new mapper provider- Returns:
- this builder
-
set
Description copied from interface:Configuration.BuilderSets either a simple key-value pair (foo=bar) or an entry in a child-configuration (full.qualified.foo=bar).- Specified by:
setin interfaceConfiguration.Builder- Parameters:
key- simple or full-qualified key, cannot be empty ornullvalue- the value to set, cannot benull- Returns:
- this builder
-
setAll
public EmbeddedStorageConfigurationBuilder setAll(XGettingCollection<KeyValue<String,String>> properties)Description copied from interface:Configuration.BuilderSets many entries at once.- Specified by:
setAllin interfaceConfiguration.Builder- Parameters:
properties- the key-value pairs- Returns:
- this builder
- See Also:
Configuration.Builder.set(String, String)
-
setAll
Description copied from interface:Configuration.BuilderSets many entries at once.- Specified by:
setAllin interfaceConfiguration.Builder- Parameters:
properties- the key-value pairs- Returns:
- this builder
- See Also:
Configuration.Builder.set(String, String)
-
child
Description copied from interface:Configuration.BuilderCreates a builder for a child configuration.- Specified by:
childin interfaceConfiguration.Builder- Parameters:
key- the key for the child configuration- Returns:
- a new builder
- See Also:
Configuration.Builder.child(String, Consumer)
-
buildConfiguration
Description copied from interface:Configuration.BuilderFinishes the building and returns the resultingConfiguration.- Specified by:
buildConfigurationin interfaceConfiguration.Builder- Returns:
- the
Configurationwith all values and child-configurations from this builder
-
setStorageDirectory
Description copied from interface:EmbeddedStorageConfigurationBuilderThe base directory of the storage in the file system.- Specified by:
setStorageDirectoryin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
storageDirectory- the storage directory- Returns:
- this
-
setDeletionDirectory
Description copied from interface:EmbeddedStorageConfigurationBuilderThe deletion directory.- Specified by:
setDeletionDirectoryin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
deletionDirectory- the deletion directory- Returns:
- this
-
setTruncationDirectory
Description copied from interface:EmbeddedStorageConfigurationBuilderThe truncation directory.- Specified by:
setTruncationDirectoryin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
truncationDirectory- the trunctation directory- Returns:
- this
-
setBackupDirectory
Description copied from interface:EmbeddedStorageConfigurationBuilderThe backup directory.- Specified by:
setBackupDirectoryin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
backupDirectory- the backup directory- Returns:
- this
-
setChannelCount
Description copied from interface:EmbeddedStorageConfigurationBuilderThe number of threads and number of directories used by the storage engine. Every thread has exclusive access to its directory. Default is1.- Specified by:
setChannelCountin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
channelCount- the new channel count, must be a power of 2- Returns:
- this
-
setChannelDirectoryPrefix
public EmbeddedStorageConfigurationBuilder setChannelDirectoryPrefix(String channelDirectoryPrefix)Description copied from interface:EmbeddedStorageConfigurationBuilderName prefix of the subdirectories used by the channel threads. Default is"channel_".- Specified by:
setChannelDirectoryPrefixin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
channelDirectoryPrefix- new prefix- Returns:
- this
-
setDataFilePrefix
Description copied from interface:EmbeddedStorageConfigurationBuilderName prefix of the storage files. Default is"channel_".- Specified by:
setDataFilePrefixin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
dataFilePrefix- new prefix- Returns:
- this
-
setDataFileSuffix
Description copied from interface:EmbeddedStorageConfigurationBuilderName suffix of the storage files. Default is".dat".- Specified by:
setDataFileSuffixin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
dataFileSuffix- new suffix- Returns:
- this
-
setTransactionFilePrefix
Description copied from interface:EmbeddedStorageConfigurationBuilderName prefix of the storage transaction file. Default is"transactions_".- Specified by:
setTransactionFilePrefixin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
transactionFilePrefix- new prefix- Returns:
- this
-
setTransactionFileSuffix
Description copied from interface:EmbeddedStorageConfigurationBuilderName suffix of the storage transaction file. Default is".sft".- Specified by:
setTransactionFileSuffixin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
transactionFileSuffix- new suffix- Returns:
- this
-
setTypeDictionaryFileName
public EmbeddedStorageConfigurationBuilder setTypeDictionaryFileName(String typeDictionaryFileName)Description copied from interface:EmbeddedStorageConfigurationBuilderThe name of the dictionary file. Default is"PersistenceTypeDictionary.ptd".- Specified by:
setTypeDictionaryFileNamein interfaceEmbeddedStorageConfigurationBuilder- Parameters:
typeDictionaryFileName- new name- Returns:
- this
-
setRescuedFileSuffix
- Specified by:
setRescuedFileSuffixin interfaceEmbeddedStorageConfigurationBuilder
-
setLockFileName
- Specified by:
setLockFileNamein interfaceEmbeddedStorageConfigurationBuilder
-
setHousekeepingInterval
Description copied from interface:EmbeddedStorageConfigurationBuilderInterval for the housekeeping. This is work like garbage collection or cache checking. In combination withEmbeddedStorageConfigurationBuilder.setHousekeepingTimeBudget(Duration)the maximum processor time for housekeeping work can be set. Default is one second.- Specified by:
setHousekeepingIntervalin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
houseKeepingInterval- the new interval- Returns:
- this
- See Also:
EmbeddedStorageConfigurationBuilder.setHousekeepingTimeBudget(Duration)
-
setHousekeepingTimeBudget
public EmbeddedStorageConfigurationBuilder setHousekeepingTimeBudget(Duration housekeepingTimeBudget)Description copied from interface:EmbeddedStorageConfigurationBuilderDuration used for each housekeeping cycle. However, no matter how low the number is, one item of work will always be completed. But if there is nothing to clean up, no processor time will be wasted. Default is 10 milliseconds = 0.01 seconds.- Specified by:
setHousekeepingTimeBudgetin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
housekeepingTimeBudget- the new time budget- Returns:
- this
- See Also:
EmbeddedStorageConfigurationBuilder.setHousekeepingInterval(Duration)
-
setEntityCacheThreshold
Description copied from interface:EmbeddedStorageConfigurationBuilderAbstract threshold value for the lifetime of entities in the cache. SeeStorageEntityCacheEvaluator.New(long, long). Default is1.000.000.000.- Specified by:
setEntityCacheThresholdin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
entityCacheThreshold- the new threshold- Returns:
- this
- See Also:
EmbeddedStorageConfigurationBuilder.setEntityCacheTimeout(Duration)
-
setEntityCacheTimeout
Description copied from interface:EmbeddedStorageConfigurationBuilderTimeout for the entity cache evaluator. If an entity wasn't accessed in this timespan it will be removed from the cache. Default is one day. SeeStorageEntityCacheEvaluator.New(long, long).- Specified by:
setEntityCacheTimeoutin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
entityCacheTimeout- the new timeout- Returns:
- this
- See Also:
Duration,EmbeddedStorageConfigurationBuilder.setEntityCacheThreshold(long)
-
setDataFileMinimumSize
Description copied from interface:EmbeddedStorageConfigurationBuilderMinimum file size for a data file to avoid cleaning it up. Default is 1 MiB.- Specified by:
setDataFileMinimumSizein interfaceEmbeddedStorageConfigurationBuilder- Parameters:
dataFileMinimumSize- the new minimum file size- Returns:
- this
- See Also:
EmbeddedStorageConfigurationBuilder.setDataFileMinimumUseRatio(double)
-
setDataFileMaximumSize
Description copied from interface:EmbeddedStorageConfigurationBuilderMaximum file size for a data file to avoid cleaning it up. Default is 8 MiB.- Specified by:
setDataFileMaximumSizein interfaceEmbeddedStorageConfigurationBuilder- Parameters:
dataFileMaximumSize- the new maximum file size- Returns:
- this
- See Also:
EmbeddedStorageConfigurationBuilder.setDataFileMinimumUseRatio(double)
-
setDataFileMinimumUseRatio
public EmbeddedStorageConfigurationBuilder setDataFileMinimumUseRatio(double dataFileMinimumUseRatio)Description copied from interface:EmbeddedStorageConfigurationBuilderThe ratio (value in ]0.0;1.0]) of non-gap data contained in a storage file to prevent the file from being dissolved. "Gap" data is anything that is not the latest version of an entity's data, including older versions of an entity and "comment" bytes (a sequence of bytes beginning with its length as a negative value length header).
The closer this value is to 1.0 (100%), the less disk space is occupied by storage files, but the more file dissolving (data transfers to new files) is required and vice versa.- Specified by:
setDataFileMinimumUseRatioin interfaceEmbeddedStorageConfigurationBuilder- Parameters:
dataFileMinimumUseRatio- the new minimum use ratio- Returns:
- this
-
setDataFileCleanupHeadFile
public EmbeddedStorageConfigurationBuilder setDataFileCleanupHeadFile(boolean dataFileCleanupHeadFile)Description copied from interface:EmbeddedStorageConfigurationBuilderA flag defining whether the current head file (the only file actively written to) shall be subjected to file cleanups as well.- Specified by:
setDataFileCleanupHeadFilein interfaceEmbeddedStorageConfigurationBuilder- Parameters:
dataFileCleanupHeadFile- the new clean head file- Returns:
- this
-