Class DataStorageConfiguration
Data storage configuration for Ignite page memory.
The page memory is a manageable off-heap based memory architecture that divides all expandable data regions into pages of fixed size. An individual page can store one or many cache key-value entries that allows reusing the memory in the most efficient way and avoid memory fragmentation issues.
By default, the page memory allocates a single expandable data region. All the caches that will be configured in an application will be mapped to this data region by default, thus, all the cache data will reside in that data region.
Inheritance
Namespace: Apache.Ignite.Core.Configuration
Assembly: Apache.Ignite.Core.dll
Syntax
public class DataStorageConfiguration : object
Constructors
DataStorageConfiguration()
Initializes a new instance of the DataStorageConfiguration class.
Declaration
public DataStorageConfiguration()
Fields
DefaultCheckpointFrequency
Default value for CheckpointFrequency.
Declaration
public static readonly TimeSpan DefaultCheckpointFrequency
Field Value
Type | Description |
---|---|
TimeSpan |
DefaultCheckpointThreads
Default value for CheckpointThreads.
Declaration
public const int DefaultCheckpointThreads = null
Field Value
Type | Description |
---|---|
System.Int32 |
DefaultCheckpointWriteOrder
Default value for CheckpointWriteOrder.
Declaration
public const CheckpointWriteOrder DefaultCheckpointWriteOrder = CheckpointWriteOrder.Sequential
Field Value
Type | Description |
---|---|
CheckpointWriteOrder |
DefaultConcurrencyLevel
The default concurrency level.
Declaration
public static readonly int DefaultConcurrencyLevel
Field Value
Type | Description |
---|---|
System.Int32 |
DefaultDataRegionName
Default name is assigned to default data region if no user-defined DefaultDataRegionConfiguration is specified.
Declaration
public const string DefaultDataRegionName = null
Field Value
Type | Description |
---|---|
System.String |
DefaultLockWaitTime
Default value for LockWaitTime.
Declaration
public static readonly TimeSpan DefaultLockWaitTime
Field Value
Type | Description |
---|---|
TimeSpan |
DefaultMaxWalArchiveSize
Default value for MaxWalArchiveSize.
Declaration
public const long DefaultMaxWalArchiveSize = null
Field Value
Type | Description |
---|---|
System.Int64 |
DefaultMetricsEnabled
Default value for MetricsEnabled.
Declaration
public const bool DefaultMetricsEnabled = null
Field Value
Type | Description |
---|---|
System.Boolean |
DefaultMetricsRateTimeInterval
The default rate time interval.
Declaration
public static readonly TimeSpan DefaultMetricsRateTimeInterval
Field Value
Type | Description |
---|---|
TimeSpan |
DefaultMetricsSubIntervalCount
The default sub intervals.
Declaration
public const int DefaultMetricsSubIntervalCount = null
Field Value
Type | Description |
---|---|
System.Int32 |
DefaultPageSize
The default page size.
Declaration
public const int DefaultPageSize = null
Field Value
Type | Description |
---|---|
System.Int32 |
DefaultSystemRegionInitialSize
Default size of a memory chunk reserved for system cache initially.
Declaration
public const long DefaultSystemRegionInitialSize = null
Field Value
Type | Description |
---|---|
System.Int64 |
DefaultSystemRegionMaxSize
Default max size of a memory chunk for the system cache.
Declaration
public const long DefaultSystemRegionMaxSize = null
Field Value
Type | Description |
---|---|
System.Int64 |
DefaultTlbSize
Default value for WalThreadLocalBufferSize.
Declaration
public const int DefaultTlbSize = null
Field Value
Type | Description |
---|---|
System.Int32 |
DefaultWalArchivePath
Default value for WalArchivePath.
Declaration
public const string DefaultWalArchivePath = null
Field Value
Type | Description |
---|---|
System.String |
DefaultWalAutoArchiveAfterInactivity
Default value for WalFlushFrequency.
Declaration
public static readonly TimeSpan DefaultWalAutoArchiveAfterInactivity
Field Value
Type | Description |
---|---|
TimeSpan |
DefaultWalCompactionEnabled
Default value for WalCompactionEnabled.
Declaration
public const bool DefaultWalCompactionEnabled = null
Field Value
Type | Description |
---|---|
System.Boolean |
DefaultWalFlushFrequency
Default value for WalFlushFrequency.
Declaration
public static readonly TimeSpan DefaultWalFlushFrequency
Field Value
Type | Description |
---|---|
TimeSpan |
DefaultWalFsyncDelayNanos
Default value for WalFsyncDelayNanos.
Declaration
public const long DefaultWalFsyncDelayNanos = null
Field Value
Type | Description |
---|---|
System.Int64 |
DefaultWalHistorySize
Default value for WalHistorySize.
Declaration
public const int DefaultWalHistorySize = null
Field Value
Type | Description |
---|---|
System.Int32 |
DefaultWalMode
Default value for WalMode.
Declaration
public const WalMode DefaultWalMode = WalMode.LogOnly
Field Value
Type | Description |
---|---|
WalMode |
DefaultWalPageCompression
Default value for WalPageCompression.
Declaration
public const DiskPageCompression DefaultWalPageCompression = DiskPageCompression.Disabled
Field Value
Type | Description |
---|---|
DiskPageCompression |
DefaultWalPath
Default value for WalPath.
Declaration
public const string DefaultWalPath = null
Field Value
Type | Description |
---|---|
System.String |
DefaultWalRecordIteratorBufferSize
Default value for WalRecordIteratorBufferSize.
Declaration
public const int DefaultWalRecordIteratorBufferSize = null
Field Value
Type | Description |
---|---|
System.Int32 |
DefaultWalSegments
Default value for WalSegments.
Declaration
public const int DefaultWalSegments = null
Field Value
Type | Description |
---|---|
System.Int32 |
DefaultWalSegmentSize
Default value for WalSegmentSize.
Declaration
public const int DefaultWalSegmentSize = null
Field Value
Type | Description |
---|---|
System.Int32 |
DefaultWriteThrottlingEnabled
Default value for WriteThrottlingEnabled.
Declaration
public const bool DefaultWriteThrottlingEnabled = null
Field Value
Type | Description |
---|---|
System.Boolean |
Properties
AlwaysWriteFullPages
Gets or sets a value indicating whether full pages should always be written.
Declaration
public bool AlwaysWriteFullPages { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
CheckpointFrequency
Gets or sets the checkpointing frequency which is a minimal interval when the dirty pages will be written to the Persistent Store.
Declaration
public TimeSpan CheckpointFrequency { get; set; }
Property Value
Type | Description |
---|---|
TimeSpan |
CheckpointReadLockTimeout
Gets or sets the timeout for checkpoint read lock acquisition.
Declaration
public TimeSpan? CheckpointReadLockTimeout { get; set; }
Property Value
Type | Description |
---|---|
System.Nullable<TimeSpan> |
CheckpointThreads
Gets or sets the number of threads for checkpointing.
Declaration
public int CheckpointThreads { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
CheckpointWriteOrder
Gets or sets the checkpoint page write order on disk.
Declaration
public CheckpointWriteOrder CheckpointWriteOrder { get; set; }
Property Value
Type | Description |
---|---|
CheckpointWriteOrder |
ConcurrencyLevel
Gets or sets the number of concurrent segments in Ignite internal page mapping tables.
Declaration
public int ConcurrencyLevel { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
DataRegionConfigurations
Gets or sets the data region configurations.
Declaration
public ICollection<DataRegionConfiguration> DataRegionConfigurations { get; set; }
Property Value
Type | Description |
---|---|
ICollection<DataRegionConfiguration> |
DefaultDataRegionConfiguration
Gets or sets the default region configuration.
Declaration
public DataRegionConfiguration DefaultDataRegionConfiguration { get; set; }
Property Value
Type | Description |
---|---|
DataRegionConfiguration |
LockWaitTime
Gets or sets the persistent manager file lock wait time.
Declaration
public TimeSpan LockWaitTime { get; set; }
Property Value
Type | Description |
---|---|
TimeSpan |
MaxWalArchiveSize
Gets or sets maximum size of wal archive folder, in bytes.
Declaration
public long MaxWalArchiveSize { get; set; }
Property Value
Type | Description |
---|---|
System.Int64 |
MetricsEnabled
Gets or sets a value indicating whether to enable data storage metrics. See GetDataStorageMetrics().
Declaration
public bool MetricsEnabled { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
MetricsRateTimeInterval
Gets or sets the length of the time interval for rate-based metrics. This interval defines a window over which hits will be tracked.
Declaration
public TimeSpan MetricsRateTimeInterval { get; set; }
Property Value
Type | Description |
---|---|
TimeSpan |
MetricsSubIntervalCount
Number of sub-intervals to split the MetricsRateTimeInterval into to track the update history.
Declaration
public int MetricsSubIntervalCount { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
PageSize
Gets or sets the size of the memory page.
Declaration
public int PageSize { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
StoragePath
Gets or sets the path where data and indexes will be persisted.
Declaration
public string StoragePath { get; set; }
Property Value
Type | Description |
---|---|
System.String |
SystemRegionInitialSize
Gets or sets the size of a memory chunk reserved for system needs.
Declaration
public long SystemRegionInitialSize { get; set; }
Property Value
Type | Description |
---|---|
System.Int64 |
SystemRegionMaxSize
Gets or sets the maximum memory region size reserved for system needs.
Declaration
public long SystemRegionMaxSize { get; set; }
Property Value
Type | Description |
---|---|
System.Int64 |
WalArchivePath
Gets or sets the path to the directory where WAL (Write Ahead Log) archive is stored. Every WAL segment will be fully copied to this directory before it can be reused for WAL purposes.
Declaration
public string WalArchivePath { get; set; }
Property Value
Type | Description |
---|---|
System.String |
WalAutoArchiveAfterInactivity
Gets or sets the inactivity time after which to run WAL segment auto archiving.
Declaration
public TimeSpan WalAutoArchiveAfterInactivity { get; set; }
Property Value
Type | Description |
---|---|
TimeSpan |
WalCompactionEnabled
Gets or sets flag indicating whether WAL compaction is enabled. If true, system filters and compresses WAL archive in background. Compressed WAL archive gets automatically decompressed on demand.
Declaration
public bool WalCompactionEnabled { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
WalFlushFrequency
Gets or sets the WAL (Write Ahead Log) flush frequency.
Declaration
public TimeSpan WalFlushFrequency { get; set; }
Property Value
Type | Description |
---|---|
TimeSpan |
WalFsyncDelayNanos
Gets or sets the WAL (Write Ahead Log) fsync (disk sync) delay, in nanoseconds
Declaration
public long WalFsyncDelayNanos { get; set; }
Property Value
Type | Description |
---|---|
System.Int64 |
WalHistorySize
Gets or sets the number of checkpoints to store in WAL (Write Ahead Log) history.
Declaration
public int WalHistorySize { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
WalMode
Gets or sets the WAL (Write Ahead Log) mode.
Declaration
public WalMode WalMode { get; set; }
Property Value
Type | Description |
---|---|
WalMode |
WalPageCompression
Gets or sets the compression algorithm for WAL page snapshot records.
Declaration
public DiskPageCompression WalPageCompression { get; set; }
Property Value
Type | Description |
---|---|
DiskPageCompression |
WalPageCompressionLevel
Gets or sets the compression level for WAL page snapshot records.
Declaration
public int? WalPageCompressionLevel { get; set; }
Property Value
Type | Description |
---|---|
System.Nullable<System.Int32> |
WalPath
Gets or sets the path to the directory where WAL (Write Ahead Log) is stored.
Declaration
public string WalPath { get; set; }
Property Value
Type | Description |
---|---|
System.String |
WalRecordIteratorBufferSize
Gets or sets the size of the WAL (Write Ahead Log) record iterator buffer, in bytes.
Declaration
public int WalRecordIteratorBufferSize { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
WalSegments
Gets or sets a number of WAL (Write Ahead Log) segments to work with. For performance reasons, the whole WAL is split into files of fixed length called segments.
Declaration
public int WalSegments { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
WalSegmentSize
Gets or sets the size of the WAL (Write Ahead Log) segment. For performance reasons, the whole WAL is split into files of fixed length called segments.
Declaration
public int WalSegmentSize { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
WalThreadLocalBufferSize
Gets or sets the size of the TLB (Thread-Local Buffer), in bytes.
Declaration
public int WalThreadLocalBufferSize { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
WriteThrottlingEnabled
Gets or sets a value indicating whether threads that generate dirty pages too fast during ongoing checkpoint will be throttled.
Declaration
public bool WriteThrottlingEnabled { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |