SQL - Which to use ?

GoodBetterBest

Supremacy Member
Joined
Jan 23, 2019
Messages
6,239
Reaction score
2,119
Hi !

Long long time didn't touch SQL. So now, refresher. Question is which SQL database I should use now. Free for personal practise use. Looking at both installing locally and cloud (can be different local/cloud db).
For NoSQL, which is more widely use ? MongoDB ? Is it impt to pick up MongoDB also ?

Thanks for any advice. Greatly appreciate.
 

davidktw

Arch-Supremacy Member
Joined
Apr 15, 2010
Messages
13,547
Reaction score
1,301
Hi !

Long long time didn't touch SQL. So now, refresher. Question is which SQL database I should use now. Free for personal practise use. Looking at both installing locally and cloud (can be different local/cloud db).
For NoSQL, which is more widely use ? MongoDB ? Is it impt to pick up MongoDB also ?

Thanks for any advice. Greatly appreciate.

Without a specific use case, I don’t think you need to be too bothered by any of the popular databases like MySQL, MariaDB, Postgresql, PerconaDB, MsSQL. For NoSQL, Cassandra, MongoDB, Redis will works fine. If you want to try some cloud providers options like DynamoDB from AWS, etc you should.

Before discussion about which is better, it is often better to work on the schema design. Getting it inappropriate for your use case, no best db implementation will twist it back. :)

Between SQL and NoSQL, the design concepts are different and give you different performance and caveats, in areas of high availability, scalability and ease of development.

First you need to think about what you are going to design, what are the challenges you think a specific brand and type of database will affect your development direction. It doesn’t mean when someone found good use with one that you ought to follow suit. That being said most RDBMS are proven implementations which should be often your first choice, unless you know there is something you can’t find in it. :)

For SQL, simply start off with MySQL and its variants/fork, you won’t be wrong. :)
 
Last edited:

GoodBetterBest

Supremacy Member
Joined
Jan 23, 2019
Messages
6,239
Reaction score
2,119
Thanks for the long reply. Very much appreciated.

I'm not very much a SQL person. I used to work on other products. But occasionally needed to use SQL. So I normally just look up online and try to get the SQL to serve my needs. So I don't have formal SQL training. But I understand some basics of SQL. Honestly, I'm not good at SQL at all. Can call me an old newbie.

Now, I intend to get into Data Science/Analysis. For large dataset, I may need to host on a database and that where I'm coming from. I'm looking at Python/R now. I think cannot escape SQL, that's why I'm doing basics SQL refresher.

I'm trying to get hold of a SQL software, both local/online and cloud. So looking for a recommendation which to use. One that would be popular (across platform) and more commonly use so that my efforts pays off the most.

So I will start off with MySQL.

For NoSQL, why I mentioned it is that it keeps popping up on my FB. I will look into it later, but not a priority now.

Thanks again !

Without a specific use case, I don’t think you need to be too bothered by any of the popular databases like MySQL, MariaDB, Postgresql, PerconaDB, MsSQL. For NoSQL, Cassandra, MongoDB, Redis will works fine. If you want to try some cloud providers options like DynamoDB from AWS, etc you should.

Before discussion about which is better, it is often better to work on the schema design. Getting it inappropriate for your use case, no best db implementation will twist it back. :)

Between SQL and NoSQL, the design concepts are different and give you different performance and caveats, in areas of high availability, scalability and ease of development.

First you need to think about what you are going to design, what are the challenges you think a specific brand and type of database will affect your development direction. It doesn’t mean when someone found good use with one that you ought to follow suit. That being said most RDBMS are proven implementations which should be often your first choice, unless you know there is something you can’t find in it. :)

For SQL, simply start off with MySQL and its variants/fork, you won’t be wrong. :)
 

davidktw

Arch-Supremacy Member
Joined
Apr 15, 2010
Messages
13,547
Reaction score
1,301
Thanks for the long reply. Very much appreciated.

