Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: What web database should a newbie learn first?
9 points by GarrisonPrime on Jan 6, 2021 | hide | past | favorite | 8 comments
It seems the field of databases is constantly changing.

As such, what would you recommend someone just getting into website coding and applications should study as their first database, and why?

Are there any databases a beginner should avoid for a while?

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.

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.

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.

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.

For a beginner, learning this will offer most value.

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.

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.

So in my opinion, just learn SQL first, and anything else if needed.


SQLIITE first and then PostgreSQL.


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.

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

Bit outdated but comparisons

https://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis


Redis and Postgres is all I need.

When I need scale, I switch to managed solution offered by one of the hyperclouds.


Mongo to cover document databases. Postgres to cover relational databases. That should do the trick.


Google AppEngine and Cloud DataStore

Free tier. Schemaless. Frees you up to focus on your app. Infinitely scalable. And you can train sophisticated models with AutoML. Best of Luck ;)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: