Skip to main content

Python client for Oxia, a scalable metadata store and coordination system

Project description

Oxia Python Client SDK

CI License

Python client for Oxia, a scalable metadata store and coordination system for large-scale distributed systems.

Getting Started | Documentation | Discussion

Requirements

  • Python 3.10+

Installation

pip install oxia

Quick start

import oxia

with oxia.Client('localhost:6648') as client:
    # Put a value
    key, version = client.put('/my-key', b'my-value')

    # Get it back
    key, value, version = client.get('/my-key')

    # Conditional put (only if version matches)
    key, version = client.put('/my-key', b'new-value',
                              expected_version_id=version.version_id())

    # List keys in a range
    keys = client.list('/my-', '/my-~')

    # Delete
    client.delete('/my-key')

Features

  • CRUD operations: put, get, delete, delete_range
  • Range queries: list (keys only), range_scan (keys + values)
  • Conditional writes: version-based optimistic concurrency via expected_version_id
  • Ephemeral records: session-scoped keys that are removed when the client disconnects
  • Notifications: subscribe to real-time change events
  • Sequential keys: server-assigned monotonic key suffixes
  • Secondary indexes: additional lookup keys on records
  • Partition routing: co-locate related records on the same shard via partition_key
  • Floor/Ceiling/Lower/Higher lookups: nearest-key queries

For the full API reference, see the documentation.

Contributing

Please star the project if you like it!

Feel free to open an issue or start a discussion. See CONTRIBUTING.md for development setup and guidelines.

License

Copyright 2025 The Oxia Authors

Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0

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

oxia-0.2.1.tar.gz (81.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

oxia-0.2.1-py3-none-any.whl (36.3 kB view details)

Uploaded Python 3

File details

Details for the file oxia-0.2.1.tar.gz.

File metadata

  • Download URL: oxia-0.2.1.tar.gz
  • Upload date:
  • Size: 81.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for oxia-0.2.1.tar.gz
Algorithm Hash digest
SHA256 77ec10ce4a96e129866feb000d84dc74a32af2e6512c5417c57c5ccdac8022ef
MD5 1f5778b13dd4f9cbe03a6c79fce3001b
BLAKE2b-256 9ff63c1d27466a69e69a953f76192d894644f57fc552744ea1ef723d01863925

See more details on using hashes here.

File details

Details for the file oxia-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: oxia-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 36.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for oxia-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 219ca7ecc506a902465bd57c28a012ee45d7eab70220ab35046384b9300908d6
MD5 89d23f7bec1d20062b37c00636fa09a3
BLAKE2b-256 73b4d8f0e76b6cef1abfceb9d645e6cefd27273173bbd059d5f819376db6b500

See more details on using hashes here.

Supported by

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