Skip to main content

Engineering blog

Posts from the Tigris engineering team about how we build global object storage for any cloud — low-latency access anywhere, millions of buckets, and 99.99% availability you can rely on.

136
Posts
18
Authors
2022
Established
Get the RSS feed
Engineering

objgit is not a git forge

objgit is not a git forge. It's a git server on Tigris object storage that you can script with hooks, explore over SSH, and grow with. Here's what's next.
Xe Iaso · · 8 min read
Customers

Object storage is all you need

Ampbase runs its control plane on Tigris object storage with no database underneath. Here are the four database primitives they built, and what broke.
JP · · 20 min read
Engineering

Conflict resolution is “fun”

How Tigris resolves write conflicts across regions: timestamp-based replication on FoundationDB, clock skew races, and the tradeoffs of each bucket type.
Xe Iaso · · 13 min read
Build with Tigris

The Most Expensive ClickHouse Query Is the Restore

Self-hosted ClickHouse runs on cheap compute, but its backups and cold tier usually live on AWS S3, and AWS charges $0.09/GB to read your own data back. Point BACKUP TO S3 and TTL tiering at Tigris instead. You keep the same stock ClickHouse features, you pay zero egress fees, and disaster recovery…
David Myriel · · 4 min read
Build with Tigris

Where Does the Agent Live?

Your agent runs in a disposable sandbox, but it can't live there. A breakdown of everything in the agent's world, and why it should be one forkable bucket.
David Myriel · · 19 min read
build with tigris

I taught a bucket to speak git

objgit is a single-binary git server that stores repositories directly in Tigris — no disk, no git binary, no database. To my shock and horror, it worked.
Xe Iaso · · 19 min read
Updates

Giving your Go apps Tigris superpowers

The Go Storage SDK adds first-class methods for bucket forking, snapshots, and object renaming — plus a simpler high-level client for everyday storage code.
Xe Iaso · · 6 min read
Updates

Introducing storagesdk.dev

StorageSDK is a provider-agnostic storage API for Node.js: one interface across S3, R2, Azure, GCS, Tigris, and more, with snapshots and forks built in.
Abdullah Ibrahim · · 8 min read
Customers

Own Your AI Context with Basic Memory

How Basic Memory uses per-tenant Tigris buckets, rclone bisync, and bucket snapshots to give every user a portable Markdown knowledge base.
David Myriel, Katie Schilling · · 11 min read
Build with Tigris

Build a Self-Updating Knowledge Base for Under $10

A self-updating knowledge base on Tigris, maintained overnight by an Anthropic SDK agent loop running through @tigrisdata/agent-shell. Atomic flush on success, discard on throw. The bucket either lands a clean run or stays byte-for-byte unchanged. ~$7 a month, presigned digest URL in Slack each morn…
David Myriel · · 11 min read
Build with Tigris

Durable global streams in Tigris with S2

S2 Lite turns S3-compatible object storage into a durable streaming platform. Run it on Tigris for high-cardinality workloads — per-agent reasoning traces, event firehoses — with zero egress fees and global replication.
Xe Iaso · · 12 min read
Build with Tigris

We gave just-bash persistent storage

Meet @tigrisdata/agent-shell: a virtual bash environment that gives AI agents persistent storage on Tigris buckets, with forks and snapshots for safety.
Xe Iaso, Abdullah Ibrahim, Katie Schilling · · 5 min read
Build with Tigris

The Immutable Agent

Storage-protected Mastra agents: a reference implementation. Isolated session forks, validate before promoting, contain compromise at the storage layer.
David Myriel · · 14 min read
Engineering

Testing Distributed Systems Under Chaos

Three bugs, one seam. How Tigris used Antithesis under fault injection to find and fix cache coherence bugs — tombstone barriers, reorder, three-layer defense.
Adil Ansari · · 17 min read
Updates

Introducing Multi-Region and Dual-Region Buckets

