Jesse A. Green / notebook

Pathway Administrator & Developer Guide

Generated May 2026 from pathwaycom/pathway at f0afd65

AI-generated documentation. The library is checked by sampling (three repositories so far); this guide was not individually reviewed. Verify against the project before relying on it.

1. Architecture Overview

Pathway is a Python framework for building real-time data processing pipelines, powered by a high-performance Rust computation engine rooted in differential dataflow and timely dataflow paradigms. The system is a hybrid Python+Rust architecture bridged via PyO3, designed for streaming-first incremental computation.

Layered Architecture

Layer Location Role
Python API python/pathway/ User-facing SDK, connectors, schema system, LLM xpacks
Python Internals python/pathway/internals/ (56 files, 666K chars) Core Table, Schema, Expression, Join, and Run APIs
PyO3 Bridge src/python_api/ (17K chars) Rust↔Python interop via PyO3 0.25.0 (abi3-py310)
Rust Engine src/engine/ (515K chars, 18 files) Dataflow computation operators
Rust Connectors src/connectors/ (511K chars, 18 files) High-performance I/O
Rust Persistence src/persistence/ (117K chars, 8 files) State checkpointing and replay
External Integration src/external_integration/ (47K chars) Third-party service bindings
Vendorized Forks external/ differential-dataflow + timely-dataflow (modified)

Rust Crate Structure

src/
├── lib.rs               # Crate root — module declarations + jemalloc setup
├── async_runtime.rs     # Tokio runtime creation (rt-multi-thread)
├── deepcopy.rs          # S3Bucket deep copy utilities
├── env.rs               # Environment variable parsing
├── fs_helpers.rs        # Directory management
├── mat_mul.rs           # N-dimensional matrix multiplication (ndarray)
├── pipe.rs              # Named pipe support
├── retry.rs             # Retry logic with backoff
├── timestamp.rs         # Timestamp handling
├── connectors/
│   ├── mod.rs           # Connector orchestration
│   ├── data_lake/       # Delta Lake, Iceberg, Arrow integration
│   ├── scanner/         # File system scanning
│   ├── aws/             # S3, DynamoDB, Kinesis
│   └── metadata/        # Connector metadata
├── engine/
│   ├── dataflow/        # Differential/timely dataflow operators
│   │   └── operators/   # Individual operator implementations
│   └── telemetry/       # OpenTelemetry integration
├── persistence/
│   └── backends/        # Filesystem, S3 backends (5 files, 17K chars)
├── external_integration/
└── python_api/          # PyO3 bindings

Important

The computation engine uses vendorized forks of differential-dataflow and timely-dataflow (located in external/). These are not upstream crates — they contain Pathway-specific modifications. Do not replace them with upstream versions.

Python Package Structure

python/pathway/
├── __init__.py          # Main namespace exports
├── __main__.py          # Entry point → pathway.cli.main
├── cli.py               # Click CLI (spawn, replay, web_dashboard, airbyte)
├── _engine_finder.py    # MagicCargoFinder for dev builds
├── internals/           # Core API (Table, Schema, expressions, joins)
├── io/                  # 35+ connector modules
├── stdlib/              # Standard library (temporal, graphs, ML, stats)
├── xpacks/              # Extension packs (LLM/RAG, SharePoint)
├── persistence/         # State persistence Python API
├── demo/                # Demo stream generators
├── debug/               # Debug utilities
└── web_dashboard/       # Monitoring dashboard (frontend + backend)

Data Flow

Input Connectors → Python API (Table operations) → Rust Engine (differential dataflow) → Output Connectors
                                                         ↕
                                                   Persistence Layer

All table operations are compiled into a dataflow graph executed by the Rust engine. The engine processes data incrementally — only changes (diffs) propagate through the graph, making it efficient for streaming workloads.


2. System Requirements

Runtime Requirements

