With Oracle slowly transforming MySQL into a 'free-open-core, closed-outer-shell' RDBMS[1], PostgreSQL is quickly becoming the main go-to alternative for anyone who wants to avoid database vendor lock-in.
Hopefully SalesForce will contribute its improvements back to the PostgreSQL community.
And then Oracle will buy Salesforce...
Larry did say something like that but he said that the price is too high.
Here is my predictions:
Salesforce is will start investing into new technologies and building cool stuff. However, that will not look good on stock price because R&D costs will skyrocket - and our "efficient" stock market does not like long term visions. The stock price will collapse. The board will panic and Larry will "save the day".
It's a steaming pile of poo. SOQL is really terrible and don't even get me started on apex, it's like someone took all the worst bits of Java and made them into a programming language. It's really slow to boot, I was using it with a client last week and it was taking 10-20 seconds to load any page.
I also really don't get how they're not making more money given the prices they charge.
Larry and the Oracle execs truly hate SFDC. They really build up the rivalry internally to Oracle employees and paint Salesforce as the big rival that everyone needs to band together to beat. Combined with the duplication of products that would occur if Oracle acquired Salesforce I would be beyond shocked if it ever happened. At that point Salesforce would be so irrelevant that it wouldn't matter.
In my experience, things you described are probably true, but they have nothing to do with acquisition. Actually it is very much desired (Larry was hating PeopleSoft a few years ago... and see what happen).
And duplication of products was never a problem for Larry: he just kills the one with less customers. For example, in case of BEA and Oracle Application Server: BEA WebLogic replaced Oracle Application Server.
In this case, in case of acquisition, Oracle cloud offering will be replaced with Salesforce.
Oracle no longer publishing their test cases hardly constitutes "transforming MySQL into a 'free-open-sore, closed-outer-shell' RDBMS", moreover there is no evidence that folks are adopting PostgreSQL because they're afraid of MySQL vendor lock-in. If one feels they must pay from MySQL they can give their money to Oracle, Percona, or MariaDB, all of which whom will happily provide MySQL support for a fee.
PostgreSQL is quickly becoming the main go-to alternative for people who are obsessed with the hip-now shiny thing. These are some of the same folks who will mindlessly advocate zsh over bash, tmux over screen, htop over top, and ack over grep.
Many of my clients were using MySQL, got freaked out by what's going on with Oracle, and decided to at least look into PostgreSQL. They were very impressed with what they saw, and in some cases admitted that they should have gone with PostgreSQL from the beginning.
In my experience, everyone who tries PostgreSQL loves it and sticks with it. That doesn't make it a mindless choice, or the "hip-now shiny thing." It does mean that Oracle's decisions are encouraging people to look at alternatives, and that the alternative is, in fact, often better than what they're currently using.
You make a reasonable point in your first paragraph. There is no strong evidence of vendor lock-in in MySQL's case, though Oracle's past history makes for legitimate suspicion on the part of prospective MySQL users.
It's unfortunate that your second paragraph is either trollish or ill-informed. Sure, there is a part of group-think about Postgres' popularity in some communities, but Postgres has a number of advantages over MySQL (though I'd say MySQL has a better multi-server story). Implying this plays little part in its growing popularity is condescending.
Postgres has been quietly competent since before this generation of hipsters was born. It is nice to see the user base grow, since MySQL had a huge boost for a long time just for being more noob friendly in a way postgres unfortunately never tried.
Salesforce spends a huge amount of money on licensing their horizontally scaled Oracle databases. I'd venture to guess this signals Benioff exploring a strategic bet to tell Ellison to fuck off once and for all.
The posting says they're hiring only 5 now, 40-50 next year;I inferred they're still in an exploratory phase because if they were all in, they'd be hiring more than 5 now. The posting doesn't say they're doing a migration but having worked on Oracle -> PostgreSQL migrations and sharded database infrastructures, it makes sense.
Of course nothing is ever final, but publicly announcing something like this is already sort of a "fuck you" to Oracle, so I'd be surprised if they weren't a 100% sure of their plans to switch.
Having worked at Salesforce I can say they take _forever_ to move on anything. When I left the company two years ago they were just starting to talk about Postgresql as a option to replace Oracle..
I wonder if they're finally switching from Oracle to Postgres. I know that their Oracle clusters are a significant portion of their bottom line.
Alternatively, I wonder if this is a replacement for their new Hbase cluster for feeds.
There seem to be lots of projects at SFDC that could be supported by Postgresql. It's going to be great though, considering the community might get some great tools from this.
When I was still at SFDC (January), postgres was being cautiously looked into as an Oracle alternative (along with HBase for certain parts, which has definitely been happening). Glad to see they are going for it.
They do say, though, that the job is to "Design and implement major pieces of the salesforce.com core database infrastructure". That doesn't sound like they're talking about Heroku, at least not as the main reason for their hiring spree.
Be that as it may a Salesforce.com representative told me that the hiring is related to the Heroku Postgres service, not a migration from Oracle to Postgres [1].
Perhaps the person writing the job ad was embellishing by calling it a major piece of the core database infrastructure.
I use MySQL plenty and there's a lot of things I like about it. But I honestly don't understand any of the MySQL related comments on this post. Even if Oracle didn't own MySQL, a migration from Oracle to MySQL is significantly more difficult than one from Oracle to PostgreSQL. The poor join performance of MySQL make it doubtful that it could have ever been a serious discussion at Salesforce (to say nothing of the merits of mvcc and PostgreSQL's license).
Oracle and Salesforce (or at least Larry Ellison and Mark Benioff) are huge rivals. Anything Mark can do to fuck over Oracle is a plus in Salesforce's book. So moving all of Salesforce off Oracle DB technology (Orcale + MySQL) would be a huge middle finger to them.
if i understand what you're asking then i think you'd call it an implementation. both mysql and postgresql are database implementations that can be queried using the sql language. however, both also extend the language (as defined by ansi standard) in various ways.
I'm curious where the most perceived "value" is. For example, is it in the internal structures of the database? Is it in the query language? Is it in the fact that everything is packaged together as a "system"?
I have seen a database that uses an SQL-like language but it is not a RDB. It's said to be much faster than Oracle, but it certainly doesn't need the SQL syntax to work. Needless to say, the speed doesn't come from the SQL syntax. :)
It made me wonder about decoupling the language from the interpreter. Without the SQL characteristic, would anyone be attracted to the MySQL, PostgresSQL, ..., WhizBangSQL systems?
what postgresql, mysql etc. provide is a relational database, i.e. a way to store table-structured data with consistency and safety guarantees and efficiently perform operations to retrieve and update rows from it. sql is simply the standard language in which relational queries are expressed.
So the language implies something about the functionality of the database. That seems obvious enough.
But does it necessaruly tell you anything about the underlying structure and the performance of a database?
If we drop that acronym, "SQL", and still provide a database that handles relational queries (but perhaps uses a different but equally capable language), does that matter? If yes, how much? And why?
sql is actually quite close to a natural way of expressing relations. there's a book called "sql and relational theory" by someone called chris date that goes into a lot of detail about this ("relations" is a technical term with a pretty solid mathematical basis). so you could change the syntax, but the basic ideas wouldn't change that much, assuming it was still a relational database.
the value of the different database implementations comes from how efficiently they can implement the relational model, and what optimizations they have to support particular use cases, or extensions to make supporting and maintaining them more practical. those optimizations/extensions also lead to some of the differences between what sql might be if it were "purely relational" and what is is in practice.
so dropping sql and using a different language would be more a nuisance than anything. what is important is whether the database is relational or not. and databases that are not relational have been tried - they are (misleadingly!) called "nosql databases" (they should be more accurately called "non-relational databases", of course, given the above).
There's plenty of database systems that either don't support SQL at all, or support it with a range of other languages.
One of SQL's remaining powers over most other options is the ability of non-expert users to construct their own ad-hoc reports. This is a big part of why Hadoop has Hive, which incorporates a very SQL-like language, and most other "big data" tools have something similar.
Not surprising after reading what the CEOs of Oracle and Salesforce have been saying in the news lately.
I don't use Oracle (my customers tend to be budget conscious). Even without Oracle experience it makes some real sense to whenever possible use free software if the total costs of software development, deployment, and maintenance are less - assuming equivalent functionality, scalability, etc.
From what I've read about the Salesforce Oracle backend in the past, they are big users of Oracle RAC .
Hopefully if Salesforce switch they will develop some form of Postgres clustering solution which would be great for the Postgres community, as an active-active clustering solution with the characteristics of RAC would make Postgres even more competitive in the enterprise.
...now if I'd ever use Oracle products and wanted to negotiate a cheaper license, this the type of "news piece" I'd publish! (and it wouldn't even have to be "a lie" people experiment with OS all day since they're hiring "just" "5 engineers" it can be seen as a "small scale" (for Salesforce bien sur...) too)
This is obviously Step 2 of many to wean off of Oracle's hardware, infrastructure and software which Salesforce undoubtedly has been running on since Day 1 but now can no longer afford to do so for strategic reasons.
Hopefully SalesForce will contribute its improvements back to the PostgreSQL community.
--
[1] For example, see http://news.ycombinator.com/item?id=4400797