Tigris now lets you choose exactly how your data is replicated across regions. Pick from four bucket location types (global, multi-region, dual-region, and single-region), each with built-in consistency and availability guarantees.
David Myriel · · 9 min read
Engineering

Benchmarking ML Training Throughput on Tigris Object Storage

Training ML models directly from object storage is possible with the right access patterns and client tooling. We benchmarked Tigris against AWS S3 and introduced the Tigris Acceleration Gateway (TAG), a local caching service that significantly reduces epoch duration and worker requirements for mu…
Ovais Tariq · · 14 min read
Engineering

Deriving the Tigris Go SDK

Tigris now has an official Go SDK! Learn how storage-go provides both an AWS S3 drop-in replacement and an ergonomic high-level interface for Go developers.
Xe Iaso · · 5 min read
Engineering

We're open sourcing our MCP OIDC Provider

When building a remote MCP server, you will most likely need an OIDC layer between clients (Claude, Cursor etc) and your upstream IdP (Auth0, Clerk etc). We have created a ready to use solution for you that's vendor neutral: use any IdP you want.
Abdullah Ibrahim, Katie Schilling · · 11 min read
Build with Tigris

1-Click Docker Registry with Northflank + Tigris

Deploy a self-hostable, private Docker Registry effortlessly using a Northflank 1-Click stack combined with Tigris for secure, scalable storage and authentication. Take back control of your container image destiny, avoid public registry limits and egress fees, and set up object lifecycle rules to op…
Xe Iaso, Katie Schilling · · 6 min read
Updates

Bucket snapshots are git tags for your bucket

Whole bucket snapshots, like git tags for your bucket. Snapshots enable point-in-time recovery, reproducibility, and version control for object storage - finally bringing snapshot semantics to the entire object storage namespace.
Katie Schilling, Xe Iaso · · 5 min read
Engineering

The man-in-the-middle pattern for MCP server OAuth

Learn how Tigris implemented the Model Context Protocol (MCP) server's challenging OAuth authentication using an OpenID Connect (OIDC) "man-in-the-middle" pattern backed by Tigris as a key-value store to manage dynamic clients.
Xe Iaso, Katie Schilling, Abdullah Ibrahim · · 14 min read
Build with Tigris

Tigris' MCP Server Goes Global

Tigris' hosted MCP server is now globally available, simplifying integration into AI workflows like ChatGPT, Claude, and agentic coding. Benefit from no installation, OAuth security, and support for multiple Tigris organizations.
Xe Iaso, Abdullah Ibrahim · · 5 min read
Build with Tigris

Scaling Kafka with AutoMQ on Tigris

Learn how AutoMQ paired with Tigris object storage redefines Kafka scaling by eliminating replication overhead, enabling instant partition reassignment, and delivering a fully elastic, cloud-native streaming engine.
Raouf Chebri · · 5 min read
Engineering

Immutable by Design: The Deep Tech Behind Tigris Bucket Forking

Tigris bucket forking lets you make copies of terabytes of data in microseconds thanks to making objects immutable and ordering time backwards. This gives you object-level snapshotting, forking, and strong deletion protection, revolutionizing object storage with Git-like forking for massive datasets…
Himank Chaudhary, Xe Iaso, Katie Schilling · · 13 min read
Updates

Fork Buckets Like You Fork Code

Fork your data like you fork your code. With Tigris, create isolated copies of your data for development, testing, or experimentation without waiting for full copies.
Katie Schilling · · 6 min read
Build with Tigris

How we make Ty

Learn how we create AI-generated illustrations featuring Ty the tiger for our blog posts, including the creative process and the open-source Tygen app built with Go, HTMX, and OpenAI API.
Xe Iaso · · 7 min read
Build with Tigris

Announcing the Tigris Storage SDK

Introducing the Tigris Storage SDK for JavaScript and TypeScript - a simplified alternative to AWS S3 SDK with environment-based configuration, error-as-values pattern, and streamlined object storage operations.
Xe Iaso, Abdullah Ibrahim · · 7 min read
Engineering