Requirement Minimum Recommended
Python 3.10+ (abi3-py310) 3.12+
OS Linux (primary), macOS Linux x86_64
Memory Depends on data volume jemalloc-managed
Disk For persistence backends SSD for checkpointing

Build Requirements (from source)

Requirement Version
Rust toolchain 1.93
Python 3.10+
CMake Required (for rdkafka ssl-vendored build)
C compiler Required (for native dependencies)

Installation

pip install -U pathway

Note

The pip package ships a pre-compiled Rust engine. Building from source requires the full Rust 1.93 toolchain and CMake for the rdkafka dependency (ssl-vendored, zstd, curl features).

Memory Allocator

Pathway uses jemalloc by default (via the jemallocator crate 0.5.4). This provides better performance for the allocation patterns in dataflow computation. To override:

  • Compile with the standard-allocator Cargo feature to use the system allocator instead.

3. Configuration Reference

Environment Variables

Core Runtime

Variable Purpose Values/Notes
PATHWAY_LICENSE_KEY License key for Scale/Enterprise features String; also settable via pw.set_license_key()
PATHWAY_PERSISTENCE_MODE Persistence mode Controls state checkpointing behavior
PATHWAY_REPLAY_MODE Replay mode For replaying recorded connector data
PATHWAY_SNAPSHOT_ACCESS Snapshot access mode record or replay
PATHWAY_MONITORING_HTTP_PORT HTTP port for monitoring endpoint Integer
PATHWAY_SKIP_START_LOG Suppress startup log output Boolean
PATHWAY_YOLO_RARE_WAKEUPS Reduce wakeup frequency Boolean; performance tuning
PATHWAY_THREADS Thread count Set automatically by pathway spawn
PATHWAY_PROCESSES Process count Set automatically by pathway spawn
PATHWAY_PROCESS_ID Current process ID Set automatically by pathway spawn
PATHWAY_FIRST_PORT First communication port Set automatically by pathway spawn
PATHWAY_ADDRESSES Address list for multi-machine mode Set automatically by pathway spawn
PATHWAY_RUN_ID Run identifier Set automatically by pathway spawn
PATHWAY_SUPPRESS_OTHER_WORKER_ERRORS Suppress sibling worker error output Boolean
PATHWAY_SPAWN_ARGS JSON args for spawn_from_env command JSON string

Build-time Variables

Variable Purpose
PATHWAY_PROFILE Cargo build profile (default: dev)
PATHWAY_QUIET Suppress cargo build output
PATHWAY_FEATURES Cargo features to enable

AWS/Cloud Credentials

Variable Purpose
AWS_S3_ACCESS_KEY S3 access key
AWS_S3_SECRET_ACCESS_KEY S3 secret key
AWS_PROFILE AWS profile name

Debugging

Variable Purpose
DIFFERENTIAL_LOG_ADDR Differential dataflow logging address

Licensing Configuration

import pathway as pw

# Set license key programmatically
pw.set_license_key("your-license-key-here")

# Or via environment variable
# export PATHWAY_LICENSE_KEY=your-license-key-here
Tier Features Enforcement
Community Basic features, limited workers Default
Scale Multi-machine, advanced features PATHWAY_LICENSE_KEY required
Enterprise Unlimited workers unlimited-workers compile feature

Entitlement checks are performed by _check_entitlements(). For example, the "multiple-machines" entitlement requires Scale tier or above.

Persistence Configuration

import pathway as pw

# Filesystem backend
persistence_config = pw.persistence.Config(
    backend=pw.persistence.Backend.filesystem(path="/data/checkpoints")
)

# S3 backend
persistence_config = pw.persistence.Config(
    backend=pw.persistence.Backend.s3(
        bucket="my-bucket",
        root_path="pathway-state/"
    )
)

YAML Pipeline Configuration

Pathway supports YAML-based pipeline definitions loaded via pw.load_yaml():

