Something people often don't get is how columnar databases and row-based databases are different and why they are the way they are. It comes down to a fundamental fact about data storage on computers.
We as humans are used to working with data in two dimensional grids (tables, spreadsheets, even paper and pencil financial ledgers). But computers can't store data in two dimensions. Computers store data in 1-dimensional arrays. So in order to store that table, each data point has to be stored one after the other in a long list.
There are two ways to do this.
1 - Row-based: You go through a row adding each data point after the next for the entire row, then you move on to the next row.
2 - Columnar: You go through a column adding each data point in the column after the next for the entire column, then you move on to the next column.
Thus, if you are using a database for transactions you'll want row-based.
Imagine here a customer logging into your SAAS platform to change their login details. It's useful to have all of that customer's information close together and easier to access and manipulate since that is the data they will be interacting with.
Likewise, if you are using a database for analytics you'll want to use columnar.
Imagine it's that same data of customers using your SAAS platform but now you are trying to extract insights from that data. It wouldn't be very useful to pull up a full row of data for a single customer, but it would be extremely useful to pull up the entire column of data on how often customers login to the platform.
This is just a silly made up example, but hopefully you get the idea: the data should be stored based on how you are most-likely to need to access it.
I'm simplifying a bit, but I hope this helps form some intuition about what's happening behind the scenes.