Skip to main content

IatroCache

IatroCache (.iac) is a lightweight, high-throughput binary cache format for multimodal medical datasets. It combines Arrow metadata with directly addressable payload bytes in one immutable file, supporting image tiles, feature vectors, clinical text, DICOM instances, and project-defined schemas.

The repository contains two public packages:

  • iatro-base-iac: the v2 container, native reader/writer, record packs, and codecs.
  • iatro-iac-adapters: reusable schemas for tiles, teacher features, clinical text, paired text, and patient-level DICOM.

Why IatroCache

  • Explicit record boundaries through metadata rather than stream scanning.
  • Owned batch reads and an explicit mmap-backed zero-copy API.
  • Variable-length records and fixed-width dense matrices in one format.
  • Arrow tables for searchable, schema-rich metadata.
  • Native checked addressing and I/O, with domain decoding kept in Python adapters and codecs.
  • Independent per-record compression for random access and data-loader concurrency.

Installation

Install the general container API:

pip install iatro-base-iac

Install the reusable medical-data schemas and matching core dependency:

pip install iatro-iac-adapters

Quick start

import pyarrow as pa

from iatro.iac import Codec, PackReader, build_pack

slides = pa.table({
    "slide_idx": pa.array([0], type=pa.uint8()),
    "slide_id": ["slide-001"],
    "patient_id": ["patient-001"],
})
items = pa.table({"item_id": ["a", "b"]})

build_pack(
    "example.iac",
    {"payload_type": "raw_bytes", "codec": Codec.NONE},
    slides,
    items,
    [b"first", b"second"],
)

reader = PackReader("example.iac")
try:
    payload = reader.read_payload(1)
    batch = reader.read_payloads([1, 0, 1])
    metadata = reader.index_table
finally:
    reader.close()

The writer adds offset, length, and crc32 columns for variable records. Batch reads preserve requested order and duplicates and return owned data. read_payload_views() is the separate, explicit zero-copy interface.

Documentation

The IatroCache Wiki covers:

Format at a glance

[ fixed 64 KiB header ] magic + version + JSON layout and schema fields
[ slide table         ] Arrow IPC stream
[ index table         ] Arrow IPC stream
[ data segment        ] variable payloads or a fixed-width matrix

The current package version is 0.1.1; the on-disk format version is 2. Those version domains evolve independently.

License

IatroCache is released under the MIT License.

Download files

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

Source Distribution

iatro_base_iac-0.1.1.tar.gz (77.5 kB view details)

Uploaded Source

Built Distribution

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

iatro_base_iac-0.1.1-cp39-abi3-macosx_11_0_arm64.whl (1.2 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

File details

Details for the file iatro_base_iac-0.1.1.tar.gz.

File metadata

  • Download URL: iatro_base_iac-0.1.1.tar.gz
  • Upload date:
  • Size: 77.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for iatro_base_iac-0.1.1.tar.gz
Algorithm Hash digest
SHA256 4ebb3e2dc13b3c340188189d02b4c583c8ba90cf47fcf935884879bf26fa7f8b
MD5 5c46efbf436378223dbb685fe24a3b2b
BLAKE2b-256 119025f73e185c4795d3b477cfe59cf5dc7e6f4eedb03a71447e42c8bd8dac29

See more details on using hashes here.

File details

Details for the file iatro_base_iac-0.1.1-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for iatro_base_iac-0.1.1-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 37fbeb017628d38a2a415a42ba9a0c9ba9eb9d4c3415441f93baa0fbd034c72b
MD5 d600281c23b81a9230249680c6fd619d
BLAKE2b-256 ca25e0b5d5cf3e266f61eeba0e1da26728bc3a147ca96685a24f9162184b7ee6

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.4

5 files

0.1.3

5 files

0.1.2

2 files

This release

0.1.1 This release

2 files

0.1.0

2 files

0.0.3

2 files

0.0.2

2 files

0.0.1

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