I wonder what metrics they are looking at to figure out that it's "Fast Growing", under "Viral adoption" and "A leading relational database brand"? Probably they have some insight that I don't, or this is just a press release filled with the usual marketing lies.
It was my impression that many distros alias mariadb as mysql because it's the capital-f Free version so when you install the default distro mysql you are actually installing mariadb.
I think this was more common years ago. MySQL and MariaDB have diverged more in the years since which means that people want to know which they're installing. For example, RedHat Enterprise Linux used MariaDB as the default in RHEL 7, but RHEL8 splits them back out.
While they're still quite similar and many of the differences might not be something that you hit, there are enough differences that it should be explicit.
This was really surprising. Back when RHEL 7 launched, it really looked like MariaDB was going to take over from MySQL. It doesn't look that way anymore. I suspect the reason is that Maria diverged too much, and people didn't want the risk of using something that they couldn't migrate away from.
Regardless, where possible, I use non-relational. When relational is required, I use Postgres.
Simpler, more flexible data model along with speed / storage efficiency (you’re not updating many indexes so writes are much simpler). Your transaction layer data model should be as flat as possible; enrich with relational data in your analytics systems and data warehouses to optimize query speed.
Beware however that this flexibility and initial ease is more often than not a slippery slope into chaos.
This article put it really well in my opionion: There are no schemaless databases, just the ones with an explicit schema and the ones with their schema defined in a couple hundred places in code.
One of them is slightly easier to start out with, the other to evolve, maintain and communicate (double serving as self-documentation) across multiple engineers.
The Internet is usually not presented to you in real-time in 3rd normalized form. There are times when you can control the data sources, but many times you will be presented with data in real time, and you cannot spend the time to normalize everything.
A lot depends on the data you have, and the data you anticipate. If you have well-controlled data sources, sure, 3rd normalized form and tables with JOINs.
But sometimes you have to deal with the data you're handed. Denormalized and only, at best, semi-structured. Then it's time for NoSQL.
i.e., choose the right tool for the data you have and the queries you need. Don't try to force-fit the data to a tool just because you're used to it.
Analogy: use a hammer for a nail, and a screwdriver for screws.
80% of the many zetabtyes of data on the Internet will soon be unstructured. Of the remaining 20% of structured data, only a fraction of it would even qualify as relational.
Other structured data could be simple key-value stores, tabular row-and-column stores (single table, no joins), and even graph data models. Like, an Excel spreadsheet is "structured." But it's not a SQL RDBMS.
All of which are basically "NoSQL" though you can shove it in an RDBMS if you want. Just as you can slurp an Excel spreadsheet into a RDBMS. Still doesn't make Excel "relational" per se.
Can you cite a source that shows the opposite to be true?
I don't have $4,500 to throw at IDC right now, but their latest in 2021 shows that "structured" data, while still smaller than unstructured data in absolute volumes, is now growing faster than the unstructured data. Basically by tagging it with metadata. (I guess that gives a video "structure?") But this metadata management can be done by use of NoSQL, as is popular within IIoT spaces, or by streaming OOT video providers, not just by throwing all data into an ACID-compliant, locking and blocking transactional RDBMS.
> There are no schemaless databases, just the ones with an explicit schema and the ones with their schema defined in a couple hundred places in code
This is a false dichotomy - there are better ways of self-managing the schema than "couple hundred places in code." There are valid usecases where a schemaless db is the better option (e.g. when you're recording self-describing data. Or when there is an implicit, consistent structure to the data - but the engineers won't know it at development time. Or when you want to do a full-take of structured data including unknown fields without losing data that's not in your DDL without resorting to file blobs, requiring additional data management)
> schema defined in a couple hundred places in code
Blame the developer who spread data specs in many places, not the database.
The application should have a single interface to interact with the database, hiding the implementation. All data specs should do in a single place, inside this interface.
But search queries of everyone using either DB on a day-to-day, high level development basis will probably just search for mysql and get better results. This is definitely what drives this google trend
FreeBSD is odd: you install it with `pkg install mariadb-{server,client}` but you start it with `service MySQL-server start`.
(The package name is moderated by the FreeBSD ports team, but the port (MariaDB) installs its service and gives itself whatever service name it desires.)
Depends on your use case. PostgreSQL is better if you actually USE any of its more advanced features (e.g. PL/pgSQL, JSON support, etc). But if your data model is simple and your need for scale is high, then MySQL is FAR easier to cluster and scale. Especially if you're working with Percona or another MySQL variant.
I am an almost daily user of mariadb. However, when i google anything mariadb query wise i instead type mysql. As the two dialects are nearly identical but there is more documentation available for the mysql search keyword on google.
There's an interesting push-and-pull here. Keep the existing dialect to make it easy to switch, or add differentiating features that may introduce dialect incompatibility. An issue as old as time for SQL DBs.
At searching? I can't comment on bing but duckduckgo is different, not necessarily better. In fact for vague matches and context sensitive terms it's quite a bit worse than google.
Keep in mind this is changing over time. Search engines do not stand still, I keep bouncing between Google and DDG, the former has been steadily decreasing in quality and the later increasing to the point that I now use DDG first.
I'm not necessarily saying your opinion at this moment in time will change, only that you should re-evaluate it occasionally.
Most are either sticking with MySQL ( which is still working fine ) or moved to PostgreSQL. MariaDB is sort of in a very odd position.
Had Oracle completely abandoned MySQL like they did with Solaris it would have been an easier choice to move to Maria. Instead they nurture it like they did with Java.
Although I am wondering if they will ever release 9.0.
We are running mariadb for many years on a 50k request per second app. Works pretty fine. Why should we migrate to postgress? I know many mid sized projects relying on MariaDb. It's a stable database proven in many different scenarios.
Not suggesting everyone should move to Postgres, it was just a general observation from online and offline discussions. I know MariaDB works fine if not great. It is just comparatively speaking not getting much market shares.
I am surprised how low postgres ranks in those trends. I guess I have been in an echo chamber for too long, because my perception was that it was much more pervasive.
These days, most smaller users go with a managed DBaaS such as AWS RDS, and on RDS MySQL gets massively more usage than MariaDB.
I build schema management software for MySQL and MariaDB, https://www.skeema.io, used by several hundred companies. Among my userbase, MariaDB is a tiny minority, to such an extent that I wonder if it's worthwhile to continue keeping up with their new quarterly release schedule.
WordPress is very widely used, but it is not "60% of the internet" (or even 60% of the web) based on any statistics I see anywhere. Some sites say it's 60% of all CMS's; perhaps you may be transposing these stats?
Anyway, among WP usage, I would confidently wager that the percentage running in "cheap VPS" setups is declining fast each year. Many different reasons for this. The heyday of smalltime independent bloggers (on WP or otherwise) was a decade ago. Large SaaS hosts (including the official wordpress.com) make up a big chunk of WP hosting. Security is a huge issue with self-hosted WP. Companies using WP as a CMS aren't going to use a tiny VPS.
There are still a lot of WordPress instances on cheap VPS setups, don't get me wrong. I just don't believe it's still such a major force where it would make up a majority of new mysql/mariadb installations anymore.
To clarify, my comment was based on anecdotal discussions and interactions with users, issue reports, feature requests, user enthusiasm for new MySQL support/functionality vs relative lack of enthusiasm for new MariaDB support/functionality, etc.
The Skeema CLI is able to accurately identify your database version and flavor (which is necessary for its functionality), there is no notion of MariaDB registering itself as MySQL. But the CLI does not contain telemetry, so I don't have hard stats on MySQL vs MariaDB usage.
> These days, most smaller users go with a managed DBaaS such as AWS RDS
I think there's likely a long tail of small (non-tech) businesses that run WordPress (or Drupal/Joomla) on a traditional shared web host (the kind that only offers PHP and MySQL/MariaDB).
> Simply track your desired schema state in a repo of CREATE statements, and the tool figures out how to apply any changes to your tables and routines.
Wow, this sounds extremely useful, great job! Does anyone know anything like this for Postgres?
Thanks! I know of a couple Postgres tools that work in a declarative fashion: migra [1] and sqldef [2].
Migra is Postgres-specific. Its model is similar to Skeema's, in that the desired-state CREATEs are run in a temporary location and then introspected, to build an in-memory understanding of the desired state which can be diff'ed against the current actual state. (This approach has also been borrowed by other recent tools, including Prisma Migrate [3]). In this manner, the tool doesn't need a SQL parser, instead relying on the real DBMS to guarantee the CREATE is interpreted correctly with your exact DBMS version/flavor/settings.
In contrast, sqldef supports multiple databases, including Postgres and MySQL (among others). Unlike other tools, it uses a SQL parser-based approach to build its in-memory understanding of the desired state. As a DB professional, personally this approach scares me a bit, given the amount of nonstandard stuff in each DBMS's SQL dialect. But I'm inherently biased on this topic. And I will note sqldef's author is a core Ruby committer and JIT author, and is extremely skilled at parsers.
MariaDB is more closely aligned with Wordpress and PHP in terms of licensing. I sort of assumed that most users of (FL)OSS who had previously used MySQL would be using MariaDB by now, but based on comments in this topic I must be wrong.
I don't think Facebook is hiring a lot of freelance, it's probably not the sort of company the person you're answering to is talking about when they say "here".
CockroachDB is not a fork of Postgres, it's a NewSQL database written from scratch, compatible with the PostgreSQL protocol, and aiming at being SQL compatible with Postgres.
I think you were thinking about YugabyteDB which is a wrapper/fork around Postgres.
> Probably they have some insight that I don't, or this is just a press release filled with the usual marketing lies.
Definitely typical marketing lies. They're IPO'ing precisely because it's a very good time to get out. There's no more upside left in MariaDB as a database/brand/business and the stock market is still high.
MySQL is definitely far more popular, as is PostgreSQL, but MariaDB still continues to rise in popularity (107.11 now, up +13.22 in the past year), though its relative ranking remains at #12 on the overall list:
Also, in case anyone was interested, on DB-engines.com, the real ground giving way is for Microsoft SQL Server. While it is still at the #3 spot on the list, its absolute score dropped -73.88 to 949.05 — a year-over-year drop of -7.2% of total.
Comparing MariaDB and MySQL on Google trends is not very meaningful. There are so many people who search for MySQL docs/tutorials when they are actually running MariaDB. Lots of PHP/WordPress developers thinking they are working with MySQL and the sysadmin has really given them MariaDB.
Cool! Shodan is a very useful tool, too bad it's not worth paying for it for me. As someone who is not a user, would you mind posting the graphs for the rest of the software I put into Google Trends? The full list would be MariaDB, mysql, PostgreSQL, mongodb and SQL Server
Btw Shodan Trends (https://trends.shodan.io) is available to members as well. Membership costs a one-time payment of $49 for a lifetime account upgrade (https://account.shodan.io/billing/member). You can only do 100 Trend queries per month (if it's not yet cached) but it doesn't require a subscription.
> Mariadb is far, far more popular than mysql these days.
It depends greatly on what metric you're using. If you look at the huge list of large, well-known tech companies using MySQL, nearly all of them are literally using MySQL (or a derivative like Percona Server), not MariaDB.
In combination these companies employ several hundred thousand engineers, building products on top of MySQL, not MariaDB.
In Ubuntu, both MySQL and MariaDB are available. MySQL is in the main component, unlike MariaDB which is in universe. Reverse dependencies in the Ubuntu archive are built against MySQL, not MariaDB.
I don't know why anyone would use it outside the need for some legacy MySQL stuff or something. For me, it is always PostgreSQL or SQLite (I have never had to work with a NoSQL solution) depending on the situation.
I don't know why anyone would use it outside of the need for some legacy mysql stuff or something. For me it is always postgresql or sqlite (I have never had to work with a nosql solution) depending on the situation.
HN-specific Trends of DB comments and stories echo your view (in a chamber-like fashion…): MySql popular since early days, Postgres recently growing to overcome it, Maria nowhere to be seen
Funny. A super vocal wrong opinion dominates. Yeah, no. MariaDB is everywhere, mysql is the master of all stored production content, no one uses postgres, and people just query mysql not MariaDB.
Super vocal? Wrong? I'm not even making any claims, I'm just pointing to data I have available to me, and question their statements with the caveat that probably they have different data available than me.
Whatever else you might think, you can't help but be impressed by someone selling MySQL to Sun for $1 billion, forking it and then taking it public effectively selling it again.
I thought Oracle bought it. I think I had to make an account to download something. And I think it was Oracle that bought the MySql user group (I attended a couple meetings) pizza.
I was the interface between Oracle Sales and management at a start up a long time ago. It was weird. They offer technical help to use their API, (so its harder to switch away, I was told by my boss). We were on using on a trial basis. They seemed to want to charge based on CPU speed of the computer installed on. The startup ran out of money...
Wow. I've spent a lifetime vaguely hating MySQL because I'm bothered by computer software that projects first-person pronouns onto users (Microsoft Windows "My Computer" — um, no, Windows, you're not me, if you're addressing me, it's "Your Computer").
I'm going to be spending a long while contemplating this. My. That's so sweet.
The pronunciation of the name My, or Y in Swe/Fin is somewhat different from English, it's hard to write down what it sounds like but you can use google translate to get somewhat the right thing.
Holy shit. I have been on Linux for 17 years and while I've used Windows for work, I'd forgotten that the file explorer launcher is named My Computer since the first thing I do is remove all desktop icons. That brought back so many weird memories.
Is MariaDB code base a fork of MySQL, seems a good business to sell something twice. I would have expected him to have a non-compete after selling it the first time. Anyone know how he pulled this off?
Sadly I have to note, that almost all modern DBMS companies don’t bring anything new to the table. They incredibly over-funded, but compete in S&M instead of R&D. A sizable chunk of those are essentially Postgres over RocksDB. Don’t want to name anyone here, but 2 minutes of Googling with the right keywords will bring up more examples
Assuming you have sensible legal advice, non-competes related to company sale have a duration. 3 years is typical in California, which was presumably governing law for the MySQL purchase by Sun.
A public company will have a board of directors who set the direction of the company; as such what is to stop the board from directing that the license be changed?
I used to be opposed to GPL at moral level have have since changed my mind on this. It makes sense for anything that is essentially infrastructure -- operating systems, web servers, software firewalls -- to be GPL: improvements at this level are rarely something which gives a specific company a competitive advantage. In the cases where it would, however, I like the idea of dual-licensing so that a GPL project (for example: Linux) could be combined with proprietary code without needing to publish the changes. Right now anyone thinking along those lines (Sony, Netflix, Juniper, etc) chooses FreeBSD. In the case of the companies who have chosen FreeBSD for proprietary use they have, in many cases, ended up contributing work back to the parent project if for no other reason than self-interest in making updates to the base OS easier as their custom code remains slim. If Linux had been offering this dual-license option I think the examples above would have chosen Linux and there would have been contributions back to the parent project that aren't there today.
Yeah, but everything should be AGPL now instead of GPL. The software-as-service fiasco that changes the nature of "distribution" to bypass the open source requirements of licenses like GPL highlighted a loophole that corporates haven't hesitated in exploiting. AGPL has temporarily addressed this. However AGPL needs to go one more step and allow changing the license to plug any future loopholes. Right now, many GPL software cannot be automatically upgraded to AGPL license because we have to get permission from all the contributors to change the license. AGPL needs a clause that allows easy upgradation of the license retrospectively to ensure that the core concept can be defended in future too.
> If Linux had been offering this dual-license option
... then, most likely, Linux would never have taken off as contributors would have balked at the copyright assignment bureocracy, as well as not wanting to contribute to Linus's get-rich-quick scheme (why should Linus get special rights to profit of the work of the community?).
I always thought of MariaDB as a fork of GPLed MySQL code that is now owned by Oracle. However, I see that MariaDB uses a contributor agreement, and reserves some features for a proprietary(?) enterprise edition.
Do I misunderstand the copyright status of MySQL/MariaDB, or has MariaDB been clever about how it adds features to the GPL core, such that they're not legally derivative works?
All C corporations have a board of directors, not just publicly listed companies. If the BoD wanted to push to change the license they could have done that years ago.
MariaDB Server is guaranteed to remain open source. It will also always be available to the community. The MariaDB Foundation exists to support continuity and open collaboration in the MariaDB ecosystem, regardless of the actions of any company. https://mariadb.org/about/
This is awesome. And if we don't like what the public company does in 6 months, someone can fork the codebase, call it monikadb, rinse, and repeat in a few years!
The other way around. "Blank check companies" have existed for many many years, but were a relatively rare instrument and did very bespoke deals. Most investors never heard of them. In recent years, a standardized deal emerged that became known as a SPAC (and all the recent flavors of the month). If you look in SEC regulations, you'll see references to "blank check companies" all over the place.
Interesting. Why are SPACs getting a bad rep? Is it because of the acquisitions of shady companies or is there an underlying issue with the process followed by SPACs?
SPAC sponsors get essentially a free money trade when they merge with a company; usually this results in merging with sub-par companies with bad numbers (no revenue or even product usually) so investors can cash out massively without the company really needing to succeed at all
Case in point: most SPACs have fallen anywhere from 50-70% (evtol/lidar/battery companies) over the past year due to the fact that most don't have either a working product or poor numbers
What makes you think the stock market is any different? If anything, a private company has greater leeway to share the wealth because they don't have nagging institutional shareholders. How many public companies have robust profit-sharing programs? FAANG-level companies don't count because they're in their own category
It might just be me but recently I have found myself a bit uncertain or nervous about the true compatibility of MySQL and MariaDB. I also find I sometimes don't know which I'm connecting to between all the different systems I'm running...which I used to be quite relaxed about, but now makes me a tad jittery.
The Alpine Wiki isn't written by MySQL/MariaDB experts, and is focused on an installation / very basic administrative perspective; from that angle they're not too different. But they've substantially diverged in terms of internals, advanced administrative functionality, and overall focus.
source: I've been working in this space for 19 years, at scales ranging from tiny startups, to largest known mysql installation in the world.
Where the above use cases are required, it's actually a big deal. A common use case may be FT searches - MySQL's support is a trainwreck, and I have the suspicion that Oracle has little to no interest in it.
Curious to learn more about Mroonga. FT has been a sticking point for several sites we've built, and the search daemons (typesense, meilisearch) tend to not as accurate as we'd like.
Same. I’ll have to take a look as well. The built-in FT going back to MyISAM and later was ok for small things, but needed to remain in memory wand dint handle lots of updates well. At one point we split a table into shards on the same database to ease locking issues.
One thing I wish were available was a hybrid btree and inverted index. If you are multi tenant then you want your search to only happen within the one user’s data — not across all accounts and then filter for the one user.
Separately you can search for "What's new in MySQL 8" type posts, nearly everything there is unique to MySQL. Some of the 5.7 stuff too, like native json column type.
Ditto for recent MariaDB releases, btw! To be fair they have some cool stuff that MySQL lacks, such as system versioned tables, Oracle DB compatibility layer, native column types for uuid and inet6 (IPv6 addresses), etc.
Among other things that have been incompatible for a while: - many system tables use the Aria engine; has been impossible to start a MariaDB server over a data directory created in MySQL for many versions
- mysql.user table has some completely different columns and authentication plugins diverged greatly as of MySQL 8.0, ie no caching_sha2_password (makes writing a user migration script challenging)
- Even the data dir initialization scripts/programs are very far removed
How many database companies are out there that made it big? How many are based on FOSS? It seems like the lesson of “you can’t make money in a FOSS database (or file system)” keeps being learned and relearned the hard way.
they are doing OK, but much worse than the private Snowflake, in terms of multiples and growth rate. FOSS is too easy to replicate, so Mongo is most likely earning a lot less than AWS and other cloud vendors from their forks of Mongo.
Mongo has done a significant amount of work to optimize for ARM. And from my own testing, that work has paid off both on bare metal as well as cloud (specifically, the AWS Graviton2 instance type).
MongoDB IPO'd for ~$30/share. They peaked in November at $590, and are currently at $409.
If you invested you would have made a nice chunk of change. MongoDB does have a hosting service though which could be driving a decent chunk of revenue.
Since they are no longer using a FOSS license their cloud offering is unique, if you want Mongo because it's not cloud lock-in like DynamoDB and don't wanna run the system yourself? Pay Mongo
There is some deeply perverse insight in this comment and I love it. The principle seems to apply quite generally across much of modern tech. Where are the viable contenders for Google products built on a platform of.. counter-reputation? This concept needs a name
Edit: let me explain. Larry bought mysql to save oracle from being outcompeted by a young entrepreneur. Who left after 2 years to create an even more competent DB. To add insult to the injury, this market value is below what they paid for mysql 15 years ago, which makes Larry look incompetent.
MySQL was originally purchased by Sun, not Oracle. Although Oracle did acquire Innobase Oy (makers of InnoDB, the most popular storage engine in both MySQL and MariaDB) prior to this.
Oracle later purchased Sun, which included other valuable properties (e.g. Java) in addition to MySQL. Naturally this would be a more expensive acquisition than just MySQL itself.
Regardless, the current enterprise value of MySQL (meaning, the MySQL business unit under Oracle) would depend primarily on Oracle's MySQL revenue. This really has no relation whatsoever, in any conceivable way, to the initial listing price of MariaDB's SPAC. These are separate databases with separate userbases, separate cloud DBaaS offerings, separate support contract businesses, etc.
This is a bad take. Oracle today is worth $216B. Over the last 15 years Oracle, under the leadership of Ellison, has grown 5x in value, returning significant shareholder value. I personally very much dislike Oracle and its products, but I have to respect Larry Ellison for his performance as an executive.
to be fair, market value should have been obviously much higher when mariadb was not around. I would say his error was tactical : oracle is probably not capable of growing an opensource product which makes that acquisition a bad move
I know SPACs get a lot of hate but I love seeing Wall Street listing firms get cut out of the IPO, losing their enormous "traditional" slice of the IPO pop.
Ultimately Wall Street gets paid more for SPACs than IPOs. Both sponsors and their advisors get more fees and upside. There’s a reason so many SPAC’s happened during 2020 and 2021 and it wasn’t because companies thought SPAC’s were superior to IPO’s. Banks made more money.
You're thinking of "direct listings" (and even then, Morgan Stanley has done several of them). SPACs are actually fairly inefficient and usually give large windfalls to the SPAC sponsors.
I'm far more OK giving a windfall to the SPAC sponsor who sought out and helped a promising company to merge with and list, than a WS gatekeeper who is paid simply for being in-between a startup and an IPO.
Yeah, let's stick it to the Wall Street gatekeepers by paying fees to this SPAC.
> The Angel Pond SPAC vehicle was founded by CEO and Chairman Theodore Wang, the founder of Puissance Capital Management and Angel Pond Capital and a former Partner at Goldman Sachs, and Simon Xie, the founder and Executive Director of Hangzhou Hupan Shannan Capital Management and a co-founder of Alibaba Group.
If you want public money (via SPAC or IPO), you're paying money to "Wall Street" in one form or another.
The trick to stopping Wall Street listing firms from their slice is NOT SPACs, but rather the “Dutch Auction” IPO method. Created by American Company WR Hambrecht - and popularized by American Company Google, the Dutch Auction IPO method allows online bidders to pre-emptively bid a stock’s price, which lets companies find an equilibrium for supply and demand that they believe investors will be happy about. This, in turn, allows IPOs to encounter less manipulation and allows them to dodge banking “flips”; where banks set the price, buy it low, and sell high in the future
MySQL is also FLOSS right? It's not about it being FLOSS or not, its about their stewardship of open innovation projects. No surprise that super commercial/ legal heavy company is not great at it.
Not saying I love Goolge, Facebook or even MS these days, but they seem to play it A LOT nicer that Oracle in that regard.
Doubt. Oracle was the company that did finally open-source java completely, making every single previously paid-only feature found in OracleJDK available for free/libre in OpenJDK, of which they are responsible for 99% of all commits. Also, the language has been doing exceedingly well under their stewardship.
No matter how I turn and adjust the parameters, MariaDB seems to be the least popular of the big databases on the market today (https://trends.google.com/trends/explore?date=today%205-y&q=...) and looking long-term (2004-preset), it seems like it's popularity is going down, not up (https://trends.google.com/trends/explore?date=all&q=MariaDB).
I wonder what metrics they are looking at to figure out that it's "Fast Growing", under "Viral adoption" and "A leading relational database brand"? Probably they have some insight that I don't, or this is just a press release filled with the usual marketing lies.