# Custom YAML tags supported:
# !pw.schema_from_types — define schemas inline
# !pw.io.kafka.read — Kafka source
# !pw.io.postgres.write — PostgreSQL sink
# !pw.persistence.Config — persistence configuration
# !pw.persistence.Backend.filesystem — filesystem backend

# Environment variable interpolation:
kafka_brokers: $KAFKA_BROKERS

Tip

YAML configurations support environment variable interpolation using $VAR_NAME syntax. This allows the same YAML file to work across environments without modification.

Monitoring Configuration

import pathway as pw

# Set monitoring level
pw.set_monitoring_config(level=pw.MonitoringLevel.ALL)

The monitoring HTTP endpoint is exposed on the port specified by PATHWAY_MONITORING_HTTP_PORT. The web dashboard runs separately on port 8088 via pathway web_dashboard.


4. Deployment & Scaling

Single-Process Deployment

# Basic execution
python my_pipeline.py

# With persistence
PATHWAY_PERSISTENCE_MODE=... python my_pipeline.py

Multi-Process/Thread Deployment via CLI

The pathway spawn command manages multi-process and multi-thread execution:

# Multi-threaded (single process, multiple threads)
pathway spawn --threads 4 python my_pipeline.py

# Multi-process
pathway spawn --processes 4 python my_pipeline.py

# Combined
pathway spawn --processes 2 --threads 4 python my_pipeline.py

Auto-Scaling Mechanism

The spawn system supports dynamic scaling via process exit codes:

Signal Exit Code Constant Effect
SIGUSR1 10 EXIT_CODE_DOWNSCALE Scale down workers
SIGUSR2 12 EXIT_CODE_UPSCALE Scale up workers

Scaling factors:

  • UPSCALING_FACTOR = 2.0 — doubles worker count on upscale signal
  • DOWNSCALING_FACTOR = 0.5 — halves worker count on downscale signal

Warning

The multi-machine feature (PATHWAY_ADDRESSES) requires a Scale or Enterprise license. The _check_entitlements() function enforces this at runtime. Community tier is limited to single-machine deployment.

Multi-Machine Deployment

For distributed execution across multiple hosts:

  1. Set PATHWAY_ADDRESSES to a list of all participating machine addresses
  2. Set PATHWAY_FIRST_PORT for inter-process communication
  3. Each machine gets a unique PATHWAY_PROCESS_ID
  4. Requires Scale license ("multiple-machines" entitlement)

The pathway spawn_from_env command reads configuration from PATHWAY_SPAWN_ARGS (JSON), useful in orchestrated/containerized deployments.

Cargo Build Profiles

Profile opt-level Debug Info Use Case
dev 3 line-tables-only Development (still optimized)
release 3 none Production
profiling 3 (inherits release) line-tables-only Performance analysis
debugging 3 (inherits dev) full Debugging with symbols

Note

The dev profile uses opt-level = 3 (full optimization), which is unusual. This means development builds are nearly as fast as release builds, but compile times are longer.

Cargo Features

Feature Effect
unlimited-workers Remove worker count limits
standard-allocator Use system allocator instead of jemalloc
yolo-id64 64-bit identifiers
yolo-id32 32-bit identifiers
enterprise Enables unlimited-workers

5. Operations

CLI Reference

Command Purpose
pathway spawn Multi-process/thread execution with auto-scaling
pathway replay Replay recorded connector data
pathway spawn_from_env Read spawn args from PATHWAY_SPAWN_ARGS env var
pathway web_dashboard Start monitoring UI (default port 8088)
pathway airbyte create_source Create Docker-based Airbyte connector source

Monitoring Stack

Pathway integrates with multiple observability systems:

OpenTelemetry (traces + metrics):

  • Uses OTLP/gRPC export
  • opentelemetry 0.30.0 with SDK
  • opentelemetry-otlp for export
  • Configured in src/engine/telemetry/

Prometheus:

  • prometheus-client 0.23.1 for metrics export
  • Exposes standard process and pipeline metrics

