Class: Google::Cloud::Memorystore::V1::PersistenceConfig

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/memorystore/v1/memorystore.rb

Overview

Represents persistence configuration for a instance.

Defined Under Namespace

Modules: PersistenceMode Classes: AOFConfig, RDBConfig

Instance Attribute Summary collapse

Instance Attribute Details

#aof_config::Google::Cloud::Memorystore::V1::PersistenceConfig::AOFConfig

Returns Optional. AOF configuration. This field will be ignored if mode is not AOF.

Returns:



954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
# File 'proto_docs/google/cloud/memorystore/v1/memorystore.rb', line 954

class PersistenceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for RDB based persistence.
  # @!attribute [rw] rdb_snapshot_period
  #   @return [::Google::Cloud::Memorystore::V1::PersistenceConfig::RDBConfig::SnapshotPeriod]
  #     Optional. Period between RDB snapshots.
  # @!attribute [rw] rdb_snapshot_start_time
  #   @return [::Google::Protobuf::Timestamp]
  #     Optional. Time that the first snapshot was/will be attempted, and to
  #     which future snapshots will be aligned. If not provided, the current time
  #     will be used.
  class RDBConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Possible snapshot periods.
    module SnapshotPeriod
      # Not set.
      SNAPSHOT_PERIOD_UNSPECIFIED = 0

      # One hour.
      ONE_HOUR = 1

      # Six hours.
      SIX_HOURS = 2

      # Twelve hours.
      TWELVE_HOURS = 3

      # Twenty four hours.
      TWENTY_FOUR_HOURS = 4
    end
  end

  # Configuration for AOF based persistence.
  # @!attribute [rw] append_fsync
  #   @return [::Google::Cloud::Memorystore::V1::PersistenceConfig::AOFConfig::AppendFsync]
  #     Optional. The fsync mode.
  class AOFConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Possible fsync modes.
    module AppendFsync
      # Not set. Default: EVERY_SEC
      APPEND_FSYNC_UNSPECIFIED = 0

      # Never fsync. Normally Linux will flush data every 30 seconds with this
      # configuration, but it's up to the kernel's exact tuning.
      NEVER = 1

      # Fsync every second. You may lose 1 second of data if there is a
      # disaster.
      EVERY_SEC = 2

      # Fsync every time new write commands are appended to the AOF. The best
      # data loss protection at the cost of performance.
      ALWAYS = 3
    end
  end

  # Possible persistence modes.
  module PersistenceMode
    # Not set.
    PERSISTENCE_MODE_UNSPECIFIED = 0

    # Persistence is disabled, and any snapshot data is deleted.
    DISABLED = 1

    # RDB based persistence is enabled.
    RDB = 2

    # AOF based persistence is enabled.
    AOF = 3
  end
end

#mode::Google::Cloud::Memorystore::V1::PersistenceConfig::PersistenceMode

Returns Optional. Current persistence mode.

Returns:



954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
# File 'proto_docs/google/cloud/memorystore/v1/memorystore.rb', line 954

class PersistenceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for RDB based persistence.
  # @!attribute [rw] rdb_snapshot_period
  #   @return [::Google::Cloud::Memorystore::V1::PersistenceConfig::RDBConfig::SnapshotPeriod]
  #     Optional. Period between RDB snapshots.
  # @!attribute [rw] rdb_snapshot_start_time
  #   @return [::Google::Protobuf::Timestamp]
  #     Optional. Time that the first snapshot was/will be attempted, and to
  #     which future snapshots will be aligned. If not provided, the current time
  #     will be used.
  class RDBConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Possible snapshot periods.
    module SnapshotPeriod
      # Not set.
      SNAPSHOT_PERIOD_UNSPECIFIED = 0

      # One hour.
      ONE_HOUR = 1

      # Six hours.
      SIX_HOURS = 2

      # Twelve hours.
      TWELVE_HOURS = 3

      # Twenty four hours.
      TWENTY_FOUR_HOURS = 4
    end
  end

  # Configuration for AOF based persistence.
  # @!attribute [rw] append_fsync
  #   @return [::Google::Cloud::Memorystore::V1::PersistenceConfig::AOFConfig::AppendFsync]
  #     Optional. The fsync mode.
  class AOFConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Possible fsync modes.
    module AppendFsync
      # Not set. Default: EVERY_SEC
      APPEND_FSYNC_UNSPECIFIED = 0

      # Never fsync. Normally Linux will flush data every 30 seconds with this
      # configuration, but it's up to the kernel's exact tuning.
      NEVER = 1

      # Fsync every second. You may lose 1 second of data if there is a
      # disaster.
      EVERY_SEC = 2

      # Fsync every time new write commands are appended to the AOF. The best
      # data loss protection at the cost of performance.
      ALWAYS = 3
    end
  end

  # Possible persistence modes.
  module PersistenceMode
    # Not set.
    PERSISTENCE_MODE_UNSPECIFIED = 0

    # Persistence is disabled, and any snapshot data is deleted.
    DISABLED = 1

    # RDB based persistence is enabled.
    RDB = 2

    # AOF based persistence is enabled.
    AOF = 3
  end
end

#rdb_config::Google::Cloud::Memorystore::V1::PersistenceConfig::RDBConfig

Returns Optional. RDB configuration. This field will be ignored if mode is not RDB.

Returns:



954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
# File 'proto_docs/google/cloud/memorystore/v1/memorystore.rb', line 954

class PersistenceConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Configuration for RDB based persistence.
  # @!attribute [rw] rdb_snapshot_period
  #   @return [::Google::Cloud::Memorystore::V1::PersistenceConfig::RDBConfig::SnapshotPeriod]
  #     Optional. Period between RDB snapshots.
  # @!attribute [rw] rdb_snapshot_start_time
  #   @return [::Google::Protobuf::Timestamp]
  #     Optional. Time that the first snapshot was/will be attempted, and to
  #     which future snapshots will be aligned. If not provided, the current time
  #     will be used.
  class RDBConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Possible snapshot periods.
    module SnapshotPeriod
      # Not set.
      SNAPSHOT_PERIOD_UNSPECIFIED = 0

      # One hour.
      ONE_HOUR = 1

      # Six hours.
      SIX_HOURS = 2

      # Twelve hours.
      TWELVE_HOURS = 3

      # Twenty four hours.
      TWENTY_FOUR_HOURS = 4
    end
  end

  # Configuration for AOF based persistence.
  # @!attribute [rw] append_fsync
  #   @return [::Google::Cloud::Memorystore::V1::PersistenceConfig::AOFConfig::AppendFsync]
  #     Optional. The fsync mode.
  class AOFConfig
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Possible fsync modes.
    module AppendFsync
      # Not set. Default: EVERY_SEC
      APPEND_FSYNC_UNSPECIFIED = 0

      # Never fsync. Normally Linux will flush data every 30 seconds with this
      # configuration, but it's up to the kernel's exact tuning.
      NEVER = 1

      # Fsync every second. You may lose 1 second of data if there is a
      # disaster.
      EVERY_SEC = 2

      # Fsync every time new write commands are appended to the AOF. The best
      # data loss protection at the cost of performance.
      ALWAYS = 3
    end
  end

  # Possible persistence modes.
  module PersistenceMode
    # Not set.
    PERSISTENCE_MODE_UNSPECIFIED = 0

    # Persistence is disabled, and any snapshot data is deleted.
    DISABLED = 1

    # RDB based persistence is enabled.
    RDB = 2

    # AOF based persistence is enabled.
    AOF = 3
  end
end