PACS System 0.1.0
PACS DICOM system library
Loading...
Searching...
No Matches
kcenon::pacs::storage::tier_policy Struct Reference

#include <hsm_types.h>

Collaboration diagram for kcenon::pacs::storage::tier_policy:
Collaboration graph

Public Member Functions

auto operator== (const tier_policy &other) const noexcept -> bool=default
 Check if two policies are equal.
 

Public Attributes

std::chrono::days hot_to_warm {30}
 Time threshold for migrating from hot to warm tier Default: 30 days.
 
std::chrono::days warm_to_cold {365}
 Time threshold for migrating from warm to cold tier Default: 365 days (1 year)
 
bool auto_migrate {true}
 Enable automatic background migration When false, migration must be triggered manually.
 
std::size_t min_migration_size {0}
 Minimum size in bytes for an instance to be considered for migration Smaller instances may not be worth the overhead of migration Default: 0 (no minimum)
 
std::size_t max_instances_per_cycle {100}
 Maximum number of instances to migrate per cycle Prevents overwhelming the storage system Default: 100.
 
std::size_t max_bytes_per_cycle {10ULL * 1024 * 1024 * 1024}
 Maximum bytes to migrate per cycle Default: 10 GB.
 

Detailed Description

Definition at line 102 of file hsm_types.h.

Member Function Documentation

◆ operator==()

auto kcenon::pacs::storage::tier_policy::operator== ( const tier_policy & other) const -> bool=default
nodiscarddefaultnoexcept

Member Data Documentation

◆ auto_migrate

bool kcenon::pacs::storage::tier_policy::auto_migrate {true}

Enable automatic background migration When false, migration must be triggered manually.

Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/storage/hsm_types.h.

Definition at line 113 of file hsm_types.h.

113{true};

◆ hot_to_warm

std::chrono::days kcenon::pacs::storage::tier_policy::hot_to_warm {30}

Time threshold for migrating from hot to warm tier Default: 30 days.

Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/storage/hsm_types.h.

Definition at line 105 of file hsm_types.h.

105{30};

◆ max_bytes_per_cycle

std::size_t kcenon::pacs::storage::tier_policy::max_bytes_per_cycle {10ULL * 1024 * 1024 * 1024}

Maximum bytes to migrate per cycle Default: 10 GB.

Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/storage/hsm_types.h.

Definition at line 127 of file hsm_types.h.

127{10ULL * 1024 * 1024 * 1024};

◆ max_instances_per_cycle

std::size_t kcenon::pacs::storage::tier_policy::max_instances_per_cycle {100}

Maximum number of instances to migrate per cycle Prevents overwhelming the storage system Default: 100.

Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/storage/hsm_types.h.

Definition at line 123 of file hsm_types.h.

123{100};

◆ min_migration_size

std::size_t kcenon::pacs::storage::tier_policy::min_migration_size {0}

Minimum size in bytes for an instance to be considered for migration Smaller instances may not be worth the overhead of migration Default: 0 (no minimum)

Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/storage/hsm_types.h.

Definition at line 118 of file hsm_types.h.

118{0};

◆ warm_to_cold

std::chrono::days kcenon::pacs::storage::tier_policy::warm_to_cold {365}

Time threshold for migrating from warm to cold tier Default: 365 days (1 year)

Examples
/home/runner/work/pacs_system/pacs_system/include/kcenon/pacs/storage/hsm_types.h.

Definition at line 109 of file hsm_types.h.

109{365};

The documentation for this struct was generated from the following file: