this post was submitted on 26 Jun 2026
39 points (97.6% liked)

Programming

27464 readers
253 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 3 years ago
MODERATORS
top 14 comments
sorted by: hot top controversial new old

Seems, at a cursory look, to be a pretty solid intro to PostgreSQL. As @Valmond@lemmy.dbzer0.com commented, people sleep on SQLite. I think a lot of people skip SQLite because they think they need more. Hell, just about all my personal uses are covered with GNU recutils.

[–] sxan@midwest.social 6 points 2 days ago (1 children)

I hate admining PostreSQL, and groan when some app I want to use requires it. Don't get me wrong: in a corp environment where someone else is responsible for backup/restore and permissions, pgsql > *. Tooling for it is great. It has every feature. But if I have to maintain it myself, I'll chose a single file to copy and back up every time: sqlite FTW.

[–] dallen@programming.dev 3 points 2 days ago (1 children)

CloudNativePG with barman backups makes it quite manageable.

[–] towerful@programming.dev 3 points 2 days ago

Yes. Not wanting to deal with more than a single file for backup/restore of your service?
Use kubernetes.

That doesn't quite track

[–] TehPers@beehaw.org 6 points 2 days ago (1 children)

I swear Postgres always has new features whenever I look at it again.

I was building a system for long running durable job queues with multiple workers and of course Postgres has a solution for that. You can do row-level locking in a transaction to "reserve" jobs for the duration of that transaction, and you can use SKIP LOCKED to skip over reserved jobs so workers don't block each other. There's also LISTEN and NOTIFY if you want pub/sub to track when jobs complete, for example.

[–] MonkderVierte@lemmy.zip 1 points 2 days ago (1 children)
[–] TehPers@beehaw.org 2 points 2 days ago

The row-level locking and SKIP LOCKED seem like appropriate features for a SQL-based DBMS. I find it odd that it's not more common, actually. Even MSSQL doesn't make any promises about locking just a row and might decide to lock a whole page instead, from what I read anyway.

NOTIFY/LISTEN might be scope creep though. I'm not really sure what led to it being implemented.

[–] Valmond@lemmy.dbzer0.com 4 points 2 days ago (3 children)

Or SQLite for embedded systems, and a NoSQL for no-sql, and MariaDB for FOSS DB.

Did I forget anything?

[–] atzanteol@sh.itjust.works 4 points 2 days ago (2 children)

And Oracle if you have way too much money just kicking around.

[–] seblin@lemmy.world 5 points 2 days ago

Even if I was a *illionaire I'd rather gargle lava rocks than touch Oracle with a mile long pole

[–] terabyterex@lemmy.world 4 points 2 days ago

if tpu give rhat money to oracle you are finding an extreme facist who believes our entire life should be recorded by the government and stored on oracle servers. he honestly said it will get rid of crime since you will alwaus be watched.

[–] MonkderVierte@lemmy.zip 1 points 2 days ago* (last edited 1 day ago)

Orbitdb or p2p. Also, XML.

[–] Fedop@slrpnk.net 1 points 2 days ago (1 children)

And DuckDb for columnar data storage

[–] Valmond@lemmy.dbzer0.com 3 points 2 days ago

Like an excel sheet?