blobstore.azure

Type members

Classlikes

case
class AzureBlob(container: String, blob: String, properties: Option[BlobItemProperties], metadata: Map[String, String]) extends FsObject
Companion
object
object AzureBlob extends FsObjectLowPri
Companion
class
class AzureStore[F[_]](azure: BlobServiceAsyncClient, defaultFullMetadata: Boolean, defaultTrailingSlashFiles: Boolean, blockSize: Int, numBuffers: Int, queueSize: Int)(using evidence$1: Async[F]) extends Store[F, AzureBlob]
Value Params
azure

Azure Blob Service Async Client

blockSize

for upload, The block size is the size of each block that will be staged. This value also determines the number of requests that need to be made. If block size is large, upload will make fewer network calls, but each individual call will send more data and will therefore take longer. This parameter also determines the size that each buffer uses when buffering is required and consequently amount of memory consumed by such methods may be up to blockSize

  • numBuffers.
defaultFullMetadata

return full object metadata on list, requires additional request per object. Metadata returned by default: size, lastModified, eTag, storageClass. This controls behaviour of list method from Store trait. Use listUnderlying to control on per-invocation basis.

defaultTrailingSlashFiles

test if folders returned by list are files with trailing slashes in their names. This controls behaviour of list method from Store trait. Use listUnderlying to control on per-invocation basis.

numBuffers

for buffered upload only, the number of buffers is the maximum number of buffers this method should allocate. Memory will be allocated lazily as needed. Must be at least two. Typically, the larger the number of buffers, the more parallel, and thus faster, the upload portion of this operation will be. The amount of memory consumed by methods using this value may be up to blockSize * numBuffers.

Companion
object
object AzureStore
Companion
class