lance: Store and Query Multimodal Lakehouse Data

Summary
Lance is a Rust-based lakehouse format and SDK for AI and machine-learning data. It combines columnar storage with random access, vector and full-text search, and dataset versioning for teams working with multimodal data.
At a glance
- Language
- Rust
- License
- Apache-2.0
- Stars
- 7.1k
- Forks
- 876
- Added to OSRepos
- November 1, 2025
- Last analyzed
- October 3, 2026
Topics
Click on any tag to explore related repositories
Use at your own risk
OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.
Overview
Lance is a file and table format, with a catalog specification, for storing and working with AI and analytics datasets on object storage. It targets a gap in conventional analytics formats: workloads that need efficient random access, multimodal records, and search capabilities alongside columnar scans.
The project includes a Rust core and SDK bindings, including Python. It may suit teams building data pipelines, feature stores, or search systems that want these capabilities within a lakehouse dataset rather than assembling separate storage and indexing systems.
Key Features
- Stores tabular data alongside multimodal content such as images, video, audio, text, and embeddings.
- Supports vector similarity search, BM25 full-text search, and SQL analytics on datasets.
- Provides random-access reads intended for sampling, exploration, and training workloads.
- Supports adding columns with backfilled values without rewriting the full table.
- Provides dataset versioning with ACID transactions, time travel, tags, and branches.
- Integrates with tools including Arrow, Pandas, Polars, DuckDB, Spark, and Ray.
- Offers Rust and Python implementations, with Java bindings also listed in the repository.
Use Cases
- ML platform teams can use Lance datasets as feature stores that combine vector retrieval with structured filters and analytics.
- Data engineers preparing large training datasets can use random access for sampling and can store embeddings or media alongside tabular fields.
- Search developers can build retrieval workflows over vector and text indexes without separating those indexes from the dataset.
- Analytics teams working with images, audio, or video can keep metadata and multimodal data in a shared dataset for exploration and querying.
Project Facts
- Language: Rust
- License: Apache-2.0
- Stars: 7.1k
- Forks: 876
- Topics: apache-arrow, computer-vision, data-analysis, data-analytics, data-centric, data-format, data-science, dataops, deep-learning, duckdb, embeddings, llms, machine-learning, mlops, python, rust
- Archived: No
Getting Started
Install the Python package:
pip install pylance
See the README for conversion, reading, and vector search examples, and the documentation for format and SDK details.
Considerations
- The project is in active development. SDK and API compatibility is separate from file-format compatibility, so check the migration guidance when upgrading.
- For production datasets, select a stable
data_storage_version. The README says thenextalias is unstable and intended only for experimentation. - Older Lance releases may not read storage versions introduced by newer releases. Mixed-version deployments should pin the storage version.
- Integrations and SDKs span several ecosystems, so confirm that the required language binding and integrations meet your deployment needs.
Source repository
Open the original repository on GitHub.
13 counted GitHub visits
Related repositories
Similar repositories that may be relevant next.

prime-agent: Run Self-Improving Agents for Coding Work
October 2, 2026
Prime Agent is a coding and research agent built for long-running tasks, using a persistent Python environment, recursive subagents, and durable working context. It suits developers and researchers who need agents to keep working across sessions.

SwarmLLM: Run Local and Distributed AI Models
October 2, 2026
SwarmLLM runs open AI models on your computer and can pool resources with other computers to run larger models. It also provides OpenAI- and Anthropic-compatible APIs for local apps and agents.

OpenCompany: Coordinate AI Agents to Run a One-Person Business
September 30, 2026
OpenCompany is a Rust-based host for configuring and running companies staffed by coordinated AI agents. It is aimed at solo operators who want to delegate business functions while retaining key decisions, and is explicitly not production-ready.

codeg: Coordinate AI Coding Agents in One Workspace
September 30, 2026
Codeg brings multiple AI coding agents into a shared workspace for conversations, code changes, and delegated tasks. It suits developers who want to compare or coordinate agents across desktop, self-hosted, and Docker setups.