@BEBischof Every time I get new glasses I think everything is a little clearer and my vision must've gotten worse but it's been decades and it hasn't really changed.
So I think my glasses are just always dirty except for that 2 week window when they are new.
@HoytEmerson@tech_optimist@jezell So if my query pattern changes (for example, I'm doing a lot of find-by-id queries) and suddenly I want fine-grained zone maps, then I don't want to have to rewrite all my data files. I just want to retrain my index with a smaller zone size.
@HoytEmerson@tech_optimist@jezell We don't index in the file. We index at the table level. Here is a pretty good example of some scholarly reasoning (https://t.co/lmQC5mZEh8). For us it's because we really want to avoid rewrites to data files unless data actually changes.
๐๐ผ๐บ๐ฏ๐ถ๐ป๐ถ๐ป๐ด ๐ฎ ๐๐ฐ๐ต๐ฒ๐ฑ๐๐น๐ฒ๐ฟ ๐ฟ๐ฒ๐๐ผ๐ฟ๐ธ ๐๐ถ๐๐ต ๐ถ๐ผ_๐๐ฟ๐ถ๐ป๐ด, ๐๐ฒ ๐๐ฒ๐ฟ๐ฒ ๐ฎ๐ฏ๐น๐ฒ ๐๐ผ ๐ฎ๐ฐ๐ต๐ถ๐ฒ๐๐ฒ ๐ญ,๐ฑ๐ฌ๐ฌ,๐ฌ๐ฌ๐ฌ ๐๐ข๐ฃ๐ฆ ๐๐ถ๐๐ต ๐๐ฎ๐ป๐ฐ๐ฒ
In this blog, Weston Pace deep dives into benchmarking improvements weโve made in Lance, and how we aim to achieve 1 million IOPS in real systems.
@techalexpr Maybe a boring answer but we focus on what our users & customers need. We want to know what's out there but don't spend too much time integrating it until there is a user asking for it with a legitimate use case.
Lot's of work being done on file formats lately. I think I count 5 new formats (Lance, Nimble, Vortex, FastLanes, F3) now.
It's definitely something we follow at LanceDB and it can be confusing to track. So here is my very biased head-canon (positivity edition!)
F3 is from a joint project between CMU and Tsinghua University. They have tackled the "forwards compatibility" problem by storing WASM decoders with the data so that old readers can read data written by futuristic writers.
LanceDB's own @xuanwo will be speaking at Rust China Conference 2025 onย September 14, 2:00โ2:30 PM: https://t.co/5EFWNXeAsg
His session will dive into one of the biggest challenges in the deep learning era: making sense ofย multimodal data and embedding vectors at scale.
@xuanwo will highlight:
โ How AI systems need bothย lakehouse-level governanceย andย millisecond-level semantic retrieval
โ Lanceโs approach toย unified heterogeneous data storage,ย efficient vector indexing, andย incremental write consistency
โ How itsย Rust kernelย enables millisecond-level random reads and writes on object storage throughย column clustering + embedded ANN indexing, MVCC, and adaptive compaction
If youโre building next-generation AI systems, this is a session you wonโt want to miss. ๐
@baggiponte@YingjunWu@lancedb Lance is columnar atm but packed struct lets you group one or more columns to pack as rows. Still need someone to add support for packed structs of variable width columns and then we can go full row mode.
@mgill25 A new file format will replace Parquet one day after Parquet replaces CSV.
80% of Parquet use cases work just fine with Parquet. The spots that don't (e.g. db storage format) have already replaced Parquet (DuckDb, Databricks, Snowflake, BigQuery etc.)
๐๐ฎ๐ป๐ฐ๐ฒ ๐๐ฒ๐ฒ๐ฝ ๐๐ถ๐๐ฒ: ๐ฅ๐ฒ๐ฝ๐ฒ๐๐ถ๐๐ถ๐ผ๐ป ๐ฎ๐ป๐ฑ ๐๐ฒ๐ณ๐ถ๐ป๐ถ๐๐ถ๐ผ๐ป ๐๐ฒ๐๐ฒ๐น๐
When youโre scanning large datasets, especially if youโre training ML models or running analytics, you need smaller file sizes and faster reads.
When your data includes things like lists, optional fields, or nested objects, columnar formats need a way to store that complexity in a clean and efficient way.
Why build a new table format for ML? ๐ค Here's the thoughts and design of Lance's format in the new blog by @westoncpace, give it a read and see how Lance Table Format solves challenges that existing formats miss โ from wide data to efficient indexing. https://t.co/h1K91KJzOH
@iavins Columnar storage makes fewer, larger requests. Syscall overhead is trivial. We're getting close to needing it at LanceDB though where we're trying to marry columnar storage with random access. Syscall overhead still isn't the bottleneck yet.
Process terabytes of data without needing terabytes of memory: https://t.co/LSFdMCbUjf
We continue our deep dive into the #Lance file format and explain how Lance uses #backpressure to balance parallelism, speedy I/O, streaming computation, and limited RAM usage. In this blog, @westoncpace explains how our file reader's unique scheduling makes it so easy to configure backpressure settings that you'll hopefully never have to.