Skip to main content

arrakis-admin

Admin CLI for the Arrakis low-latency timeseries data distribution platform

ci coverage documentation pypi version


Administrative tooling for operating Arrakis deployments: manage the Kafka topics backing data partitions, probe data topics for debugging, and migrate server metadata caches.

Resources

Installation

With pip:

pip install arrakis-admin

Quickstart

Every command supports --help. Commands that modify the broker show what they will do and prompt for confirmation, and support --dry-run to preview changes without applying them.

Manage topics

Create Kafka topics for a publisher's data partitions, with partition assignments queried from the Arrakis server:

➜ arrakis-admin topics create H1-lldd -b kafka1:9092 -s grpc://arrakis:31206

topics to create (2):
  broker: kafka1:9092
  retention: 7d (604_800_000ms), replication factor: 1

  + arrakis-H1-lldd_float32
  + arrakis-H1-lldd_float64

metadata topic (compact, indefinite retention):
  + arrakis-metadata-H1-lldd

Is this ok [y/N]:

Partition assignments can instead be read from a publisher TOML config with --config, and replay-context publishers are supported via --replay-id.

Sync data topics against the channel metadata published on the broker, creating missing topics and removing stale ones:

➜ arrakis-admin topics sync -b kafka1:9092 --dry-run

Remove a publisher's topics (or all Arrakis topics with --all):

➜ arrakis-admin topics remove -b kafka1:9092 -p H1-lldd

Probe data topics

A debugging tool that consumes a partition's data topic directly from Kafka and unpacks each message's Arrow payload, reporting block times, per-channel content, and latencies:

➜ arrakis-admin probe -p H1-lldd_float64 -b kafka1:9092 -v
probing topic 'arrakis-H1-lldd_float64' on kafka1:9092 (Ctrl-C to stop)

offset=5231 time=1418063158.000000000 latency=0.412s transport=0.198s size=125.4kB channels=42 samples=131072
  [   0]  float64  16384 samples
  [   1]  float64  16384 samples
  ...

latency is the delay between the GPS block time and receipt; transport is the delay relative to the Kafka message timestamp, separating publisher lag from broker lag.

A channel name can be given instead of a partition ID, in which case its partition is resolved through the Arrakis server and the channel's rows are highlighted in the output:

➜ arrakis-admin probe -c H1:GDS-CALIB_STRAIN -s grpc://arrakis:31206 -b kafka1:9092

Migrate metadata caches

Convert an arrakis-server TOML metadata cache to SQLite, or upgrade an existing SQLite cache to the current schema:

➜ arrakis-admin cache migrate metadata.toml
migrated 12483 channels from metadata.toml to metadata.db

➜ arrakis-admin cache migrate metadata.db
upgraded metadata.db from schema v2 to v3

Clear all data from a cache while preserving its schema:

➜ arrakis-admin cache clear metadata.db

Download files

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

Source Distribution

arrakis_admin-0.2.0.tar.gz (44.6 kB view details)

Uploaded Source

Built Distribution

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

arrakis_admin-0.2.0-py3-none-any.whl (47.6 kB view details)

Uploaded Python 3

File details

Details for the file arrakis_admin-0.2.0.tar.gz.

File metadata

  • Download URL: arrakis_admin-0.2.0.tar.gz
  • Upload date:
  • Size: 44.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.16.5 cpython/3.13.12 HTTPX/0.28.1

File hashes

Hashes for arrakis_admin-0.2.0.tar.gz
Algorithm Hash digest
SHA256 e4fa6d1c9d8eb299302aa6ae1c6c5b53dd355d925a769c372ab26edb9e6289d9
MD5 1c6bf6024002304cd2ee1fc6f4ae1b24
BLAKE2b-256 55e8501fc893ddcc451b0382f859a49fb1a8fbee4d830618ec54fe8eeeb5b8da

See more details on using hashes here.

File details

Details for the file arrakis_admin-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: arrakis_admin-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 47.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.16.5 cpython/3.13.12 HTTPX/0.28.1

File hashes

Hashes for arrakis_admin-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7cd41950c2fb4395bff377618679329fd5388f520f879f03276be9a49a483bc4
MD5 468ae21eac3973dd7188cb0835d52a0c
BLAKE2b-256 e2881fa1a180cad42a4e0bc4f96901f093db0a8db1ed27f73fa5053cbafc038a

See more details on using hashes here.

Release history Release notifications | RSS feed

0.5.0

2 files

0.4.0

2 files

0.3.0

2 files

This release

0.2.0 This release

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page