We do our billing with Prometheus

How Tigris uses Prometheus metrics for usage-based billing instead of traditional event-driven systems, reducing complexity while ensuring transparency and customer-friendly error handling.
Xe Iaso, Peter Boros, Adil Ansari · · 11 min read
Build with Tigris

Distributed Training with LanceDB and Tigris

Discover how to efficiently train large-scale ML models using LanceDB and Tigris. This guide details streaming massive datasets directly from object storage to PyTorch, simplifying distributed training and eliminating infrastructure complexities for scalable AI.
Xe Iaso · · 12 min read
Updates

We made unhateable IAM. Here’s how to use it.

Tigris introduces an IAM Policy Builder that simplifies permissions and provides a VSCode-like editor experience. This tool aims to make IAM policy development easier and more secure by focusing on least privilege from the start.
Xe Iaso, Katie Schilling · · 7 min read
Updates

mount -t tigrisfs

Learn how Tigris Data's tigrisfs provides a native filesystem interface for unlimited, globally accessible cloud storage. Bridge the gap between cloud and local, enabling seamless integration with existing tools and tackling big data challenges for AI, analytics, and more.
Xe Iaso, Katie Schilling, Ovais Tariq, Yevgeniy Firsov · · 12 min read
Build with Tigris

Data Time Travel with DuckLake and Tigris

Learn how to implement data time travel with Ducklake and Tigris to easily recover from database mishaps. This guide demonstrates how Ducklake creates snapshots for every `INSERT` or `DELETE` operation, allowing you to explore your analytics database as it was before disaster struck.
Xe Iaso, Katie Schilling · · 10 min read
Build with Tigris

Get your data ducks in a row with DuckLake

Combine SQL and object storage data seamlessly with DuckLake, a data lakehouse solution that works with Tigris. Query big and small data without egress fees and simplify your data analytics workflows.
Xe Iaso, Katie Schilling · · 14 min read
Build with Tigris

Eliminating Data Migration Risk with Shadow Buckets on Tigris

Eliminate data migration risks with Tigris's Shadow Bucket Migration. Learn how to move data seamlessly with incremental, two-way door strategies and avoid downtime. Discover the benefits of read/write fallback and multi-region synchronization for object storage.
Xe Iaso, Katie Schilling, Yevgeniy Firsov · · 7 min read
Build with Tigris

Fending off scrapers with Tigris and DuckDB

Anubis is a Web AI Firewall Utility that helps administrators keep their sites up in the wake of abusive scrapers. In order to make Anubis filter things better, you need data. Here's how Xe got that data to improve Anubis' filtering powers.
Xe Iaso · · 15 min read
Updates

Sharing Files with the Model Context Protocol

We built a tool to upload a file to a bucket and then create a sharable URL. Sounds so easy an AI could do it, but can it? Models struggle to break down multi-step tasks, so we design higher order tools for them.
Katie Schilling · · 10 min read
Engineering

Going beyond vibe coding

AI tools can make coding easier, but they can also introduce subtle errors that can turn out really bad if you're not careful.
Xe Iaso · · 11 min read
Updates

Announcing the Tigris MCP server

Want to do vibe coding with Tigris? We released a MCP server so you can make it happen. 😎
Xe Iaso, Katie Schilling, Abdullah Ibrahim · · 6 min read
Customers

Depot saves us from another Google deprecation

Google Container Registry's deprecation has left developers seeking alternatives. Depot's container registry built on Tigris offers a fast and reliable solution for storing and distributing Docker images globally, with faster image pulls and no rate limits.
Xe Iaso, Katie Schilling · · 7 min read
Updates

Moving to Virtual Hosted URLs

We're transitioning to virtual hosted style URLs for all new buckets created after February 19, 2025.
Katie Schilling · · 3 min read
Engineering

AI’s Impending Left-pad Scenario

