<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/xan-docs-blog-csv-base-jumping-md-at-master-medialab-xan-tjamwbym0" -->

---
title: xan/docs/blog/csv_base_jumping.md at master · medialab/xan
description: A deep technical exploration of how to safely "jump" to arbitrary byte offsets within CSV files without knowing whether you've landed inside a quoted cell or...
canonical: https://daily.dev/posts/xan-docs-blog-csv-base-jumping-md-at-master-medialab-xan-tjamwbym0
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: xan/docs/blog/csv_base_jumping.md at master · medialab/xan | daily.dev
og:description: A deep technical exploration of how to safely "jump" to arbitrary byte offsets within CSV files without knowing whether you've landed inside a quoted cell or...
og:url: https://daily.dev/posts/xan-docs-blog-csv-base-jumping-md-at-master-medialab-xan-tjamwbym0
og:image: https://api.daily.dev/og/posts/TJamWBym0.png
og:image:alt: xan/docs/blog/csv_base_jumping.md at master · medialab/xan
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# xan/docs/blog/csv_base_jumping.md at master · medialab/xan

**[Lobsters](https://daily.dev/sources/lobsters)** · 17 min read · 0 upvotes · 0 comments

## Summary

A deep technical exploration of how to safely "jump" to arbitrary byte offsets within CSV files without knowing whether you've landed inside a quoted cell or not. The technique works by sampling the first 128 rows to build a statistical profile (column count, max row size, per-column average byte sizes), then testing two hypotheses at each jump point (quoted vs. unquoted) by parsing a fixed window of bytes under each assumption and using cosine similarity as a tie-breaker. This enables the xan CLI tool to perform single-pass parallel map-reduce over large CSV files, O(k) approximate sampling, and O(log n) binary search on sorted CSV data. Caveats include incompatibility with streams, compressed files, inconsistent column counts, and very small files.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://github.com/medialab/xan/blob/master/docs/blog/csv_base_jumping.md>

## Similar posts on daily.dev

- [Let's see Paul Allen's SIMD CSV parser](https://daily.dev/posts/let-s-see-paul-allen-s-simd-csv-parser-xr1qamezs) · Lobsters · 0 upvotes · 0 comments
- [Crunching data? Put that laptop hardware to use](https://daily.dev/posts/crunching-data-put-that-laptop-hardware-to-use-1fcnht8lv) · Simple Thread · 0 upvotes · 0 comments
- [I Found A Terminal Tool That Makes CSV Files Look Stunning](https://daily.dev/posts/i-found-a-terminal-tool-that-makes-csv-files-look-stunning-ahy6n0isu) · It's Foss · 8 upvotes · 0 comments
- [A better zip bomb](https://daily.dev/posts/a-better-zip-bomb-3qlj6gcty) · Hacker News · 1 upvotes · 0 comments
- [Fearless dataset experimentation with bucket forking](https://daily.dev/posts/fearless-dataset-experimentation-with-bucket-forking-jwtrlzexi) · Tigris · 0 upvotes · 0 comments

---

Tags: [#rust](https://daily.dev/tags/rust), [#binary-search](https://daily.dev/tags/binary-search)

[View this post on daily.dev](https://daily.dev/posts/xan-docs-blog-csv-base-jumping-md-at-master-medialab-xan-tjamwbym0)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"xan/docs/blog/csv_base_jumping.md at master · medialab/xan","url":"https://daily.dev/posts/xan-docs-blog-csv-base-jumping-md-at-master-medialab-xan-tjamwbym0","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/xan-docs-blog-csv-base-jumping-md-at-master-medialab-xan-tjamwbym0"},"datePublished":"2026-02-23T22:55:53.528Z","dateModified":"2026-02-23T22:56:20.282Z","description":"A deep technical exploration of how to safely \"jump\" to arbitrary byte offsets within CSV files without knowing whether you've landed inside a quoted cell or...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/d236a54119ff27e361e661ef42e86ad7?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/d236a54119ff27e361e661ef42e86ad7?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Lobsters","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Lobsters","logo":"https://media.daily.dev/image/upload/s--tl8v_Fku--/f_auto,t_logo/v1698841318/logos/lobste.jpg","url":"https://daily.dev/sources/lobsters"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/xan-docs-blog-csv-base-jumping-md-at-master-medialab-xan-tjamwbym0","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"rust,binary-search","timeRequired":"PT17M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Lobsters","item":"https://daily.dev/sources/lobsters"},{"@type":"ListItem","position":3,"name":"xan/docs/blog/csv_base_jumping.md at master · medialab/xan"}]}
```