Web Dashboard:

  • Built-in monitoring UI at port 8088
  • Start with pathway web_dashboard
  • Frontend + backend in python/pathway/web_dashboard/

HTTP Monitoring Endpoint:

  • Configured via PATHWAY_MONITORING_HTTP_PORT
  • Provides runtime metrics and health information

Persistence Operations

The persistence system supports:

  • Recording: Capture connector data and state for replay
  • Replay: Re-execute pipelines from recorded state
  • Checkpointing: Periodic state snapshots for recovery
  • Backends: Filesystem (local disk) and S3

State is stored in configurable paths. The PATHWAY_SNAPSHOT_ACCESS variable controls whether the system is recording new snapshots or replaying existing ones.

Running Pipelines

import pathway as pw

# Define pipeline...

# Execute (blocking)
pw.run()

# Execute all registered pipelines
pw.run_all()

Tip

Use pw.run() for single-pipeline scripts. pw.run_all() executes all pipelines that have been constructed in the current process, useful when composing multiple independent dataflows.


6. Performance

Memory Management

  • Default allocator: jemalloc (via jemallocator 0.5.4)
  • jemalloc provides better fragmentation behavior for dataflow workloads
  • Override with standard-allocator feature if profiling shows jemalloc overhead

Engine Optimization

The Rust engine leverages:

  • Differential dataflow: Only processes changes (diffs), not full datasets
  • Timely dataflow: Parallel, pipelined execution of operators
  • Incremental computation: Maintains operator state; re-computes only affected outputs

Concurrency Model

  • Tokio (1.45.1, rt-multi-thread): Async runtime for I/O-bound connectors
  • Timely dataflow workers: CPU-bound computation threads
  • Separation: I/O connectors use async Tokio tasks; computation uses timely workers

Connector Performance

High-throughput connectors use native Rust implementations:

  • rdkafka 0.39.0 (librdkafka via cmake-build) for Kafka
  • Native S3, PostgreSQL, MongoDB clients
  • Bulk operations where supported (Elasticsearch bulk API, etc.)

Known Performance Issues

  • GitHub Issue #21: 1M row processing takes >10 minutes (open issue)

Caution

The PATHWAY_YOLO_RARE_WAKEUPS environment variable reduces wakeup frequency to lower CPU usage in idle periods, but may increase latency for processing new data. Only enable in scenarios where latency tolerance is high.


7. Security

TLS Configuration

The TLSSettings class (in python/pathway/internals/_io_helpers.py) provides comprehensive TLS configuration:

from pathway.internals._io_helpers import TLSSettings

tls = TLSSettings(
    mode="verify-full",         # disable|allow|prefer|require|verify-ca|verify-full
    root_cert_path="/certs/ca.pem",
    client_cert_path="/certs/client.pem",
    client_key_path="/certs/client.key",
    trust_certificates=True
)
TLS Mode Behavior
disable No TLS
allow TLS if server supports it
prefer Try TLS, fall back to plaintext
require TLS required, no certificate verification
verify-ca TLS required, verify CA signature
verify-full TLS required, verify CA + hostname

Schema Registry Authentication

The Schema Registry connector supports multiple auth methods:

  • Token-based authentication
  • Username/password (Basic auth)
  • Custom headers
  • HTTP proxy configuration

S3/Cloud Credentials

from pathway.internals._io_helpers import AwsS3Settings

s3 = AwsS3Settings(
    access_key="...",
    secret_access_key="...",
    session_token="...",           # Optional, for temporary credentials
    endpoint="...",                # Custom endpoint (MinIO, etc.)
    path_style=True               # Path-style access (for MinIO)
)

Warning

Never hardcode credentials in pipeline code. Use environment variables (AWS_S3_ACCESS_KEY, AWS_S3_SECRET_ACCESS_KEY, AWS_PROFILE) or instance roles for cloud deployments.

