Messaging Systems / Large Data Databases choice

Just wondering what everyones choices in database are when working with large data that only certain users can see etc a example of this is Discord

You have the server chat groups where all users in the chat see the messages and same with private messages users can join and chat and only specified users can access the messages

I believe Discord uses a NoSql Database for this Cassandra, is NoSql the way to go for messaging systems and larger amounts of data?

This is the difference between us plebs and those who have “high-scale” industry experience :ghost:

Not having previous experience building such high-scale systems, I would try using PostgreSQL with partitions, or even better, TimescaleDB and their Hypertable functionality.

Once you reach a certain scale, most likely you’d have money to assemble a team of people familiar with such distributed, high-scale databases, and you’d be able to plan a migration to such new database.

At the end of the day, don’t overengineer :wink:

2 Likes

Thanks for the advice I will be looking into Postgres as well as NoSQL databases like MongoDB as from what I’ve seen so far most of the big companies that handle message systems like Discord Facebook Reddit etc all look to be using either all in NoSQL or SQL as main tables and combined with NoSQL.

I am currently looking into the Mongo Extension for Wappler from I think Ray as NoSQL is currently not supported

Still looking into things at the moment :slight_smile:

Also found this for PostgreSQL: