Yesterday
- On Monday, a major AWS outage hit thousands of sites & apps, and even a Premier League soccer game. An overview of what caused this high-profile, global outage...
- Ellis and Blake are having a catch-up over a coffee. Ellis is looking a little stressed. “We hired a new product manage,” Ellis explains. “So we can be more user-centric.” “Great!” Blake responds. “How often will they speak to the users?” There’s a long silence, which gives...
Last week
- In the previous post, I explored a Parquet on S3 design with tombstones for constant time deletes and a CAS updated manifest for snapshot isolation. This post extends that design. The focus is in file delete operations where we replace a Parquet row group and publish a new...
Two weeks ago
- Parquet is excellent for analytical workloads. Columnar layout, aggressive compression, predicate pushdown, but deletes require rewriting entire files. Systems like Apache Iceberg and Delta Lake solve this by adding metadata layers that track delete files separately from data...
- PostgreSQL handles large JSON payloads reasonably well until you start updating or deleting them frequently. Once payloads cross the 8 KB TOAST threshold and churn becomes high, autovacuum can dominate your I/O budget and cause other issues. I have been exploring the idea of...
about 1 month ago
- Create an S3 Bucket, create an IAM User, use IAM credentials with the Pulumi CLI....
- Seven Years of Firecracker Time flies like an arrow. Fruit flies like a banana. Back at re:Invent 2018, we shared Firecracker with the world. Firecracker is open source software that makes it easy to create and manage small virtual machines. At the time, we talked about...
about 2 months ago
- Ellis has called a team meeting. Arlo, Murray, and Ellis are sitting in the boardroom drinking coffee. Arlo looks a little worried, and Murray looks like he’s thinking of being on holiday. “We need to boost productivity,” Ellis begins. “What do you need?” “Our machines are...
- I've been using multiple instances of Claude Code and Codex CLI almost every day. But I've gotten frustrated enough to build something that solidifies my workf...
2 months ago
- Dynamo, DynamoDB, and Aurora DSQL Names are hard, ok? People often ask me about the architectural relationship between Amazon Dynamo (as described in the classic 2007 SOSP paper), Amazon DynamoDB (the serverless distributed NoSQL database from AWS), and Aurora DSQL (the...
3 months ago
- I Spent $450 in 3 Weeks Building 100k Lines of Code (And Didn't Want to Burn It Down)...
- Murray and Doug are passing in the hallway. Murray is looking confused and a little vacant. “I’ve lost my earbuds again!” Murray laments. Doug has a think and then hits a lightbulb moment. He starts sketching a pair of wireless earbuds. He then adds a line between the two buds...
4 months ago
- In today’s edition of “don’t trust LLMs”, we learn that despite what AI tells you, AWS Backup doesn’t support Cross-Account and Cross-Region backups. It supports Cross-Account copying and Cross-Region copying, but apparently not together. As part of Masset’s Data Protection and...
5 months ago
- Picking uncontested private IP subnets with usage data If the device you are reading this on has an IPv4 address, it is very likely not a publicly routeable one. This is because the wide scale dep...
- I like to keep track of times I’m one of the lucky 10,000. Had such an instance today with the JDK and DNS behavior. Apparently most versions of the JDK cache DNS lookups indefinitely. If that’s not surprising to you, I’m guessing you’ve had a weekend debugging session similar...
6 months ago
- Decomposing Aurora DSQL Riffing, I guess. Earlier today, Alex Miller wrote an excellent blog post titled Decomposing Transaction Systems. It’s one of the best things I’ve read about transactions this year, maybe the best. You should read it now. In the post, Alex breaks...
7 months ago
- This blog post is expressing personal experiences and opinions and doesn’t reflect any official policies of SourceHut. Over the past few months, instead of working on our priorities at SourceHut, I have spent anywhere from 20-100% of my time in any given week mitigating...
8 months ago
- As our deployment and CI costs grew, we started looking into migrating off from AWS ECS to AWS EKS. Here’s a brief history of this change.
- This guide will walk you through setting up an AWS S3 bucket to store your Postgres backups. This is part one of a two-part guide. Continue to part two here. ......
- In this guide, you'll learn how to configure nightly Postgres backups using a scheduled GitHub Action and pg_dump. This is part two of a two-part guide. Go bac......
- If you've found yourself here, you're probably looking for a way to send an email using GitHub Actions. Great—I needed to do this too! I'll briefly explain why,......
9 months ago
- I noticed an uptick in spam signups on my self-hosted Ghost instance. Specifically those coming from email to SMS gateways[1]. I suspect that they use the email address to send a text message to verify the phone number. I'm not sure how many people actually use these...
10 months ago
- Welcome to the final part of this series. In Part 1, I showed you the proof of concept. In Part 2, we dove into the actual application. Now it's time for the good stuff - all the ways everything went wrong before it went right. Remember when I said t......
Rows per page