Python API Overview
krishiv Python package — PyO3 bindings for the Krishiv compute engine.
Installation
maturin develop --manifest-path crates/krishiv-python/Cargo.toml
import krishiv as ks
from krishiv import Session, DataFrame, Stream
from krishiv.functions import col, lit, sum, avg, count
from krishiv.sql import functions as sf # SQL helper functions
Package Layout
| Module | Contents |
|---|---|
krishiv | All public classes: Session, DataFrame, Stream, sinks, state, etc. |
krishiv.functions | Expression builder functions (col, lit, sum, avg, …) |
krishiv.sql.functions | SQL scalar functions (upper, lower, date_trunc, coalesce, …) |
Quick Start
import krishiv as ks
from krishiv.functions import col, lit, sum
# Embedded session (in-process, no daemon)
session = ks.Session.embedded()
# SQL
df = session.sql("SELECT customer_id, SUM(amount) AS total FROM orders GROUP BY customer_id")
df.show()
# DataFrame API
df2 = session.read_parquet("data/orders.parquet")
result = (df2
.filter(col("amount") > lit(100))
.group_by(["customer_id"])
.agg([sum(col("amount")).alias("total")])
.order_by(["total"], ascending=False)
.limit(10))
result.show()