# Flink Connector Lance

An Apache Flink connector for the Lance columnar data format that provides source and sink support, Flink SQL and Table API integration, KNN vector search, and index building for Lance vector datasets.

flink-connector-lance is a high-performance Apache Flink connector for Lance, a columnar data format built for machine learning workloads and vector search, integrating Flink's stream and batch processing with Lance's vector storage.

It provides full read and write support for Lance datasets through both the DataStream API and native Flink SQL DDL and DML, KNN vector search with L2, cosine and dot-product metrics, IVF_PQ, IVF_HNSW and IVF_FLAT index building, checkpoint-based exactly-once semantics, predicate pushdown for optimized reads, and a Lance catalog for metadata management.

Built with Java, distributed as a Maven dependency; requires Java 8 or higher and Apache Flink 1.16.x. Apache-2.0 licensed.

Website: https://github.com/lance-format/lance-flink
