{"slug": "lance", "name": "Lance", "category": "databases", "category_name": "Databases", "description": "", "recommenders": 4, "commenters": 7, "warners": 1, "score": 3.117, "rising": -1.31, "first": "2025-11-19", "latest": "2026-08-26", "why": "Lance[1] (the format, not just LanceDB) is a great example", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 4, "neutral": 3, "compare": 1, "warn": 0}, "spark": [0, 0, 0, 2, 0, 0, 0, 1, 1, 0, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "Lance[1] (the format, not just LanceDB) is a great example", "kind": "", "icon": true, "domain": "lance.org", "github_repo": null, "official_url": "https://lance.org", "pricing": "", "aliases": ["Lance"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 785799185, "item_id": 49112449, "url": "https://news.ycombinator.com/item?id=49112449", "by": "westurner", "date": "2026-07-30", "stance": "recommend", "quote": "Lancedb/lance works with [Pandas, DuckDB, Polars, PyArrow,]", "excerpt": "Would there be an advantage to reusing SIMD-optimized libraries for this? Polars Rust is built on Arrow and packed_simd. pola-rs/polars: https://github.com/pola-rs/polars polars - Rust API docs: https://docs.pola.rs/api/rust/dev/polars/#simd lancedb's data format; Lancedb/lance works with [Pandas, DuckDB, Polars, PyArrow,]; https://github.com/lancedb/lance Narwhals' df interface (Python) https://narwhals-dev.github.i", "context": "", "use_case": "data format", "switched_from": "", "story": "Postgres rewritten in Rust v0.2, now faster than Postgres and ClickHouse"}, {"id": 778397057, "item_id": 48649816, "url": "https://news.ycombinator.com/item?id=48649816", "by": "aduffy", "date": "2026-06-23", "stance": "recommend", "quote": "Lance has some interesting ideas", "excerpt": "> Also, my main gripe with parquet (single table per file) is not even addressed, so, also the name is a bit hyped up. This is really more of an expectation that has been put on file formats by the query engines. Spark/Datafusion/DuckDB wouldn't really know what to do with a multi-table file. > Parquet is unfortunately very good just by virtue of being first, and so widely supported IMO that is not how technology wor", "context": "", "use_case": "", "switched_from": "", "story": "F3"}, {"id": 752339728, "item_id": 47021233, "url": "https://news.ycombinator.com/item?id=47021233", "by": "cpard", "date": "2026-02-14", "stance": "recommend", "quote": "Lance[1] (the format, not just LanceDB) is a great example", "excerpt": "It's important in a book treating an emerging field (data eng for LLMs) to mention emerging categories related to it such as storage formats purpose built for the full ML lifecycle. Lance[1] (the format, not just LanceDB) is a great example, where you have columnar storage optimized for both analytical operations and vector workloads together with built-in versioning for dataset iteration. Plus (very important) rando", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: Data Engineering Book \u2013 An open source, community-driven guide"}, {"id": 751923664, "item_id": 46995229, "url": "https://news.ycombinator.com/item?id=46995229", "by": "twic", "date": "2026-02-12", "stance": "recommend", "quote": "And now there's Lance! https://lance.org/", "excerpt": "And now there's Lance! https://lance.org/", "context": "", "use_case": "", "switched_from": "", "story": "Apache Arrow is 10 years old"}]}], "caveats": [{"label": "", "summary": "", "quotes": [{"id": 791175411, "item_id": 49448463, "url": "https://news.ycombinator.com/item?id=49448463", "by": "idontneedcoffee", "date": "2026-08-26", "stance": "warn", "quote": "to-be-removed lance", "excerpt": "I would be really grateful if someone could battle-test my frankendb in a full-fledged RAG setup(lmdb + roaring bitmaps + to-be-removed lance with a bitmap-based virtual fs-like tree on top of your data) outside of its original narrow use-case (index for user data + workflows) https://github.com/canvas-ui/canvas-synapsd", "context": "", "use_case": "", "switched_from": "", "story": "RAG Is Simpler Than You Think"}]}], "who": [], "tags": [], "use_cases": ["data format"], "compared": [{"slug": "vortex", "name": "Vortex", "co": 3, "switched_from": 0, "switched_to": 0}, {"slug": "lmdb", "name": "LMDB", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=49445727", "title": "RAG Is Simpler Than You Think", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=49351802", "title": "Hister \u2013 private, self hosted search engine", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=49111925", "title": "Postgres rewritten in Rust v0.2, now faster than Postgres and ClickHouse", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48647799", "title": "F3", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47512891", "title": "Show HN: DuckDB community extension for prefiltered HNSW using ACORN-1", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47008163", "title": "Show HN: Data Engineering Book \u2013 An open source, community-driven guide", "mentions": 1}], "sentiment_by_month": {"2025-11": {"compare": 1}, "2025-12": {}, "2026-01": {}, "2026-02": {"neutral": 1, "recommend": 2}, "2026-03": {"neutral": 1}, "2026-04": {}, "2026-05": {}, "2026-06": {"recommend": 1}, "2026-07": {"recommend": 1}, "2026-08": {"neutral": 1}, "2026-09": {}, "2026-10": {}}, "quotes": [{"id": 791175411, "item_id": 49448463, "url": "https://news.ycombinator.com/item?id=49448463", "by": "idontneedcoffee", "date": "2026-08-26", "stance": "warn", "quote": "to-be-removed lance", "excerpt": "I would be really grateful if someone could battle-test my frankendb in a full-fledged RAG setup(lmdb + roaring bitmaps + to-be-removed lance with a bitmap-based virtual fs-like tree on top of your data) outside of its original narrow use-case (index for user data + workflows) https://github.com/canvas-ui/canvas-synapsd", "context": "", "use_case": "", "switched_from": "", "story": "RAG Is Simpler Than You Think"}, {"id": 790502259, "item_id": 49406391, "url": "https://news.ycombinator.com/item?id=49406391", "by": "idontneedcoffee", "date": "2026-08-23", "stance": "neutral", "quote": "I'm hacking on a in-process DB on top of LMDB+Lance", "excerpt": "Thanks for your contribution to the Universe! :) I'm hacking on a in-process DB on top of LMDB+Lance(for now, hilbert space kung-fu with a custom matryoshka embedding setup with separate spatial + temporal + internal and content derived anchors will replace that ~last-century~ last-year tech) + roaring bitmaps as the primary indexing engine with the same or similar goal[0] and will definitely deep-dive into yours. I'", "context": "", "use_case": "", "switched_from": "", "story": "Hister \u2013 private, self hosted search engine"}, {"id": 785799185, "item_id": 49112449, "url": "https://news.ycombinator.com/item?id=49112449", "by": "westurner", "date": "2026-07-30", "stance": "recommend", "quote": "Lancedb/lance works with [Pandas, DuckDB, Polars, PyArrow,]", "excerpt": "Would there be an advantage to reusing SIMD-optimized libraries for this? Polars Rust is built on Arrow and packed_simd. pola-rs/polars: https://github.com/pola-rs/polars polars - Rust API docs: https://docs.pola.rs/api/rust/dev/polars/#simd lancedb's data format; Lancedb/lance works with [Pandas, DuckDB, Polars, PyArrow,]; https://github.com/lancedb/lance Narwhals' df interface (Python) https://narwhals-dev.github.i", "context": "", "use_case": "data format", "switched_from": "", "story": "Postgres rewritten in Rust v0.2, now faster than Postgres and ClickHouse"}, {"id": 778397057, "item_id": 48649816, "url": "https://news.ycombinator.com/item?id=48649816", "by": "aduffy", "date": "2026-06-23", "stance": "recommend", "quote": "Lance has some interesting ideas", "excerpt": "> Also, my main gripe with parquet (single table per file) is not even addressed, so, also the name is a bit hyped up. This is really more of an expectation that has been put on file formats by the query engines. Spark/Datafusion/DuckDB wouldn't really know what to do with a multi-table file. > Parquet is unfortunately very good just by virtue of being first, and so widely supported IMO that is not how technology wor", "context": "", "use_case": "", "switched_from": "", "story": "F3"}, {"id": 760254929, "item_id": 47515933, "url": "https://news.ycombinator.com/item?id=47515933", "by": "jarpineh", "date": "2026-03-25", "stance": "neutral", "quote": "there's now Lance data format support in DuckDB through their extension", "excerpt": "As an aside, there's now Lance data format support in DuckDB through their extension. It has Lance's vector search support available among other things: https://github.com/lance-format/lance-duckdb/tree/main?tab=readme-ov-file#hybrid-search-vector--fts I just noticed this, and your post, and haven't yet checked neither (sorry). I'm however doing some vector search benchmarking soon, with DuckDB's options alongside ot", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: DuckDB community extension for prefiltered HNSW using ACORN-1"}, {"id": 752339728, "item_id": 47021233, "url": "https://news.ycombinator.com/item?id=47021233", "by": "cpard", "date": "2026-02-14", "stance": "recommend", "quote": "Lance[1] (the format, not just LanceDB) is a great example", "excerpt": "It's important in a book treating an emerging field (data eng for LLMs) to mention emerging categories related to it such as storage formats purpose built for the full ML lifecycle. Lance[1] (the format, not just LanceDB) is a great example, where you have columnar storage optimized for both analytical operations and vector workloads together with built-in versioning for dataset iteration. Plus (very important) rando", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: Data Engineering Book \u2013 An open source, community-driven guide"}, {"id": 751923664, "item_id": 46995229, "url": "https://news.ycombinator.com/item?id=46995229", "by": "twic", "date": "2026-02-12", "stance": "recommend", "quote": "And now there's Lance! https://lance.org/", "excerpt": "And now there's Lance! https://lance.org/", "context": "", "use_case": "", "switched_from": "", "story": "Apache Arrow is 10 years old"}, {"id": 751793282, "item_id": 46987080, "url": "https://news.ycombinator.com/item?id=46987080", "by": "willtemperley", "date": "2026-02-12", "stance": "neutral", "quote": "The data types generally have a 1-1 correspondence with the Apache Arrow data types.", "excerpt": "It's interesting to look at the relationship between this and Apache Arrow. \"The data types generally have a 1-1 correspondence with the Apache Arrow data types.\" [1] So it would probably be relatively simple to set up an Arrow Flight endpoint working with LanceDB. [1] https://lance.org/format/table/#manifest", "context": "", "use_case": "", "switched_from": "", "story": "Lance table format explained with simple animations"}, {"id": 735803152, "item_id": 45987697, "url": "https://news.ycombinator.com/item?id=45987697", "by": "cpard", "date": "2025-11-19", "stance": "compare", "quote": "The Lance columnar format is one", "excerpt": "As others said, Vortex is complementary to the table Formats you mentioned. There are other formats though that it can be compared to. The Lance columnar format is one: https://github.com/lancedb/lancedb And Nimble from Meta is another: https://github.com/facebookincubator/nimble Parquet is so core to data infra and widespread, that removing it from its throne is a really really hard task. The people behind these pro", "context": "", "use_case": "", "switched_from": "", "story": "Vortex: An extensible, state of the art columnar file format"}]}