Database / LanceDB Interview questions
How does the Lance format differ from Parquet?
Both are open, columnar file formats, but they were optimized for different access patterns: Parquet was designed primarily for efficient large, sequential analytical scans, while Lance was designed to also support fast random access to individual rows, which matters much more for vector search and ML workloads.
| Parquet | Lance |
| Optimized for large sequential/analytical scans. | Optimized for both scans and fast random row access. |
| No native vector index support. | Native support for vector (ANN) indices. |
| Append-only friendly; updates typically require rewriting files. | Supports efficient in-place-style updates via versioning. |
| No built-in dataset versioning concept. | Built-in Git-like versioning is part of the format itself. |
In practice, fetching a single row (like one specific embedding by ID) out of a Parquet file can be inefficient because Parquet's internal layout favors reading whole column chunks; Lance's layout is specifically designed so that kind of point lookup, along with vector index lookups, stays fast even as the dataset grows large.
More Related questions...