License Key Security

The PATHWAY_LICENSE_KEY grants access to Scale/Enterprise features. Treat it as a secret:

  • Set via environment variable, not in source code
  • The pw.set_license_key() API is for interactive/notebook use only

8. Developer Internals

PyO3 Bridge Architecture

The Python↔Rust bridge uses PyO3 0.25.0 with abi3-py310 (stable ABI from Python 3.10+):

  • Binding location: src/python_api/ (17K chars)
  • ABI stability: Single compiled extension works across Python 3.10, 3.11, 3.12, etc.
  • Dev builds: _engine_finder.py implements MagicCargoFinder to locate dev-built Rust libraries

Core Python Internals

Module Lines/Size Responsibility
internals/table.py Core Table class, groupby, select, filter, join entry points
internals/schema.py Core Schema class, SchemaProperties, type system
internals/expression.py Core ColumnExpression, ColumnReference, operator overloading
internals/joins.py Core Join implementations (inner, left, right, outer)
internals/run.py Core run(), run_all() — pipeline execution entry points
internals/api.py Core Engine bridge types (Python↔Rust interface)
internals/config.py Core License, persistence, monitoring config objects
internals/custom_reducers.py Core BaseCustomAccumulator for stateful aggregations
internals/interactive.py Core LiveTable, enable_interactive_mode for notebooks
internals/monitoring.py Core MonitoringLevel enum
internals/_io_helpers.py Core TLSSettings, AwsS3Settings, SchemaRegistrySettings

Design Patterns

Schema-First Design

All tables require explicit schemas:

import pathway as pw

class SensorReading(pw.Schema):
    sensor_id: str
    timestamp: int
    value: float
    metadata: dict

Schemas are Python classes inheriting from pw.Schema with typed attributes. The framework enforces type safety at the dataflow boundary.

Connector Subject/Observer Pattern

Connectors follow a unified read/write interface:

# Reading (subject — produces data)
table = pw.io.kafka.read(
    rdkafka_settings={"bootstrap.servers": "localhost:9092"},
    topic="input-topic",
    schema=SensorReading
)

# Writing (observer — consumes data)
pw.io.kafka.write(
    table,
    rdkafka_settings={"bootstrap.servers": "localhost:9092"},
    topic_name="output-topic"
)

UDF Decorator Pattern

@pw.udf
def normalize(value: float, max_val: float) -> float:
    return value / max_val if max_val != 0 else 0.0

# Used in table operations
result = table.select(normalized=normalize(pw.this.value, pw.this.max_value))

AsyncTransformer Pattern

For async operations (LLM calls, HTTP requests):

from pathway.stdlib.utils import AsyncTransformer

class LLMTransformer(AsyncTransformer):
    async def invoke(self, row):
        response = await call_llm(row.prompt)
        return {"result": response}

Custom Reducers

from pathway.internals.custom_reducers import BaseCustomAccumulator

class RunningMean(BaseCustomAccumulator):
    def __init__(self):
        self.sum = 0.0
        self.count = 0

    def update(self, value):
        self.sum += value
        self.count += 1

    def compute(self):
        return self.sum / self.count if self.count > 0 else 0.0

Rust Engine Internals

The engine (src/engine/, 515K chars) implements:

  • Dataflow operators: Map, filter, reduce, join, temporal operations
  • Operator fusion: Combines compatible operators for efficiency
  • Progress tracking: Timely dataflow frontier tracking for correctness
  • Worker coordination: Multi-worker synchronization via timely infrastructure

The src/engine/dataflow/operators/ directory contains individual operator implementations that map to Python API operations.

Vendorized External Dependencies

Located in external/:

  • differential-dataflow: Incremental computation framework (Pathway fork)
  • timely-dataflow: Parallel dataflow computation (Pathway fork with timely/ subpath)

These forks enable Pathway-specific optimizations and fixes that are not in upstream repositories.


