Latest posts from John Porvaznik

  • 14 min read

    Using Postgres and pgRouting To Explore The Smooth Waves of Yacht Rock

    John Porvaznik

    pgRouting is a powerful routing tool, usually used for pathfinding/mapping/direction applications. (See Paul Ramsey's introduction to pgRouting here ). It is, however, also a robust graph db implementation, and can be used for much more than just finding the directions to your great aunt Tildy’s. Yacht Rock (as if you didn’t know) is a music genre created well after its active era. It’s characterized by smooth dulcet sounds that bring to mind wavy blond-haired waspy men in boat shoes, and ult...

    Read More
  • Avoiding the Pitfalls of BRIN Indexes in Postgres

    John Porvaznik

    UPDATE : Correlation with physical order is still the key BRIN pitfall to watch. Postgres 14+ adds richer shapes ( , Bloom) for outliers and less-correlated equality lookups; on 18+ async I/O speeds the bitmap heap path that follows a BRIN hit. See Postgres 19: How Our Advice Has Changed Since We Wrote It . Postgres has a number of different index types. You’ve got B-Tree, GIN, GiST, Sp-GiST, and BRIN. BRIN is a lightweight index that often goes misunderstood. When implemented correctly, it off...

    Read More