{"type":"rich","version":"1.0","provider_name":"Transistor","provider_url":"https://transistor.fm","author_name":"Database School","title":"Building a serverless database replica with Carl Sverre","html":"<iframe width=\"100%\" height=\"180\" frameborder=\"no\" scrolling=\"no\" seamless src=\"https://share.transistor.fm/e/6dc15ef3\"></iframe>","width":"100%","height":180,"duration":5339,"description":"Want to learn more SQLite? Check out my SQLite course: https://highperformancesqlite.com \nIn this episode, Carl Sverre and I discuss why syncing everything is a bad idea and how his new project, Graft, makes edge-native, partially replicated databases possible. We dig into SQLite, object storage, transactional guarantees, and why Graft might be the foundation for serverless database replicas. \nSQLSync: https://sqlsync.dev \nStop syncing everything blog post: https://sqlsync.dev/posts/stop-syncing-everything \nGraft: https://github.com/orbitinghail/graft \nFollow Carl: \nTwitter: https://twitter.com/carlsverre \nLinkedIn: https://www.linkedin.com/in/carlsverre \nWebsite: https://carlsverre.com/ \nFollow Aaron: Twitter: https://twitter.com/aarondfrancis \nLinkedIn: https://www.linkedin.com/in/aarondfrancis \nWebsite: https://aaronfrancis.com - find articles, podcasts, courses, and more.\nDatabase school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15\nDatabase school audio only: https://databaseschool.transistor.fm  \nChapters: 00:00 - Intro and Carl’s controversial blog title\n01:00 - Why “stop syncing everything” doesn't mean stop syncing\n02:30 - The problem with full database syncs\n03:20 - Quick recap of SQL Sync and multiplayer SQLite\n04:45 - How SQL Sync works using physical replication\n06:00 - The limitations that led to building Graft\n09:00 - What is Graft? A high-level overview\n16:30 - Syncing architecture: how Graft scales\n18:00 - Graft's stateless design and Fly.io integration\n20:00 - S3 compatibility and using Tigris as backend\n22:00 - Latency tuning and express zone support\n24:00 - Can Graft run locally or with Minio?\n27:00 - Page store vs meta store in Graft\n36:00 - Index-aware prefetching in SQLite\n38:00 - Prefetching intelligence: Graft vs driver\n40:00 - The benefits of Graft's architectural simplicity\n48:00 - Three use cases: apps, web apps, and replicas\n50:00 - Sync timing and perceived latency\n59:00 - Replaying transactions...","thumbnail_url":"https://img.transistorcdn.com/QPpKhRBWtM56k1sC7Y7j7aqGy8sd-XKWw6mEKgA1jmw/rs:fill:0:0:1/w:400/h:400/q:60/mb:500000/aHR0cHM6Ly9pbWct/dXBsb2FkLXByb2R1/Y3Rpb24udHJhbnNp/c3Rvci5mbS9lMmRl/ZTM5ZTAxOTMzNTgy/MmJmZTA4MWE1ZjMw/YjE4Ny5wbmc.webp","thumbnail_width":300,"thumbnail_height":300}