9. Integration Points

Connector Inventory

Input Connectors (Python pw.io.*)

Connector Module Rust Backend
Kafka pw.io.kafka rdkafka 0.39.0
S3 pw.io.s3 rust-s3 0.34.0
Filesystem pw.io.fs Native
PostgreSQL pw.io.postgres postgres 0.19.10
MongoDB pw.io.mongodb mongodb 3.2.2
MySQL pw.io.mysql —
MSSQL pw.io.mssql tiberius 0.12
DynamoDB pw.io.dynamodb aws-sdk-dynamodb
Elasticsearch pw.io.elasticsearch elasticsearch 8.17.0-alpha.1
Kinesis pw.io.kinesis aws-sdk-kinesis
NATS pw.io.nats async-nats 0.41.0
MQTT pw.io.mqtt rumqttc 0.24.0
RabbitMQ pw.io.rabbitmq rabbitmq-stream-client 0.11.0
Google Drive pw.io.gdrive —
HTTP pw.io.http hyper 0.14
CSV pw.io.csv —
JSON Lines pw.io.jsonlines —
Plaintext pw.io.plaintext —
Python pw.io.python —
Airbyte pw.io.airbyte Docker-based
Debezium pw.io.debezium —
PubSub pw.io.pubsub —
Redpanda pw.io.redpanda —
MinIO pw.io.minio —
Iceberg pw.io.iceberg iceberg 0.8.0
Delta Lake pw.io.deltalake deltalake 0.31.1
BigQuery pw.io.bigquery —
SQLite pw.io.sqlite rusqlite 0.35.0
QuestDB pw.io.questdb —
Slack pw.io.slack —
PyFilesystem pw.io.pyfilesystem —
Null pw.io.null —
Milvus pw.io.milvus —
SharePoint pw.xpacks.connectors.sharepoint —

Output/Sink Connectors

Most input connectors have corresponding write methods. Notable Rust-backed sinks:

  • Kafka (rdkafka)
  • PostgreSQL (postgres + pg_walstream for WAL streaming)
  • Elasticsearch (bulk API)
  • S3/Delta Lake/Iceberg

Note

PostgreSQL WAL streaming (pg_walstream 0.6.1) enables CDC (Change Data Capture) from PostgreSQL without polling. This is the recommended input method for PostgreSQL sources with real-time requirements.

Vector Database Integration

Vector DB Rust Crate Python Module
Qdrant qdrant-client 1.15.0 via xpacks
pgvector pgvector 0.4.1 via postgres connector
Milvus — pw.io.milvus
uSearch (embedded) usearch 2.15.3 via stdlib indexing
  • Tantivy 0.22.1 — Embedded full-text search engine used for indexing operations within Pathway pipelines.

LLM/RAG Extension Pack

Located in python/pathway/xpacks/llm/:

Module Purpose
embedders.py Text embedding integration
splitters.py Document chunking strategies
vector_store.py VectorStoreServer — serves vector search over HTTP
parsers.py Document parsing (PDF, etc.)

This xpack enables building RAG (Retrieval-Augmented Generation) pipelines natively within Pathway's streaming framework.

Standard Library

Package Capabilities
pathway.stdlib.temporal Temporal joins, windowing (tumbling, sliding, session)
pathway.stdlib.statistical Interpolation
pathway.stdlib.graphs PageRank, Bellman-Ford, Louvain community detection
pathway.stdlib.ml Machine learning utilities
pathway.stdlib.indexing Index construction and querying
pathway.stdlib.utils AsyncTransformer, pandas_transformer, bucketing
pathway.stdlib.ordered Diff operations on ordered data
pathway.stdlib.stateful Stateful stream operations
pathway.stdlib.viz Visualization (plot, show)

Schema Registry Integration

Confluent Schema Registry support via schema_registry_converter 4.4.0:

from pathway.internals._io_helpers import SchemaRegistrySettings

