It seems the field of databases is constantly changing.<p>As such, what would you recommend someone just getting into website coding and applications should study as their first database, and why?<p>Are there any databases a beginner should avoid for a while?<p>Any on the downswing so heavily that maybe they should not be bothered with at all?
It's hard to go wrong with Postgres in my opinion.<p>It does a lot of things right, it's open-source, and it's mainstream enough that there's plenty of learning material online and plenty of job opportunities if that's a concern.
MySQL/Maria database
Its pretty ubiquitous any web host has it , and can easily install on most any modern OS.
Extremely well documented (especially for beginners tons of books magazines, etc.), not too hard to learn, pretty forgiving, very versatile.<p>When you have something specific in mind there are databases optimised for specific applications, but you can always fake it with MySQL for till you are ready.
Many of the products you mention are powered by some SQL db. Either MySQL or postgres should be fine.<p>This is old, boring tech but works fine and will scale up without issues for the workloads you mentioned. IIRC even stackoverflow.com is powered by a SQL db.<p>For a beginner, learning this will offer most value.<p>For more scalability, you have to enter nosql territory. Typically you add caches in front of your db to speed things up. These are not tables, but key-value stores. Redis and memcached are quite popular.<p>When you need even more, you can use nosql databases. Normally you would just use what your cloud provider offers, unless you have a team who can administer your own. However, it’s important to understand that they don’t offer more functionality than SQL dbs, but less: features are often sacrificed for the sake of performance, at the expense of increasing complexity as well.<p>So in my opinion, just learn SQL first, and anything else if needed.
Id say try em out as you see them fit. Postgresql for relational, redis for cache or some streams, elasticsearch for search, clickhouse for analytics.. each of them is intended for different use cases.<p>The managed instances by cloud vendors (microsoft azure, google cloud platform, amazon web services, digitalocean) should also help you getting up and running without worrying about the infra side of things on small scale projects<p>Bit outdated but comparisons<p><a href="https://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis" rel="nofollow">https://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis</a>
Google AppEngine and Cloud DataStore<p>Free tier. Schemaless. Frees you up to focus on your app. Infinitely scalable. And you can train sophisticated models with AutoML. Best of Luck ;)