CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/pypi-beanie

Asynchronous Python ODM for MongoDB with modern Pydantic-based document mapping

Pending

Quality

Pending

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

Overview
Eval results
Files

time-series.mddocs/

Time Series

MongoDB time series collection configuration with granularity control and TTL support.

Capabilities

TimeSeriesConfig

class TimeSeriesConfig(BaseModel):
    """Configuration for MongoDB time series collections."""
    time_field: str  # Field containing timestamp
    meta_field: Optional[str] = None  # Optional metadata field
    granularity: Optional[Granularity] = None  # Time granularity level
    expire_after_seconds: Optional[int] = None  # TTL for documents

Granularity

class Granularity(Enum):
    """Time series granularity options."""
    seconds = "seconds"
    minutes = "minutes"
    hours = "hours"

Usage Examples

from beanie import Document, TimeSeriesConfig, Granularity
from datetime import datetime

class SensorReading(Document):
    timestamp: datetime
    sensor_id: str
    temperature: float
    humidity: float
    
    class Settings:
        collection = "sensor_readings"
        timeseries = TimeSeriesConfig(
            time_field="timestamp",
            meta_field="sensor_id",
            granularity=Granularity.minutes,
            expire_after_seconds=86400  # 24 hours TTL
        )

# Insert time series data
reading = SensorReading(
    timestamp=datetime.utcnow(),
    sensor_id="sensor_001",
    temperature=23.5,
    humidity=45.2
)
await reading.insert()

Install with Tessl CLI

npx tessl i tessl/pypi-beanie

docs

bulk-operations.md

custom-types.md

documents.md

events-actions.md

fields-types.md

index.md

initialization.md

migrations.md

query-operations.md

time-series.md

tile.json