The definition and incarnation of "you don't need more"
This but mariadb
Not even close to the range of features nor the performance of Postgres.
Then why google uses mariadb instead of postgres?
Google isn't known for making good decisions.
And youtube, facebook, wikipedia, etc
Why not LAPP? IIRC before 2010 Postgres was much shittier than it is now, especially in predictable perfomance area.
>Why not LAPP? IIRC before 2010 Postgres was much shittier than it is now, especially in predictable perfomance area.
Before 2010, postgres was not optimized for simple read heavy workloads and was only better than the competition for performing very complex queries or for writes.
Because there was time where it was the only option. Postgres didn't start as an SQL database and they took a lot of time to make it portable to windows. It was also easier to get started learning mysql.
That's the explanation when it comes to YouTube and Facebook who were not built by great engineers and we're bootstrapped to express an idea. Facebook was built in PHP and MySQL. Not the greatest stack but it worked at first then they had to write hack for php and the rocksdb engine for mysql.
As for Wikipedia, you can probably use any database for Wikipedia. Even sqlite will do just fine.
- Storage engines.
- You can discard essential features like transaction isolation
Basically, you can treat MySQL as toolkit, rather than as RDBMS, and make non-SQL-compatible store for your load. Like Amazon did to make DynamoDB.
Mariadb is absolutely not the Google database. They use it for some niches but it's not what does the heavy lifting. Google used to work with mysql at its beginnings and they acquired very deep understanding of the software and made a lot of contributions to it. Because of licensing issues with Oracle who owns mysql they decided to switch to Mariadb which is a fork of mysql. But again, it's a small side db.
Google's main databases are built in house and are cloud spanner (for Google search and Google photos among others) and big table for Google Analytics and Google maps among others. .
Touched mysql last time 10 years ago, so they surely fixed that:
- no sequences
- no functions in `DEFAULT` (except current time, but only local)
- by default, it clamps out-of-range values, instead of rejecting with error
how sophisticated is a technology like pg?
does it btfo the ubuntu os?
does it pale compared to docker?
I don't know how it'd be measured, but what do you guys think?
do you have to be a genius to be a pg developer?
Postgres is waay more complex than both Docker and the layer built upon Debian called Ubuntu.
PostgreSQL has 1.5 million lines of code but this doesn't express how complex and rich the technology is. Mysql has 4.5 million lines of code and lacks behind in everything. It doesn't come close to postgres in terms of feature and neither does it come close to it in terms of performance despite having x3 more lines of code.
Postgres also barely has 120mb binary size versus 600mb for mysql and 6GBs for Oracle SQL.
so I guess you'd have to be smart to work on pg?
Yeah. If you're contributing to the core functionalities or working on the postgres backend you're likely a very good computer scientist.
If you want to be a contributor start by taking a high level look at how the software works. Consider this video as a high level introduction:
Once you have a better understanding of the software I suggest that you go through their code and familiarize yourself with it. In the mean time try to build a very small prototype of a relational db engine and join the discussions of the contributors.
good morning sir
Simply put, postgres is the most advanced database. It is also at the top of the list when it comes to performance. It's also the most SQL compliant database yet it is not a sql database. Postgres can be highly performant in many different formats. It can be:
- a document database with JSONB
- a very performant message queue
- a very performant time series database
- a full text search database that is close to the performance of elasticsearch yet not on par
- a graph database
It offers fine grained access control with row level security, has the most extensive data types, has the best implementation of database level business logic. You can have more powerful trigger function mechanisms than mysql, you can have cron jobs and background workers.
It's also in very active development and great features that redefine the scope of this piece of software are added in every year
I look like that, I say that
Also, Postgres got better at the only remaining front where it had an issue which is horizontal scaling. It can now be spread into multiple machines and do so as well if not even better than mysql.
Figma managed to handle everything from one single postgres server until very recently when they scaled their postgres database horizontally
Your email address will not be published. Required fields are marked *
Save name for the next time I post.