Databases are something I always wanted to explore more and get better at. Thus the question, what DBs would you recommend learning for 2021? Which ones do you see holding future potential?
As of now, I like PostgreSQL for relational and MongoDB for all the non-relational stuff. Both seem to be solid for their purposes.
Top comments (32)
My suggestion is PostgreSQL :-)
They recently released version 13. It's not going away any time soon. You can get a solid understanding of relational database management systems which will also be useful to know when not to use them.
Second postgres! I've been working through tutorials at postgresqltutorial.com/. A brilliant resource.
Also i think supabase.io is going to make postgres more accessible than ever.
Thanks for your input, valuable resources πβ€
Awesome to see you participating, too π First thing that comes to mind is the great job you do in the Forem repo ππ―
ahah thanks Madza!
I know I'm biased towards PostgreSQL but that's because I've used it for a long time and it has never let me down really :) True that there are situations were a relational DB is not the best idea but that's mostly a generic software engineering type of consideration, I don't think it's related to the specific tool, I would say the same if I were more familiar with MySQL than I am with Postgres.
If you view picking up PostgreSQL skills as a gateway to learn relational DBs better I think you might get to your goal of learning databases better. I guess it's the same if you decide to spend more time on MongoDB or an alternative to learn the pros and cons of NoSQL.
Keep the "theory" in mind while you explore those goals, this way your skills will be more transferable between one and the other
Maybe do one at a time?
That's in my list for 2021 for sure π I believe most of the businesses are CRUD based (especially in corporate businesses), so being a master of at least one database per its type is essential π
I've worked in various types of software companies before joining Forem and I've never seen one not use a relational DB so I totally agree. A lot use multiple types of DBs (we do as well, by using PostgreSQL and Redis, though we don't do anything advanced on Redis yet) but the relational ones are always there somewhere
It all depends on what purpose you need it for...
See this video first
This is an excellent starting point. π Every tech has its own purpose and it's not the number of technologies you know that counts - it's your skill to identify the right tool for the particular job π
My suggestion is:
Searching: Elastic Search
Graphos: Neo4J
Cache: Redis
Clouds Data bases: SQL Azure, Cosmos DB, Dynamo DB
Documentals: MongoDb, Firebase
Relationals: SQL Server, Postgress, Oracle, Whatever is good
That's a great list, thanks πβ€
Check out HarperDB! We strive to combine the best of both relational and non-relational worlds into a single database solution. It's simple and easy to use, all operations are executed through a single API endpoint, so you can focus on your application instead of database administration.
HarperDB
what he said
If it's going about RDBMS then PostgreSQL definitely worth attention. It's most advanced in regard to functionality and query optimization open source DB. Another relational DB which worth attention is the YugabyteDB. It makes an attempt to be compatible with PostgreSQL but unlike it, it's a distributed, highly scalable DB.
Among non-SQL solutions I think Cassandra and Apache Ignite are most interesting and useful.
I'm really enjoying Redis. Fast, stable, and full of functionality.
Its main challenge, I think, comes from forcing you to think of structuring data differently. Especially coming from a strictly relational database background.
I've seen it mentioned quite often before π Never done anything in it, tho π Thanks for the suggestion π
I think the general view on Redis is that it's just a cache mechanism (that's why I started using it), but then learned there's so much more to it that that.
2021 is the year of Redis for me. I'm going to find more use cases for it, and build stuff with it.
PostgreSQL for sure. But I personally prefer MySQL / MariaDB for ease of use and availability everywhere
RDBMS is still enough for most of the application. Adding to that, one thing that interesting to me is the NewSQL, to name a few, TiDB and CockroachDB. It is like RDBMS with NoSQL scalability.
I say that PostgresSQL and MongoDB are great, MAYBE some day you should take a look at MariaDB documentation is not that different from PSQL