Skip to main content

KV API implementation on Azure Blob Storage

Project description

Key-Value: Azure Blob

Implementation of the KV[T] async Key-Value ABC, over Azure Blob Storage

(kv-api)

pip install kv-azure-blob

Usage

Raw

from azure.storage.blob.aio import BlobServiceClient
from kv.azure.blob import BlobKV

bsc: BlobServiceClient = ...
kv = BlobKV[bytes](bsc)
await kv.insert('img1', b'...')
await kv.read('img2')
await kv.keys()
# etc.

Pydantic-validated

from dataclasses import dataclass

@dataclass
class User:
  username: str
  email: str

cc: ContainerClient = ...
kv = BlobKV.validated(User, cc)
await kv.insert('user1', User(username='user1', email='...'))
# etc.

Containers

By default, keys are split across containers:

  • 'users/path/to/user.txt' goes to container users
  • 'admins/path/to/admin.txt' goes to container admins

You can customize this behavior by passing a def split_key(key: str) -> tuple[str, str] function.

  • E.g. using split_key=lambda key: ('container', key) will always store in 'container'

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kv_azure_blob-0.1.4.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

kv_azure_blob-0.1.4-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

File details

Details for the file kv_azure_blob-0.1.4.tar.gz.

File metadata

  • Download URL: kv_azure_blob-0.1.4.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.6

File hashes

Hashes for kv_azure_blob-0.1.4.tar.gz
Algorithm Hash digest
SHA256 2fe1ae9c11e1efdfb9fbc07a12239c8ac2fa5d40451b68db1af16a3399bc12a5
MD5 9f394c06b746a98120654c0828307bd3
BLAKE2b-256 7df4f7774c59d21f8a9639d9ffaa6c3ac6b032b153aaa47c26017ddeabfd0893

See more details on using hashes here.

File details

Details for the file kv_azure_blob-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: kv_azure_blob-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 5.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.6

File hashes

Hashes for kv_azure_blob-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 c02d8f598b95108d7621c9eef4c0e32c13310edd8b471d8941eaf80c57cab6f7
MD5 137584f70545d63f9e25c03c5e573473
BLAKE2b-256 01cb47cb986c0400081cdda43b7458291e7c620fbaf1c835e3f09f682ef4b4cd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page