Your AI workflows rely on models that other people post on the Internet. How can you be sure that they'll stay up? Today Xe covers the history of the infamous left-pad incident of 2016 and how it could happen again with AI.
Xe Iaso · · 10 min read
Engineering

DeepSeek R1 is good enough

DeepSeek R1 is a frontier-grade reasoning model that you can run on your own hardware. In this article, Xe digs through the papers and slices past the hype to explain what DeepSeek R1 really gives users and how the model is revolutionary for what it is.
Xe Iaso · · 21 min read
Engineering

How do large language models get so large?

AI models, comprised mainly of floating-point numbers, function by processing inputs through various components like tokenizers and embedding models. They range in size from gigabytes to terabytes, with larger parameter counts enhancing performance and nuance representation. How do they get so large…
Xe Iaso · · 8 min read
Updates

Using Tigris as a Filesystem

Object storage can be used as a filesystem in Kubernetes with the right setup. Here's how I set it up on my homelab cluster and the tradeoffs I made in the process.
Xe Iaso · · 11 min read
Customers

How Beam runs GPUs anywhere

Learn how Beam offers serverless GPUs optimized for developer productivity, across many clouds. By moving object storage to a separate managed service, Beam no longer needed to worry about it as another variable when designing for consistency across clouds.
Katie Schilling · · 6 min read
Build with Tigris

Training with Big Data on Any Cloud

Training AI models on Big Data can be challenging due to the need for flexible storage and compute. Tigris, a cloud-agnostic storage layer, enables decoupling of storage from compute, making it easier to manage data and model weights across clouds. Tools like SkyPilot that abstract cloud providers a…
Xe Iaso · · 22 min read
Build with Tigris

Nomadic Infrastructure Design for AI Workloads

This AI stuff is cool, but GPU inference is not needed all of the time. Most of the time your instances stay idle, which means you're just burning investor money without any real benefit. Today we'll learn how to make your compute spread between hosts nomadically, hunting deals and using Tigris to m…
Xe Iaso · · 19 min read
Updates

Tigris supports Storage Tiers

Tigris now supports storage tiers! Optimize your storage cost based on access patterns with three tiers: Standard, Infrequent Access, and Archive.
Katie Schilling · · 6 min read
Updates

How we built object notifications in Tigris

Tigris now supports object notifications! Object notifications are how you receive events every time something changes in a bucket. This post is a deep dive into the implementation of object notifications in Tigris.
Garren · · 5 min read
Build with Tigris

Becoming your own Docker Registry with Tigris

Tigris lets you store your objects around the world so that you beat the speed of light getting your data to your users faster. Sometimes those include Docker images so that you can spin up more GPU time without having to download or manage your models separately. Join on in and learn how you can be…
Xe Iaso · · 5 min read
Updates

We're making our availability metrics public

We're Tigris, a globally distributed object storage platform built for high-performance workloads. We're making our reliability metrics public! Check out our live dashboard and see how we're providing 99.99% global availability. We're pretty sure we're the first to share this type of live production…
Katie Schilling, Xe Iaso · · 4 min read
Customers

How fal.ai offers the fastest generative ai in the world

Learn how fal.ai offers the fastest generative ai in the world by using Tigris for object storage. Finding a storage solution built for an extremely performant global deployment was essential to keeping fal.ai accessible to a broad range of developers. Tigris not only was just crazy fast, it saved…
Katie Schilling · · 5 min read
Build with Tigris

Snip, Snap, Serve: Effortless Global Image Delivery with Tigris

Exploring Tigris' shadow bucket feature for fun and thumbnails. In the blog post the feature will be used in an less conventional fashion. An additional elixir service will generate thumbnails, where source files as well as generated thumbnails are stored on Tigris, while making use of the included…
Benjamin Milde · · 8 min read
Engineering

What’s the Big Deal with Conditional Writes Support in S3?