I'm not very much a SQL person. I used to work on other products. But occasionally needed to use SQL. So I normally just look up online and try to get the SQL to serve my needs. So I don't have formal SQL training. But I understand some basics of SQL. Honestly, I'm not good at SQL at all. Can call me an old newbie.

Now, I intend to get into Data Science/Analysis. For large dataset, I may need to host on a database and that where I'm coming from. I'm looking at Python/R now. I think cannot escape SQL, that's why I'm doing basics SQL refresher.

I'm trying to get hold of a SQL software, both local/online and cloud. So looking for a recommendation which to use. One that would be popular (across platform) and more commonly use so that my efforts pays off the most.

So I will start off with MySQL.

For NoSQL, why I mentioned it is that it keeps popping up on my FB. I will look into it later, but not a priority now.

Thanks again !

SQL is just the query language. NoSQL is not new. There is NewSQL that turn back to RDBMS with distribution in the design. After all the query language is a powerful and expressive system. Most of the DB we see are OLTP which are good for transactional usage, but not performant for analytical purposes. Data warehouses normally uses columnar design database that facilitate aggregation functionals. Data are stored internally column wise instead of row wise. It is still SQL, but the columnar db are tuned for different purposes.

Once you get off the ground with your analytical workflow, then you can look into which kind of db gives you the necessary performance for what they are designed for. SQL is not the only way to do analytical work. One can also use map-reduce techniques.

If you need large amount of space and computing resources, cloud providers are your friends.
Instead of setting up the infra and managing it, cloud providers have managed services for them.

For example, AWS RDS is the RDBMS managed service. You just specify the resources you need and with a few simple clicks, you can have a fully managed highly available RDBMS with even options to create replicas. If you need columnar DB, AWS have redshift. If you need map-reduce services, there is AWS EMR services.

AWS S3 is also a very powerful data storage tool. It can be simply used as a object-value storage facility, or a website content storage, or backup and archival, and also integrate with services like AWS Athena and S3 select for large scale querying facilities. Other cloud providers may also offer similar featured services that you will want to look into.
 

GoodBetterBest

Supremacy Member
Joined
Jan 23, 2019
Messages
6,239
Reaction score
2,119
Thanks very much. I will keep in mind. Appreciated.

SQL is just the query language. NoSQL is not new. There is NewSQL that turn back to RDBMS with distribution in the design. After all the query language is a powerful and expressive system. Most of the DB we see are OLTP which are good for transactional usage, but not performant for analytical purposes. Data warehouses normally uses columnar design database that facilitate aggregation functionals. Data are stored internally column wise instead of row wise. It is still SQL, but the columnar db are tuned for different purposes.

Once you get off the ground with your analytical workflow, then you can look into which kind of db gives you the necessary performance for what they are designed for. SQL is not the only way to do analytical work. One can also use map-reduce techniques.

If you need large amount of space and computing resources, cloud providers are your friends.
Instead of setting up the infra and managing it, cloud providers have managed services for them.

For example, AWS RDS is the RDBMS managed service. You just specify the resources you need and with a few simple clicks, you can have a fully managed highly available RDBMS with even options to create replicas. If you need columnar DB, AWS have redshift. If you need map-reduce services, there is AWS EMR services.

AWS S3 is also a very powerful data storage tool. It can be simply used as a object-value storage facility, or a website content storage, or backup and archival, and also integrate with services like AWS Athena and S3 select for large scale querying facilities. Other cloud providers may also offer similar featured services that you will want to look into.
 

ivanftp

Junior Member
Joined
Oct 11, 2020
Messages
50
Reaction score
2
Start with MS SQL or Postgres. Structured database easy to use. You don't need to know a lot of things to get started. Basic stuff like selecting rows based on a certain condition, inserting rows, updating rows, deleting rows and joining different tables together.
 
Important Forum Advisory Note
This forum is moderated by volunteer moderators who will react only to members' feedback on posts. Moderators are not employees or representatives of HWZ Forums. Forum members and moderators are responsible for their own posts. Please refer to our Community Guidelines and Standards and Terms and Conditions for more information.
Top