registry = SchemaRegistrySettings(
    url="https://schema-registry:8081",
    # Auth options:
    token="...",
    # OR
    username="...",
    password="...",
    # OR
    custom_headers={"Authorization": "Bearer ..."},
    proxy="http://proxy:8080"
)

Testing Infrastructure

Test Type Location Scope
Unit tests python/pathway/tests/ Expressions, temporal, ML, CLI
Integration tests integration_tests/ Real DB/service connections
Rust tests tests/integration/main.rs Engine-level integration

Test Utilities (pathway.tests.utils):

  • assert_equal_tables — Compare table contents with index
  • assert_equal_tables_wo_index — Compare table contents ignoring index

Integration tests require running instances of:

  • PostgreSQL, MongoDB, MySQL, MSSQL
  • Kafka, NATS, RabbitMQ
  • S3/MinIO, DynamoDB (LocalStack)
  • Milvus, Elasticsearch

Important

Integration tests connect to real services. Ensure Docker containers or equivalent test infrastructure are running before executing the integration test suite. Fixtures in conftest.py manage connection parameters.

Open Feature Requests

Issue Request
#220 NeonDB support
#217 Azure Blob Storage support
#216 S3 write connector (pw.io.s3.write)
#215 Elasticsearch input via polling
#213 Spawn persistence compaction workers separately
#212 Native SQLite output connector
#211 Native MySQL input connector
#167 External vector DB indexing as connectors
#162 Disable/rename special fields in output connectors
#150 Composite instance support
#142 Execution graph checksums
#140 ClickHouse output connector

Tip

For production deployments requiring features listed above, check the GitHub issue tracker for current status. Several of these (SQLite output, MySQL input) have partial implementations in the codebase that may be usable with custom wrappers.


Appendix: Complete Rust Dependency Map

Core Computation

Crate Version Role
differential-dataflow vendorized Incremental computation
timely vendorized Parallel dataflow execution
ndarray 0.15.6 N-dimensional arrays (matrix operations)

Python Interop

Crate Version Role
pyo3 0.25.0 Python bindings (abi3-py310)

Async/Networking

Crate Version Role
tokio 1.45.1 Async runtime (rt-multi-thread)
hyper 0.14 HTTP server

Data Sources/Sinks

Crate Version Role
rdkafka 0.39.0 Kafka (ssl-vendored, cmake-build, zstd, curl)
postgres 0.19.10 PostgreSQL
pg_walstream 0.6.1 PostgreSQL WAL streaming (CDC)
pgvector 0.4.1 PostgreSQL vector extension
mongodb 3.2.2 MongoDB
tiberius 0.12 MSSQL
elasticsearch 8.17.0-alpha.1 Elasticsearch
rusqlite 0.35.0 SQLite (bundled)
rust-s3 0.34.0 S3
deltalake 0.31.1 Delta Lake (with datafusion, s3)
iceberg 0.8.0 Apache Iceberg
aws-sdk-dynamodb — DynamoDB
aws-sdk-kinesis — Kinesis
async-nats 0.41.0 NATS
rumqttc 0.24.0 MQTT
rabbitmq-stream-client 0.11.0 RabbitMQ
qdrant-client 1.15.0 Qdrant vector DB

Search/Indexing

Crate Version Role
tantivy 0.22.1 Full-text search
usearch 2.15.3 Vector similarity search

Observability

Crate Version Role
opentelemetry 0.30.0 Traces + metrics
prometheus-client 0.23.1 Metrics export

Data Formats

Crate Version Role
schema_registry_converter 4.4.0 Confluent Schema Registry

Memory

Crate Version Role
jemallocator 0.5.4 Memory allocator (default)

Appendix: Project Metadata

Property Value
Version 0.30.1 (Rust crate)
License BUSL-1.1 (Business Source License)
Repository size 1,891 files, 3.76M characters
Primary languages Python + Rust
Source commit f0afd65