<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: adastral</title><link>https://news.ycombinator.com/user?id=adastral</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 12 Sep 2026 05:30:53 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=adastral" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[I've operated petabyte-scale ClickHouse clusters for 5 years]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.tinybird.co/blog/what-i-learned-operating-clickhouse">https://www.tinybird.co/blog/what-i-learned-operating-clickhouse</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=49601138">https://news.ycombinator.com/item?id=49601138</a></p>
<p>Points: 191</p>
<p># Comments: 73</p>
]]></description><pubDate>Mon, 07 Sep 2026 18:05:04 +0000</pubDate><link>https://www.tinybird.co/blog/what-i-learned-operating-clickhouse</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=49601138</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49601138</guid></item><item><title><![CDATA[New comment by adastral in "Massively Parallel Postgres Backups"]]></title><description><![CDATA[
<p>How do you cope with distributed transactions? (I'm not sure if you support them?)<p>I know that Citus has a `citus_create_restore_point()` (or so) function that, when called, guarantees that no 2PC commits are in flight and creates a WAL restore point in every shard. Therefore, restoring shards to that point will leave the DB in a consistent state. Do you do something similar?</p>
]]></description><pubDate>Mon, 03 Aug 2026 22:21:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=49162232</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=49162232</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49162232</guid></item><item><title><![CDATA[Pg_hardstorage: PostgreSQL Backup, Done Right]]></title><description><![CDATA[
<p>Article URL: <a href="https://github.com/cybertec-postgresql/pg_hardstorage">https://github.com/cybertec-postgresql/pg_hardstorage</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48644482">https://news.ycombinator.com/item?id=48644482</a></p>
<p>Points: 5</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 23 Jun 2026 13:13:15 +0000</pubDate><link>https://github.com/cybertec-postgresql/pg_hardstorage</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=48644482</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48644482</guid></item><item><title><![CDATA[RawTree]]></title><description><![CDATA[
<p>Article URL: <a href="https://rawtree.com/blog/introducing-rawtree">https://rawtree.com/blog/introducing-rawtree</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48494890">https://news.ycombinator.com/item?id=48494890</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 11 Jun 2026 19:00:30 +0000</pubDate><link>https://rawtree.com/blog/introducing-rawtree</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=48494890</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48494890</guid></item><item><title><![CDATA[We moved our growth analytics back into Tinybird]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.tinybird.co/blog/why-we-moved-our-growth-analytics-back-into-tinybird">https://www.tinybird.co/blog/why-we-moved-our-growth-analytics-back-into-tinybird</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48435628">https://news.ycombinator.com/item?id=48435628</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Sun, 07 Jun 2026 15:14:00 +0000</pubDate><link>https://www.tinybird.co/blog/why-we-moved-our-growth-analytics-back-into-tinybird</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=48435628</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48435628</guid></item><item><title><![CDATA[Key Joins (SQL Proposal)]]></title><description><![CDATA[
<p>Article URL: <a href="https://keyjoin.org/">https://keyjoin.org/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48320456">https://news.ycombinator.com/item?id=48320456</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Fri, 29 May 2026 08:11:49 +0000</pubDate><link>https://keyjoin.org/</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=48320456</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48320456</guid></item><item><title><![CDATA[New comment by adastral in "A staff engineer's journey with Claude Code"]]></title><description><![CDATA[
<p>PostgresTV livestreams "vibe coding" 1h sessions implementing small PostgreSQL features with Cursor (mostly claude-4-sonnet model) every week, by experienced PostgreSQL contributors. [0] is their latest stream.<p>I personally have not watched much, but it sounds just like what you are looking for!<p>[0] <a href="https://www.youtube.com/watch?v=3MleDtXZUlM" rel="nofollow">https://www.youtube.com/watch?v=3MleDtXZUlM</a></p>
]]></description><pubDate>Wed, 03 Sep 2025 14:53:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=45116522</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=45116522</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45116522</guid></item><item><title><![CDATA[Git-worktree – Manage multiple working trees]]></title><description><![CDATA[
<p>Article URL: <a href="https://git-scm.com/docs/git-worktree">https://git-scm.com/docs/git-worktree</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=44962250">https://news.ycombinator.com/item?id=44962250</a></p>
<p>Points: 8</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 20 Aug 2025 14:21:17 +0000</pubDate><link>https://git-scm.com/docs/git-worktree</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=44962250</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44962250</guid></item><item><title><![CDATA[Benchmarking Is Hard, Sometimes]]></title><description><![CDATA[
<p>Article URL: <a href="https://vondra.me/posts/benchmarking-is-hard-sometimes/">https://vondra.me/posts/benchmarking-is-hard-sometimes/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=44190582">https://news.ycombinator.com/item?id=44190582</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 05 Jun 2025 11:35:31 +0000</pubDate><link>https://vondra.me/posts/benchmarking-is-hard-sometimes/</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=44190582</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44190582</guid></item><item><title><![CDATA[Decomposing Transactional Systems]]></title><description><![CDATA[
<p>Article URL: <a href="https://transactional.blog/blog/2025-decomposing-transactional-systems">https://transactional.blog/blog/2025-decomposing-transactional-systems</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=43722692">https://news.ycombinator.com/item?id=43722692</a></p>
<p>Points: 18</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 17 Apr 2025 22:00:30 +0000</pubDate><link>https://transactional.blog/blog/2025-decomposing-transactional-systems</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=43722692</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43722692</guid></item><item><title><![CDATA[Dynamically estimating and scaling Postgres' working set size (2024)]]></title><description><![CDATA[
<p>Article URL: <a href="https://neon.tech/blog/dynamically-estimating-and-scaling-postgres-working-set-size">https://neon.tech/blog/dynamically-estimating-and-scaling-postgres-working-set-size</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=43278726">https://news.ycombinator.com/item?id=43278726</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 06 Mar 2025 11:02:27 +0000</pubDate><link>https://neon.tech/blog/dynamically-estimating-and-scaling-postgres-working-set-size</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=43278726</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43278726</guid></item><item><title><![CDATA[New comment by adastral in "Curl-Impersonate"]]></title><description><![CDATA[
<p>> I default to a headless browser<p>Headless browsers consume orders of magnitude more resources, and execute far more requests (e.g. fetching images) than a common webscraping job would require. Having run webscraping at scale myself, the cost of operating headless browsers made us only use them as a last resort.</p>
]]></description><pubDate>Mon, 30 Dec 2024 13:57:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=42549290</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=42549290</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42549290</guid></item><item><title><![CDATA[AWS CloudWatch and AWS OpenSearch launch an integrated analytics experience]]></title><description><![CDATA[
<p>Article URL: <a href="https://aws.amazon.com/blogs/aws/new-amazon-cloudwatch-and-amazon-opensearch-service-launch-an-integrated-analytics-experience/">https://aws.amazon.com/blogs/aws/new-amazon-cloudwatch-and-amazon-opensearch-service-launch-an-integrated-analytics-experience/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=42296796">https://news.ycombinator.com/item?id=42296796</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 02 Dec 2024 14:57:06 +0000</pubDate><link>https://aws.amazon.com/blogs/aws/new-amazon-cloudwatch-and-amazon-opensearch-service-launch-an-integrated-analytics-experience/</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=42296796</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42296796</guid></item><item><title><![CDATA[New comment by adastral in "Starcraft (A History in Two Acts)"]]></title><description><![CDATA[
<p>From <a href="https://www.codeofhonor.com/blog/the-starcraft-path-finding-hack" rel="nofollow">https://www.codeofhonor.com/blog/the-starcraft-path-finding-...</a><p>> whenever harvesters are on their way to get minerals, or when they’re on the way back carrying those minerals, they ignore collisions with other units<p>Maybe that's part of the fluid behaviour you noticed.<p>The blog contains more technical posts about StarCraft 2, so you might find that "special sauce" somewhere else in there :)</p>
]]></description><pubDate>Sun, 07 Jul 2024 08:56:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=40896166</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=40896166</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40896166</guid></item><item><title><![CDATA[New comment by adastral in "The Great Migration from MongoDB to PostgreSQL"]]></title><description><![CDATA[
<p>Not sure if this is what the above comment means by "atomic", but a shortcoming of Postgres' JSON support is that it will have to rewrite an entire JSON object every time a part of it gets updated, no matter how many keys the update really affected. E.g. if I update an integer in a 100MB JSON object, Postgres will write ~100MB (plus WAL, TOAST overhead, etc.), not just a few bytes. I imagine this can be a no-go for certain use cases.</p>
]]></description><pubDate>Fri, 29 Mar 2024 08:56:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=39861920</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=39861920</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39861920</guid></item><item><title><![CDATA[New comment by adastral in "How Figma's databases team lived to tell the scale"]]></title><description><![CDATA[
<p>Around ten heavily-updated (50-400k updated rows/min) tables ranging between 500M and 5B rows, 
with a couple tables over 40B rows each (5TB each IIRC).</p>
]]></description><pubDate>Thu, 14 Mar 2024 18:49:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=39707551</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=39707551</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39707551</guid></item><item><title><![CDATA[New comment by adastral in "How Figma's databases team lived to tell the scale"]]></title><description><![CDATA[
<p>I see they don't mention Citus (<a href="https://github.com/citusdata/citus">https://github.com/citusdata/citus</a>), which is already a fairly mature native Postgres extension. From the details given in the article, it sounds like they just reimplemented it.<p>I wonder if they were unaware of it or disregarded it for a reason —I currently am in a similar situation as the one described in the blog, trying to shard a massive Postgres DB.</p>
]]></description><pubDate>Thu, 14 Mar 2024 18:38:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=39707447</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=39707447</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39707447</guid></item><item><title><![CDATA[New comment by adastral in "Autogenerating a Book Series from Three Years of iMessages"]]></title><description><![CDATA[
<p>> they'll be encrypted<p>Since some months (years?) ago, WhatsApp lets you set up your own encryption password for the DB backup. I set one up and used <a href="https://github.com/ElDavoo/wa-crypt-tools">https://github.com/ElDavoo/wa-crypt-tools</a> to get access to the decrypted SQLite and run some analytics over my messages :)</p>
]]></description><pubDate>Thu, 07 Mar 2024 19:23:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=39633477</link><dc:creator>adastral</dc:creator><comments>https://news.ycombinator.com/item?id=39633477</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39633477</guid></item></channel></rss>