datachain-ai/datachain

The Context Layer for unstructured data: typed, versioned datasets over S3, GCS, Azure

What it solves

DataChain 解决了管理、查询和处理存储在云 bucket(S3、GCS、Azure)中的海量非结构化数据(如图片、视频、文档)的难题。它消除了将数据复制到数据库的需求,提供数据集版本化的方式,并允许在不将整个数据集加载到内存的情况下,以高速进行元数据查询和相似度搜索。

How it works

DataChain 充当“上下文层”,通过 Pydantic schema 将云存储索引为带类型的数据集。它由三个主要组件组成:

  1. Compute Engine:一个并行且分布式的 Python 引擎,对文件运行用户自定义函数(UDF),具备 async I/O、失败运行的 checkpoint 恢复,以及仅处理新文件的增量更新。
  2. Dataset DB:持久化存储(本地 SQLite),跟踪 schema、版本、文件指针和元数据。这使得在数百万记录上能够实现亚秒级的过滤、join 和向量相似度搜索。
  3. Knowledge Base:衍生的 markdown 摘要层,使数据集结构和血统对人类和 AI 代理都可读。

Who it’s for

它面向数据工程师和 AI 从业者,需要为非结构化数据构建弹性的数据管道,并希望将数据上下文直接集成到 AI 代理工作流中(例如使用 Claude Code、Cursor 或 GitHub Copilot)。

Highlights

  • Zero-copy indexing:数据保持在云存储中;仅管理元数据和指针。
  • Resilient pipelines:自动 checkpoint 让管道在崩溃后可从最后成功的批次恢复。
  • Warehouse-speed queries:向量和元数据过滤以向量化操作针对 Dataset DB 执行。
  • Agent Integration:包含一个“skill”,让 AI 代理能够理解数据 schema 并自动生成管道。
  • Incremental Processing:仅使用 delta=True 设置处理新增或变更的文件。