<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
<title>Loam blog</title>
<link>https://loam-cloud.vercel.app//blog</link>
<description>Engineering notes on building Loam, the AI-native cloud on object storage.</description>
<language>en</language>
<lastBuildDate>Tue, 29 Sep 2026 00:00:00 GMT</lastBuildDate>
<atom:link href="https://loam-cloud.vercel.app//blog/rss.xml" rel="self" type="application/rss+xml"/>
<item><title>Loam: the AI-native cloud in your bucket</title><link>https://loam-cloud.vercel.app//blog/loam-ai-native-cloud-in-your-bucket</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/loam-ai-native-cloud-in-your-bucket</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>An AI application today runs five or six stateful systems. Loam puts retrieval, application data, durable workflows and jobs on one platform, with object storage as the ground it all stands on.</description><dc:creator>Dinakaran</dc:creator><category>platform</category><category>architecture</category><category>object-storage</category></item>
<item><title>The engine: hybrid retrieval, streams, Iceberg and the wire APIs</title><link>https://loam-cloud.vercel.app//blog/the-engine-hybrid-retrieval-on-object-storage</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/the-engine-hybrid-retrieval-on-object-storage</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>How Loam&apos;s retrieval engine turns a bucket into vector, full-text and graph search behind the Qdrant, Elasticsearch and Flight SQL protocols, and where streams and Iceberg tables fit.</description><dc:creator>Dinakaran</dc:creator><category>platform</category><category>architecture</category><category>engineering</category></item>
<item><title>Loam Live: a reactive database on TiKV</title><link>https://loam-cloud.vercel.app//blog/loam-live-reactive-database-on-tikv</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/loam-live-reactive-database-on-tikv</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>Queries that stay live and push new results, mutations that are transactions, server functions, a protobuf sync API, and a change feed that makes application data searchable. How it works, and what is built.</description><dc:creator>Dinakaran</dc:creator><category>platform</category><category>tikv</category><category>engineering</category></item>
<item><title>Durable execution: Resonate, embedded</title><link>https://loam-cloud.vercel.app//blog/durable-execution-with-embedded-resonate</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/durable-execution-with-embedded-resonate</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>Loam links the Resonate server into its own binary, so the official Resonate SDKs get durable promises, retries, schedules and human approvals from the system that holds the agent&apos;s memory. Here is how, and the patterns we build on it.</description><dc:creator>Dinakaran</dc:creator><category>platform</category><category>durable-execution</category><category>engineering</category></item>
<item><title>Functions billed on CPU time</title><link>https://loam-cloud.vercel.app//blog/functions-billed-on-cpu-time</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/functions-billed-on-cpu-time</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>An agent that computes for 10 ms and waits 20 s on a model should pay for 10 ms. Our proposal for Loam Functions, with workerd, wasmtime and gVisor tiers and Resonate for long waits.</description><dc:creator>Dinakaran</dc:creator><category>platform</category><category>runtime</category><category>durable-execution</category></item>
<item><title>Jobs on Loam: Celery, BullMQ, PySpark and Flink SQL</title><link>https://loam-cloud.vercel.app//blog/jobs-on-loam</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/jobs-on-loam</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>Our proposal for running the job frameworks teams already use on Loam with a configuration change, on one Rust queue core over TiKV, with durable steps from Resonate when you want them.</description><dc:creator>Dinakaran</dc:creator><category>platform</category><category>durable-execution</category><category>runtime</category></item>
<item><title>Postgres and MySQL on your bucket</title><link>https://loam-cloud.vercel.app//blog/postgres-and-mysql-on-your-bucket</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/postgres-and-mysql-on-your-bucket</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>Real applications need real Postgres and MySQL. What Loam will serve over the Postgres wire itself, what we learned running Neon and WeSQL on RustFS, and why one is under evaluation and the other is not adopted.</description><dc:creator>Dinakaran</dc:creator><category>platform</category><category>sql</category><category>object-storage</category></item>
<item><title>Self-hosting Loam with GitOps</title><link>https://loam-cloud.vercel.app//blog/self-hosting-loam-with-gitops</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/self-hosting-loam-with-gitops</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>How the whole stack is meant to deploy from one Git repository, from a laptop cluster to your own data centre, on RustFS, the TiKV operator, a Loam operator and Argo CD. And the line between what is open source and what only the managed cloud runs.</description><dc:creator>Dinakaran</dc:creator><category>platform</category><category>self-hosting</category><category>open-source</category></item>
<item><title>Resonate: durable promises, and the server we embed</title><link>https://loam-cloud.vercel.app//blog/resonate-durable-promises</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/resonate-durable-promises</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>What Resonate is, how durable promises and replay work, why Loam chose it over Temporal and the alternatives, how we link its Rust server into our binary through a fork, and its license and limits.</description><dc:creator>Dinakaran</dc:creator><category>open-source</category><category>durable-execution</category><category>resonate</category></item>
<item><title>TiKV and PD: Raft, Percolator, keyspaces and our client fork</title><link>https://loam-cloud.vercel.app//blog/tikv-and-pd</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/tikv-and-pd</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>How TiKV replicates and transacts, what PD does, why API v2 keyspaces made TiKV Loam&apos;s transactional store, what its change feed can and cannot do for us, and why we carry a fork of the Rust client.</description><dc:creator>Dinakaran</dc:creator><category>open-source</category><category>tikv</category><category>storage</category></item>
<item><title>RustFS: the object store under a self-hosted Loam</title><link>https://loam-cloud.vercel.app//blog/rustfs-s3-in-rust</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/rustfs-s3-in-rust</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>Loam&apos;s source of truth is a bucket, so the bucket has to keep its promises. What RustFS is, why it replaced MinIO as Loam&apos;s default self-hosted store, what Loam needs from any S3 store, and what we still have to verify.</description><dc:creator>Dinakaran</dc:creator><category>open-source</category><category>object-storage</category><category>self-hosting</category></item>
<item><title>Apache DataFusion and Arrow: the query engine under every Loam read</title><link>https://loam-cloud.vercel.app//blog/datafusion-and-arrow</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/datafusion-and-arrow</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>Every Loam read, whether a Qdrant query, an Elasticsearch search or SQL, compiles to a DataFusion plan over Arrow batches. How DataFusion works, what Loam adds to it, why we embed it, and the version lockstep that comes with it.</description><dc:creator>Dinakaran</dc:creator><category>open-source</category><category>engineering</category><category>storage</category></item>
<item><title>Lance: the columnar format that holds Loam’s documents and vectors</title><link>https://loam-cloud.vercel.app//blog/lance-columnar-format-for-ai-data</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/lance-columnar-format-for-ai-data</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>How Lance lays out fragments, versions and indexes for fast random access on object storage, why Loam stores collections in it instead of Parquet, the detached versions we commit, and the churn we pin against.</description><dc:creator>Dinakaran</dc:creator><category>open-source</category><category>lance</category><category>storage</category></item>
<item><title>Tantivy and Quickwit’s splits: full-text search on object storage</title><link>https://loam-cloud.vercel.app//blog/tantivy-and-quickwit-splits</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/tantivy-and-quickwit-splits</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>How Tantivy indexes and scores text, how Quickwit&apos;s split format makes an index readable from a bucket with one ranged GET, why Loam vendors Quickwit&apos;s code instead of running Quickwit, and how we keep BM25 scores independent of the split layout.</description><dc:creator>Dinakaran</dc:creator><category>open-source</category><category>tantivy</category><category>storage</category></item>
<item><title>Apache Iceberg, iceberg-rust and Lakekeeper: tables any engine can read</title><link>https://loam-cloud.vercel.app//blog/iceberg-iceberg-rust-and-lakekeeper</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/iceberg-iceberg-rust-and-lakekeeper</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>How Iceberg tables commit on object storage, what iceberg-rust can and cannot write today, why Lakekeeper is Loam&apos;s catalog, and what Loam plans to add on top for AI analytics. All of it planned.</description><dc:creator>Dinakaran</dc:creator><category>open-source</category><category>storage</category><category>sql</category></item>
<item><title>Dapr: the API surface, and secrets from every cloud</title><link>https://loam-cloud.vercel.app//blog/dapr-api-and-secrets</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/dapr-api-and-secrets</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>What Dapr is and how its sidecar and components work, why Loam plans to serve a subset of Dapr&apos;s API from a Rust server instead of running a sidecar per function, and how tenant secrets would flow through Dapr&apos;s secrets building block.</description><dc:creator>Dinakaran</dc:creator><category>open-source</category><category>runtime</category><category>self-hosting</category></item>
<item><title>workerd, wasmtime and gVisor: three ways to run code you did not write</title><link>https://loam-cloud.vercel.app//blog/workerd-wasmtime-and-gvisor</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/workerd-wasmtime-and-gvisor</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>The three isolation technologies behind Loam&apos;s proposed function tiers. How V8 isolates, WebAssembly and a user-space kernel each contain code, what each costs, how each can be metered, and why workerd never runs two tenants in one process.</description><dc:creator>Dinakaran</dc:creator><category>open-source</category><category>runtime</category></item>
<item><title>OpenFGA: relationship-based authorization for Loam</title><link>https://loam-cloud.vercel.app//blog/openfga-authorization</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/openfga-authorization</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>How OpenFGA&apos;s Zanzibar-style model answers &quot;may this user do this to that&quot;, why Loam plans it as its fine-grained authorizer beside built-in roles, the tenant fence we add to Lakekeeper&apos;s model, and why tuple writes go through an outbox.</description><dc:creator>Dinakaran</dc:creator><category>open-source</category><category>self-hosting</category></item>
<item><title>Beside Loam, not inside it: Sail, RisingWave, Neon and WeSQL</title><link>https://loam-cloud.vercel.app//blog/sail-risingwave-neon-and-wesql</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/sail-risingwave-neon-and-wesql</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>Four engines Loam plans to run next to itself as separate processes. How each works, what it would do for Loam, its license and its limits, including the one we evaluated and did not adopt.</description><dc:creator>Dinakaran</dc:creator><category>open-source</category><category>sql</category><category>runtime</category></item>
<item><title>The small crates that carry a lot: SlateDB, foyer, openraft, redb, qdrant-edge and connect-rust</title><link>https://loam-cloud.vercel.app//blog/slatedb-foyer-openraft-and-friends</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/slatedb-foyer-openraft-and-friends</guid><pubDate>Tue, 29 Sep 2026 00:00:00 GMT</pubDate><description>Six Rust libraries inside Loam that get less attention than DataFusion or Lance but hold up the primary-key index, the cache, the metastore, the HNSW hot tier and every protobuf API. What each does, how Loam uses it, and its limits.</description><dc:creator>Dinakaran</dc:creator><category>open-source</category><category>storage</category><category>engineering</category></item>
<item><title>Crash gates: how we test kill -9 at every step</title><link>https://loam-cloud.vercel.app//blog/crash-gates</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/crash-gates</guid><pubDate>Sat, 26 Sep 2026 00:00:00 GMT</pubDate><description>Named failpoints, a store fault matrix and a seeded linearizability simulation. This is what &quot;no acknowledged write is ever lost&quot; means in Loam&apos;s test suite.</description><dc:creator>Dinakaran</dc:creator><category>testing</category><category>reliability</category><category>engineering</category></item>
<item><title>One manifest, two formats: Lance + Tantivy</title><link>https://loam-cloud.vercel.app//blog/one-manifest-two-formats</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/one-manifest-two-formats</guid><pubDate>Fri, 25 Sep 2026 00:00:00 GMT</pubDate><description>How Loam keeps a Lance dataset and a set of Tantivy splits mutually consistent on S3, with one compare-and-swap as the only commit point.</description><dc:creator>Dinakaran</dc:creator><category>storage</category><category>lance</category><category>tantivy</category><category>engineering</category></item>
<item><title>Why a retrieval engine should live on object storage</title><link>https://loam-cloud.vercel.app//blog/why-object-storage</link><guid isPermaLink="true">https://loam-cloud.vercel.app//blog/why-object-storage</guid><pubDate>Tue, 22 Sep 2026 00:00:00 GMT</pubDate><description>Most of an AI app&apos;s search data is cold most of the time. Here is why Loam keeps every byte in your bucket and treats compute as a cache.</description><dc:creator>Dinakaran</dc:creator><category>architecture</category><category>object-storage</category><category>hot-tier</category></item>
</channel>
</rss>