There has been a lot of enthusiasm about the recent announcement by AWS about support for Conditional Writes in S3. We will dive into why this is a big deal and what it means for developers. We will also explore CAS operations and how they relate to S3 Conditional Writes feature. Finally, we will di…
Ovais Tariq · · 5 min read
Build with Tigris

Metadata Querying for Object Storage feat. Elixir

Now we get to the significantly more disruptive stuff. The things that while Tigris is an S3-compatible API it also provides features that enable entirely new use-cases and push the boundaries of what you can do with object storage. Let's see if we can't set your internal constraint-solver aflame wi…
Lars Wikman · · 6 min read
Build with Tigris

Eager & Lazy Caching feat. Elixir

At Tigris we offer a number of novel and practical improvements beyond what your typical Object Storage does. We fit these within the existing common APIs or as graceful extensions when necessary. In this post we look at how you can take control of the Tigris caching mechanism if you feel the need.
Lars Wikman · · 4 min read
Updates

We're enabling billing for Tigris in July

Since we launched our public beta three months ago, our usage has skyrocketed, and hundreds of early adopters have picked Tigris as their storage solution. We've implemented tons of requested features and invested heavily in Tigris' performance, security, and reliability. With that, we will start bi…
Ovais Tariq · · 4 min read
Build with Tigris

AI Image Generator with Stability and Tigris

Tigris is a globally distributed S3-compatible object storage solution available that is nativeliy integrated with Fly.io. In this article, we'll explore creating AI-generated images using the Stability API and storing them in a Tigris bucket for easy and fast retrieval.
Brian Morrison II · · 10 min read
Engineering

Tigris vs. S3 & Cloudfront

Tigris is a globally distributed S3-compatible object storage solution available that can easily be hosted on Fly.io. In this article, we'll explore how Tigris fits into the existing slate of object storage options and why you might choose one over the other.
Annie Sexton · · 3 min read
Updates

Announcing Tigris Seed Round led by Andreessen Horowitz

Tigris is a globally distributed object storage service that provides low latency anywhere in the world, enabling developers like you to store and access any amount of data using the S3 libraries you're already using in production. Today, we're announcing our seed round led by Andreessen Horowitz.
Ovais Tariq · · 6 min read
Engineering

Tigris, the globally distributed S3-compatible object storage

Tigris is a globally distributed object storage service that provides low latency anywhere in the world, enabling developers like you to store and access any amount of data using the S3 libraries you're already using in production. Today, we're launching our public beta on top of Fly.io.
Ovais Tariq · · 5 min read
Engineering

How we built our metadata layer on FoundationDB

Tigris is a globally available, S3 compatible object storage service. Tigris uses FoundationDB's transactional key-value interface for its underlying metadata storage. In the first post of the series we will share the details of how we have built the metadata layer on top of FoundationDB. We will…
Himank Chaudhary · · 6 min read
Engineering

A developer-driven approach to building secondary indexes presentation

Building secondary indexes for is always about balance. A balance between a system that scales and is easy to manage and an API that is intuitive and delightful for a developer to use. Recently at Tigris Data, we have been adding secondary indexes to our metadata store that runs on top of Founda…
Garren · · One min read
Engineering

Navigating Client-Side Encryption

Client-side encryption, a fortress of digital privacy, empowers users to safeguard their information with an impenetrable shield. By arming individuals with the cryptographic key to their data, this formidable approach ensures an unparalleled level of control, fortifying the sanctity of personal inf…
Jigar Joshi · · 4 min read
Engineering

Backing up FoundationDB

Tigris is a globally available, S3 compatible object storage service that uses FoundationDB for its metadata storage. This blog post describes how we perform backups on FoundationDB, and what options exist for that purpose.
Peter Boros · · 10 min read
Engineering

Tigris transaction internals

Tigris is a globally available, S3 compatible object storage service. Tigris uses FoundationDB's transactional key-value interface for its underlying metadata storage. In this blog post, we will describe transactions in Tigris, delving into the topics of serializable transactions, the mechanics of t…
Himank Chaudhary · · 3 min read