Dmitriy Kononov
Let’s talkContact

News and analysis

70-page scans and photos of a car from every side: disk, object storage or Drive

Cloudflare reworked how it serves large files, Fly.io replaced its file system, EchoFile links Drive and SharePoint. Where I keep clients' scans, photos and screenshots.

Cloudflare reworked the caching of partial requests to large files, Fly.io explained how its homemade file system on top of object storage lost data, and the startup EchoFile is launching a pilot for moving files between Google Drive, Dropbox and SharePoint. For a business owner there is one question behind all of this: where should the scans, photos and PDFs live, the ones a company gets more of every day, and who is responsible for them.

What came out

On October 23, Cloudflare opened Origin Range Requests on all plans. A range request is when a player or a download manager asks for a piece of a file, bytes from here to there, and the server answers 206 Partial Content. Before, Cloudflare cut the file into ranges of a fixed size set in the zone settings, and a request for a few megabytes could make it pull 128 MiB from the origin. After the cache moved to Pingora, the ranges matched the chunks the cache already uses to store files on disk, and there was nothing left to configure. For their R2 storage, p99 time to first byte dropped by about half, and traffic between cache tiers fell by about 6%. It is turned on with one Cache Rule.

Fly.io on October 22 described replacing the file system for its Sprites. The root disk there is still object storage, so a machine can go to sleep and wake up on another server. But object storage can't change part of an object, and Linux programs rewrite bytes in the middle of a file all the time. At the start this was done by a modified JuiceFS with metadata in SQLite and a 100 GB disk image with ext4 inside. In writeback mode it first wrote the metadata, then uploaded the chunk; if the machine was killed between those steps, the metadata pointed to a chunk that didn't exist, ext4 went read-only, and checkpoints didn't help because they shared the same chunks. They ran 400 machines through about 5,000 write-and-restore cycles, some of them permanently lost the ability to take checkpoints, and the system was replaced with Sprites Block Device.

CustomerThink on October 18 wrote about the EchoFile pilot: a connector that moves files between Google Drive, Dropbox and Microsoft SharePoint without making you download, repackage and upload again. Founder Lauren Spivey Smith calls it a pipe between two systems; they are recruiting pilot participants.

Why this matters to a business

Take a car rental company. At every handover and return, the car is photographed from every side, eight to ten shots from a phone. Twenty handovers a week, and over a year that adds up to thousands of photos. In the database, they bloat it and make the backups heavy. On the server disk, the disk runs out at the worst possible moment. In a shared Google Drive, a year later nobody can find the photos from a specific handover.

A file needs three properties written down in advance: where it lives, who has access to it and when it can be deleted. The database stores the link and those three answers, and the bytes themselves live where they are cheaper and more reliable: in object storage, on disk or in Drive, depending on who uses them later. The Fly.io story is about the same thing: when metadata and bytes are kept apart, keeping them consistent is your job.

How I do it

At the PDR company in the US, where I have worked since 2021, incoming insurance documents run up to 60 to 70 pages and arrive as a PDF, a scan or a phone photo. My Python parsers read them, and the photo parsers recognize the VIN. Right now about 99.9% of documents go through without manual correction, which frees up about 60 hours of work a week. PDFs in the other direction, reports, estimates and invoices, I generate with Puppeteer.

In the “Coffee Together” service, which I built in September and October 2026, employees attach payment screenshots. They sit in a private Yandex Object Storage bucket and open only through a gateway on Node.js; there is no way to get them directly. The server is shared, with 2 GB of memory, the containers have hard limits, and the files live outside.

For a consulting company in London, in 2023 and 2024, I built Quote Finder: Puppeteer and headless Chrome opened an article, highlighted the quote and took a screenshot and a video. The finished files went to Google Drive, because people worked with them from there. The same company's subtitle system took video from a Google Drive folder and deleted the temporary files after upload.

At the rental company in Cape Town, photos of the car from every side are uploaded at inspection and show up in the booking, and payment is checked against a screenshot. That is a check by image; nothing is verified with the bank, and I say so directly.

I haven't tested Origin Range Requests or the Fly.io block device myself. But the principle of the database holding the link and the bytes living separately runs through all of these projects.

What I would do

Count how many files appear per week and how much they weigh. Without that number a conversation about storage makes no sense.

Split the files by who uses them. Programs read from object storage or from disk by a link from the database. People work in Drive or SharePoint, and the file gets there as a copy or a link.

Write down how long each file lives. A payment screenshot can be deleted after a year, a signed report is kept as long as the law requires, a temporary processing file is deleted right away.

Close direct access. Files from private storage are served only through your server, which checks who is allowed.

Check that the database copy and the file copy are made together, otherwise after a restore the links will point at nothing.

How I check recognition results and when I hand the decision to a person, I wrote in the article AI in data processing: extraction and verification. Services: document and data processing in Python and infrastructure you can ship and restore. Cases: document parsers and VIN photos, car rental in South Africa with vehicle inspections and Quote Finder. On the same topic: a backup nobody has restored and document data extraction in 2026. Earlier I wrote about searching PDFs with tables and charts. If your scans and photos pile up with no rules, tell me where they come from and who looks at them later: Discuss your task.