Class AzureCloudConfig


  • public class AzureCloudConfig
    extends java.lang.Object
    The configs for cloud related configurations.
    • Field Detail

      • AZURE_STORAGE_CONNECTION_STRING

        public static final java.lang.String AZURE_STORAGE_CONNECTION_STRING
        See Also:
        Constant Field Values
      • COSMOS_COLLECTION_LINK

        public static final java.lang.String COSMOS_COLLECTION_LINK
        See Also:
        Constant Field Values
      • COSMOS_DELETED_CONTAINER_COLLECTION_LINK

        public static final java.lang.String COSMOS_DELETED_CONTAINER_COLLECTION_LINK
        See Also:
        Constant Field Values
      • COSMOS_DIRECT_HTTPS

        public static final java.lang.String COSMOS_DIRECT_HTTPS
        See Also:
        Constant Field Values
      • AZURE_STORAGE_AUTHORITY

        public static final java.lang.String AZURE_STORAGE_AUTHORITY
        See Also:
        Constant Field Values
      • AZURE_STORAGE_CLIENTID

        public static final java.lang.String AZURE_STORAGE_CLIENTID
        See Also:
        Constant Field Values
      • AZURE_STORAGE_SECRET

        public static final java.lang.String AZURE_STORAGE_SECRET
        See Also:
        Constant Field Values
      • AZURE_STORAGE_SCOPE

        public static final java.lang.String AZURE_STORAGE_SCOPE
        See Also:
        Constant Field Values
      • AZURE_STORAGE_ENDPOINT

        public static final java.lang.String AZURE_STORAGE_ENDPOINT
        See Also:
        Constant Field Values
      • COSMOS_QUERY_BATCH_SIZE

        public static final java.lang.String COSMOS_QUERY_BATCH_SIZE
        See Also:
        Constant Field Values
      • COSMOS_CONTAINER_DELETION_BATCH_SIZE

        public static final java.lang.String COSMOS_CONTAINER_DELETION_BATCH_SIZE
        See Also:
        Constant Field Values
      • COSMOS_REQUEST_CHARGE_THRESHOLD

        public static final java.lang.String COSMOS_REQUEST_CHARGE_THRESHOLD
        See Also:
        Constant Field Values
      • COSMOS_CONTINUATION_TOKEN_LIMIT_KB

        public static final java.lang.String COSMOS_CONTINUATION_TOKEN_LIMIT_KB
        See Also:
        Constant Field Values
      • AZURE_PURGE_BATCH_SIZE

        public static final java.lang.String AZURE_PURGE_BATCH_SIZE
        See Also:
        Constant Field Values
      • COSMOS_PURGE_BATCH_SIZE

        public static final java.lang.String COSMOS_PURGE_BATCH_SIZE
        See Also:
        Constant Field Values
      • AZURE_NAME_SCHEME_VERSION

        public static final java.lang.String AZURE_NAME_SCHEME_VERSION
        See Also:
        Constant Field Values
      • AZURE_BLOB_CONTAINER_STRATEGY

        public static final java.lang.String AZURE_BLOB_CONTAINER_STRATEGY
        See Also:
        Constant Field Values
      • AZURE_STORAGE_CLIENT_CLASS

        public static final java.lang.String AZURE_STORAGE_CLIENT_CLASS
        See Also:
        Constant Field Values
      • CONTAINER_COMPACTION_COSMOS_QUERY_LIMIT

        public static final java.lang.String CONTAINER_COMPACTION_COSMOS_QUERY_LIMIT
        See Also:
        Constant Field Values
      • CONTAINER_COMPACTION_ABS_PURGE_LIMIT

        public static final java.lang.String CONTAINER_COMPACTION_ABS_PURGE_LIMIT
        See Also:
        Constant Field Values
      • DEFAULT_PURGE_BATCH_SIZE

        public static final int DEFAULT_PURGE_BATCH_SIZE
        See Also:
        Constant Field Values
      • DEFAULT_QUERY_BATCH_SIZE

        public static final int DEFAULT_QUERY_BATCH_SIZE
        See Also:
        Constant Field Values
      • DEFAULT_COSMOS_CONTINUATION_TOKEN_LIMIT

        public static final int DEFAULT_COSMOS_CONTINUATION_TOKEN_LIMIT
        See Also:
        Constant Field Values
      • DEFAULT_COSMOS_REQUEST_CHARGE_THRESHOLD

        public static final int DEFAULT_COSMOS_REQUEST_CHARGE_THRESHOLD
        See Also:
        Constant Field Values
      • DEFAULT_COSMOS_CONTAINER_DELETION_BATCH_SIZE

        public static final int DEFAULT_COSMOS_CONTAINER_DELETION_BATCH_SIZE
        See Also:
        Constant Field Values
      • DEFAULT_CONTAINER_COMPACTION_COSMOS_QUERY_LIMIT

        public static final int DEFAULT_CONTAINER_COMPACTION_COSMOS_QUERY_LIMIT
        See Also:
        Constant Field Values
      • DEFAULT_CONTAINER_COMPACTION_ABS_PURGE_LIMIT

        public static final int DEFAULT_CONTAINER_COMPACTION_ABS_PURGE_LIMIT
        See Also:
        Constant Field Values
      • DEFAULT_NAME_SCHEME_VERSION

        public static final int DEFAULT_NAME_SCHEME_VERSION
        See Also:
        Constant Field Values
      • DEFAULT_CONTAINER_STRATEGY

        public static final java.lang.String DEFAULT_CONTAINER_STRATEGY
        See Also:
        Constant Field Values
      • DEFAULT_AZURE_STORAGE_CLIENT_CLASS

        public static final java.lang.String DEFAULT_AZURE_STORAGE_CLIENT_CLASS
        See Also:
        Constant Field Values
      • azureStorageConnectionString

        @Config("azure.storage.connection.string")
        @Default("")
        public final java.lang.String azureStorageConnectionString
        The Azure Blob Storage connection string.
      • cosmosEndpoint

        @Config("cosmos.endpoint")
        public final java.lang.String cosmosEndpoint
        The Cosmos DB endpoint.
      • cosmosCollectionLink

        @Config("cosmos.collection.link")
        public final java.lang.String cosmosCollectionLink
        The link (URL) for the Cosmos DB metadata collection.
      • cosmosDeletedContainerCollectionLink

        @Config("cosmos.deleted.container.collection.link")
        public final java.lang.String cosmosDeletedContainerCollectionLink
        The link (URL) for the Cosmos DB deleted container collection.
      • cosmosKey

        @Config("cosmos.key")
        public final java.lang.String cosmosKey
        The Cosmos DB connection key.
      • azurePurgeBatchSize

        @Config("azure.purge.batch.size")
        @Default("100")
        public final int azurePurgeBatchSize
      • cosmosPurgeBatchSize

        @Config("cosmos.purge.batch.size")
        public final int cosmosPurgeBatchSize
      • azureNameSchemeVersion

        @Config("azure.name.scheme.version")
        @Default("0")
        public final int azureNameSchemeVersion
      • azureBlobContainerStrategy

        @Config("azure.blob.container.strategy")
        @Default("Partition")
        public final java.lang.String azureBlobContainerStrategy
      • cosmosQueryBatchSize

        @Config("cosmos.query.batch.size")
        public final int cosmosQueryBatchSize
        Max number of metadata records to fetch in a single Cosmos query.
      • cosmosContainerDeletionBatchSize

        @Config("cosmos.container.deletion.batch.size")
        public final int cosmosContainerDeletionBatchSize
      • cosmosContinuationTokenLimitKb

        @Config("cosmos.continuation.token.limit.kb")
        public final int cosmosContinuationTokenLimitKb
        The size limit in KB on Cosmos continuation token.
      • cosmosRequestChargeThreshold

        @Config("cosmos.request.charge.threshold")
        public final int cosmosRequestChargeThreshold
        The Cosmos request charge threshold to log.
      • cosmosDirectHttps

        @Config("cosmos.direct.https")
        @Default("false")
        public final boolean cosmosDirectHttps
        Flag indicating whether to use DirectHttps CosmosDB connection mode. Provides better performance but may not work with all firewall settings.
      • azureStorageAuthority

        @Config("azure.storage.authority")
        @Default("")
        public final java.lang.String azureStorageAuthority
        Azure storage authority.
      • azureStorageClientId

        @Config("azure.storage.clientId")
        @Default("")
        public final java.lang.String azureStorageClientId
        Azure storage client id.
      • azureStorageSecret

        @Config("azure.storage.secret")
        @Default("")
        public final java.lang.String azureStorageSecret
        Azure storage client secret.
      • azureStorageScope

        @Config("azure.storage.scope")
        @Default("")
        public final java.lang.String azureStorageScope
      • azureStorageEndpoint

        @Config("azure.storage.endpoint")
        @Default("")
        public final java.lang.String azureStorageEndpoint
        Azure storage endpoint.
      • azureStorageClientClass

        @Config("azure.storage.client.class")
        public final java.lang.String azureStorageClientClass
        Factory class to instantiate azure storage client.
      • containerCompactionCosmosQueryLimit

        @Config("container.compaction.cosmos.query.limit")
        public int containerCompactionCosmosQueryLimit
      • containerCompactionAbsPurgeLimit

        @Config("container.compaction.abs.purge.limit")
        public int containerCompactionAbsPurgeLimit
        Number of blobs to purge from ABS in each container compaction purge request.
    • Constructor Detail

      • AzureCloudConfig

        public AzureCloudConfig​(com.github.ambry.config.VerifiableProperties verifiableProperties)