Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K

    Crunchy Data Blog

    crunchydata.com · Company blog · on HN since 2016

    Crunchy Data's blog, from a Postgres provider, offers tips, performance findings, and features for PostgreSQL and its analytics integrations.

    Visit blogHN submissions
    DatabasesDevOps & Cloud
    What HN says

    HN commenters recommend Crunchy Data as an enterprise Postgres provider and note the company's incentive to do a lot with Postgres alone.

    Stats for nerds
    187HN people shared it
    595linked in comments
    7.6Kstory points
    Mar 2026last shared
    2017people per year2026

    Top posts on HN

    1. 1
      Learn Postgres at the Playground – Postgres compiled to WASM running in browser
      3 people · 814 points · first shared 2022 · 171 comments on HN
    2. 2
      Postgres Full-Text Search: A search engine in a database
      1 person · 601 points · first shared 2021 · 137 comments on HN
    3. 3
      Tips for a Healthier Postgres Database
      3 people · 335 points · first shared 2021 · 84 comments on HN
    4. 4
      Postgres full-text search: A search engine in a database (2021)
      4 people · 313 points · first shared 2022 · 91 comments on HN
    5. 5
      Postgres Indexes for Newbies
      1 person · 304 points · first shared 2022 · 40 comments on HN
    6. 6
      An overview of distributed Postgres architectures
      2 people · 278 points · first shared 2024 · 50 comments on HN
    7. 7
      Generating JSON Directly from Postgres
      2 people · 273 points · first shared 2021 · 153 comments on HN
    8. 8
      Is Postgres read heavy or write heavy?
      1 person · 192 points · first shared 2025 · 55 comments on HN
    9. 9
      Building a recommendation engine inside Postgres with Python and Pandas (2020)
      4 people · 185 points · first shared 2021 · 43 comments on HN
    10. 10
      Postgres Data Flow
      1 person · 179 points · first shared 2022 · 7 comments on HN

    What HN people wrote when they linked it

    • brandurDec 2020

      (Author here.) I think you're confusing a couple different major classes of languages — declarative versus procedural. I said specifically "most expressive ever for querying and manipulating data", and I'd stand by that.

      The nice part about SQL compared to the languages you've cited is that you just need to specify the "what" and not the "how". I tell it what data to fetch, where I want it from, how I wanted it grouped/sorted (etc.), and the engine figures out the best (and probably a very efficient) way to do that. This is different from a procedural language like Python or Rust where it'd be on me to also define every implementation detail — get data from here, join by doing this and with that algorithm, sort what comes out, ...

      This gives SQL a number of very nice properties:

      * It's very fast and succinct to write.

      * Even very complex queries are likely to be executed as optimally as they can be (because database engines tend to be very good at this).

      * It's so high-level that it can actually get more performant over time. See for example Postgres 12, which eliminated an optimization fence for CTEs (common table expressions) [1], which means that a lot of queries got faster automatically, without the user having to do _anything_.

      I love a lot the languages you listed, but SQL is a different animal, and amazing in a way that's quite unique.

      ---

      [1] https://info.crunchydata.com/blog/with-queries-present-future-common-table-expressions

    • karmelappleMay 2024

      We do, although we're in the middle of moving our entire Heroku Postgres spend over to Crunchy Data [1].

      We were getting close to one of the big jumps on the standard pricing of Heroku Postgres, and we would have had to basically double our monthly cost to lift the max data we could store from 1.5TB to 2.0TB. On Crunchy Data, that additional disk space will be like 1% more rather than 100% more.

      While investigating Crunchy, I ran some benchmarks, and I found Crunchy Bridge Postgres to be running 3X faster than Heroku Postgres.

      Heroku seems to be working on some interesting new things, but I feel burned by the subpar performance and lack of basically any new features over many years. I don't know if the new Aurora-based database will be faster than Crunchy, but the benchmarks they're talking about sound like they're finally about to catch them. But we also have better features on Crunchy, too, such as logical replication. Logical replication is still not available on Heroku.

      The experience for deploying apps and having add-ons is still pretty easy, but we'll see how that improves. HTTP2 support is still in beta.

      1. https://www.crunchydata.com

    • rektideDec 2022

      Both of the kubernetes operators are extremely good. Zalando's uses Patroni for HA, and CrunchyData's has their own HA impl. Both have great backup systems built in.

      > Any way the Postgres DB can be setup in a fire and forget setup and scaled just by adding new nodes for read and write?

      Generally I'd reply yes and no, yes, adding readers is pretty easy with these operators. No, postgres is generally single writer.

      But the CrunchyData k8s operator (pgo) has active-active mode. I dont know much scalability this really buys, since ultimately everyone needs to soak the write load. There is sharding too, built into postgres, but I count myself as blessed that so far straight up verticle scaling has tackled every problem I've ever had and sharding hasnt beem required. Anyways here's a post on setting up active active in pgo, https://www.crunchydata.com/blog/multi-cluster-postgres-federation-on-kubernetes-with-postgres-14-using-gitops

      One thing missing from your post is any information on workload. What kind of data are you storing, what kind of use are you expecting,... it's hard to make recommendatuons in the abstract.

    • asguyApr 2023

      I think you're projecting an implementation of a queue in Postgres, which isn't how most people implement these things. [0] We're not doing table level locks, or creating contention with multiple queue producers or consumers, and they're not "one typo away from disaster in prod".

      To do this right, you're using row level locking e.g. SELECT FOR UPDATE/SKIP LOCKED [1], and hopefully you're already using idle_in_transaction_session_timeout to deal with total consumer failures. A properly designed queue in Postgres runs more-or-less in parallel, and supports (really fantastic features like) atomic row locks across all resources needed to serve the queue request.

      If you need extremely long consumer timeouts, it's also totally fine to use RLLs in addition to state on the job itself.

      [0] - https://www.crunchydata.com/blog/message-queuing-using-native-postgresql
      [1] - https://www.2ndquadrant.com/en/blog/what-is-select-skip-locked-for-in-postgresql-9-5/

    • OrvalWintermuteSep 2021

      Postgresql can do everything I need, but not everything I want, and apologies to mysql fans, but I refuse to touch it.

      And, I think over the years they have been such an awesome community that has helped me irregularly when I popped into IRC every year or two for a problem I was having. https://github.com/davidfetter ; https://github.com/RhodiumToad ; https://github.com/bmomjian - you are great peeps!

      What I would like to see are more security usability enhancements over and above what you find in https://www.crunchydata.com/products/hardened-postgres/

      Security Enhancements List:

      Attack Resistance

      Better protections for the DBMS itself in assume compromised scenarios, or malicious users

      Customized implementations per compliance/security regime

      Accelerators for various security configurations

      Self-audit, self-secure

      Functionality Enhancements List:

      Continuous Sync Postgres to other serious DB (not a one-way sync, not a DB move)

    • wencMay 2025

      That requires data to already be in Postgres, otherwise you have to ETL data into it first.

      DuckDB on the other hand works with data as-is (Parquet, TSV, sqlite, postgres... whether on disk, S3, etc.) with requiring an ETL step (though if the data isn't already in a columnar format, things are gonna be slow... but it will still work).

      I work with Parquet data directly with no ETL step. I can literally drop into Jupyter or a Python REPL and duckdb.query("from '*.parquet'")

      Correct me if I'm wrong, but I don't think that's possible with Postgis. (even pg_parquet requires copying? [1])

      [1] https://www.crunchydata.com/blog/pg_parquet-an-extension-to-connect-postgres-and-parquet

    Related

    Citus Data Blogcitusdata.com224 people

    Citus Unforks from PostgreSQL, Goes Open Source

    Citus Data Blog
    Company · last shared 2026
    MongoHQ Blogblog.mongohq.com22 people

    Making remote work work: An adventure in time and space

    MongoHQ Blog
    Company · last shared 2014
    Ubicloud Blogubicloud.com53 people

    Show HN: Open-source x64 and Arm GitHub runners

    Ubicloud Blog
    Company · last shared 2026
    Heap Blogheap.io28 people

    We saved millions in SSD costs by upgrading our filesystem

    Heap Blog
    Company · last shared 2026
    CYBERTEC Blogcybertec-postgresql.com94 people

    Postgres scaling advice

    CYBERTEC Blog
    Company · last shared 2026
    Tembo Blogtembo.io28 people

    pg_timeseries: Open-source time-series extension for PostgreSQL

    Tembo Blog
    Company · last shared 2025
    pganalyze Blogpganalyze.com54 people

    Waiting for Postgres 18: Accelerating Disk Reads with Asynchronous I/O

    pganalyze Blog
    Company · last shared 2026
    ParadeDB Blogparadedb.com25 people

    We made Postgres writes faster, but it broke replication

    ParadeDB Blog
    Company · last shared 2026