类 OffloadPoliciesImpl

java.lang.Object
org.apache.pulsar.common.policies.data.OffloadPoliciesImpl
所有已实现的接口:
Serializable, OffloadPolicies

public class OffloadPoliciesImpl extends Object implements Serializable, OffloadPolicies
Definition of the offload policies.
另请参阅:
  • 字段详细资料

    • CONFIGURATION_FIELDS

      public static final List<Field> CONFIGURATION_FIELDS
    • INTERNAL_SUPPORTED_DRIVER

      public static final com.google.common.collect.ImmutableList<String> INTERNAL_SUPPORTED_DRIVER
    • DRIVER_NAMES

      public static final com.google.common.collect.ImmutableList<String> DRIVER_NAMES
    • DEFAULT_MAX_BLOCK_SIZE_IN_BYTES

      public static final int DEFAULT_MAX_BLOCK_SIZE_IN_BYTES
      另请参阅:
    • DEFAULT_GCS_MAX_BLOCK_SIZE_IN_BYTES

      public static final int DEFAULT_GCS_MAX_BLOCK_SIZE_IN_BYTES
      另请参阅:
    • DEFAULT_READ_BUFFER_SIZE_IN_BYTES

      public static final int DEFAULT_READ_BUFFER_SIZE_IN_BYTES
      另请参阅:
    • DEFAULT_OFFLOAD_MAX_THREADS

      public static final int DEFAULT_OFFLOAD_MAX_THREADS
      另请参阅:
    • DEFAULT_OFFLOAD_MAX_PREFETCH_ROUNDS

      public static final int DEFAULT_OFFLOAD_MAX_PREFETCH_ROUNDS
      另请参阅:
    • DEFAULT_OFFLOADER_DIRECTORY

      public static final String DEFAULT_OFFLOADER_DIRECTORY
      另请参阅:
    • DEFAULT_OFFLOAD_THRESHOLD_IN_BYTES

      public static final Long DEFAULT_OFFLOAD_THRESHOLD_IN_BYTES
    • DEFAULT_OFFLOAD_THRESHOLD_IN_SECONDS

      public static final Long DEFAULT_OFFLOAD_THRESHOLD_IN_SECONDS
    • DEFAULT_OFFLOAD_DELETION_LAG_IN_MILLIS

      public static final Long DEFAULT_OFFLOAD_DELETION_LAG_IN_MILLIS
    • EXTRA_CONFIG_PREFIX

      public static final String EXTRA_CONFIG_PREFIX
      另请参阅:
    • OFFLOAD_THRESHOLD_NAME_IN_CONF_FILE

      public static final String OFFLOAD_THRESHOLD_NAME_IN_CONF_FILE
      另请参阅:
    • DELETION_LAG_NAME_IN_CONF_FILE

      public static final String DELETION_LAG_NAME_IN_CONF_FILE
      另请参阅:
    • DATA_READ_PRIORITY_NAME_IN_CONF_FILE

      public static final String DATA_READ_PRIORITY_NAME_IN_CONF_FILE
      另请参阅:
    • DEFAULT_OFFLOADED_READ_PRIORITY

      public static final OffloadedReadPriority DEFAULT_OFFLOADED_READ_PRIORITY
  • 构造器详细资料

    • OffloadPoliciesImpl

      public OffloadPoliciesImpl()
  • 方法详细资料

    • create

      public static OffloadPoliciesImpl create(String driver, String region, String bucket, String endpoint, String role, String roleSessionName, String credentialId, String credentialSecret, Integer maxBlockSizeInBytes, Integer readBufferSizeInBytes, Long offloadThresholdInBytes, Long offloadThresholdInSeconds, Long offloadDeletionLagInMillis, OffloadedReadPriority readPriority)
    • create

      public static OffloadPoliciesImpl create(Properties properties)
    • builder

    • compatibleWithBrokerConfigFile

      public void compatibleWithBrokerConfigFile(Properties properties)
    • driverSupported

      public boolean driverSupported()
    • getSupportedDriverNames

      public static String getSupportedDriverNames()
    • isS3Driver

      public boolean isS3Driver()
    • isGcsDriver

      public boolean isGcsDriver()
    • isFileSystemDriver

      public boolean isFileSystemDriver()
    • bucketValid

      public boolean bucketValid()
    • toProperties

      public Properties toProperties()
    • oldPoliciesCompatible

      public static OffloadPoliciesImpl oldPoliciesCompatible(OffloadPoliciesImpl nsLevelPolicies, Policies policies)
      This method is used to make a compatible with old policies.

      The filed Policies.offload_threshold is primitive, so it can't be known whether it had been set. In the old logic, if the field value is -1, it could be thought that the field had not been set.

      参数:
      nsLevelPolicies - namespace level offload policies
      policies - namespace policies
      返回:
      offload policies
    • mergeConfiguration

      public static OffloadPoliciesImpl mergeConfiguration(OffloadPoliciesImpl topicLevelPolicies, OffloadPoliciesImpl nsLevelPolicies, Properties brokerProperties)
      Merge different level offload policies.

      policies level priority: topic > namespace > broker

      参数:
      topicLevelPolicies - topic level offload policies
      nsLevelPolicies - namespace level offload policies
      brokerProperties - broker level offload configuration
      返回:
      offload policies