top | item 12489055

Yandex.Mail's successful migration from Oracle to Postgres [pdf]

415 points| postila | 9 years ago |pgcon.org | reply

210 comments

order
[+] coolspot|9 years ago|reply
My take aways:

* Reasons to migrate were: unresponsive support, inconvenient deployment, closed source, huge cost.

* It took just 10 man-years to rewrite whole project from Oracle to Postgres (e.g. 10 developers, 1 year), which is amazing.

* They benefited from Postgres data versioning, arrays and composite types.

* They liked writing logic on PL/pgSQL more than on Oracle PL/SQL: reduced code size, increased test coverage.

* Easier deployment of changes due no library cache locks.

Great thing for community is that Yandex now commited to Postgres, meaning it will get more testing and bug-fixes faster.

[+] Spearchucker|9 years ago|reply
I have no love for Oracle (at all, actually), but let's not kick the donkey when it's down. Having been through tech refreshes myself I'll bet most of those benefits would've been realized, regardless of data provider. Too much opportunity for a competent team to reduce or eliminate technical debt.
[+] anarazel|9 years ago|reply
> Great thing for community is that Yandex now commited to Postgres, meaning it will get more testing and bug-fixes faster.

That remains to be seen. There's a fair amount of huge postgres users that don't even bother to report bugs they find...

[+] zuron7|9 years ago|reply
Yandex.Mail provides custom domain E-Mails for free, the only large company to do so and not to mention how good it is.
[+] franole|9 years ago|reply
Good tip. I recently did some research on email with free custom domain (well, really just googling and visit the first results) and did not know about them.

So for the moment I'm using zoho.com.

[+] dubcanada|9 years ago|reply
zoho offers free custom domain email hosting. It's also surprisingly good, the UI/integration between the pieces is very well done.
[+] SXX|9 years ago|reply
It's can be also used as DDNS with simple API.
[+] xienze|9 years ago|reply
Russian email hosting. What could go wrong?
[+] niftich|9 years ago|reply
So having read through the slides, these are not bad slides, but I'm missing the 'real' wow-factor of why Postgres was a better choice in the end than Oracle. There's no doubt that the rewrite (which, because of PL/SQL -> PL/pgSQL, there was a rewrite) benefited them, but all I can glean from the slides is Postgres hasn't failed them yet and the rewrite worked.

So as much as I want to talk about Oracle vs. Postgres, these slides aren't giving me anything technical to debate.

[+] postila|9 years ago|reply
1. Price if obvious reason of migration, and in their case (multiple datacenters and "-1 datacenter" policy) it was huge benefit.

2. The other concern was Oracle's slow bugfixing and reaction to feedback.

So, this is a good case showing how a company can stop wasting millions of $ for proprietary software, joining Open Source community, contributing to it and taking benefits from tech collaboration with core developers of the product.

[+] okket|9 years ago|reply
> I'm missing the 'real' wow-factor of why Postgres was a better choice in the end than Oracle

Not having to deal with stuff like this while having the same features/performance/stability/etc may qualify as a 'wow':

http://www.orafaq.com/wiki/Oracle_licensing

[+] imron|9 years ago|reply
> but I'm missing the 'real' wow-factor of why Postgres was a better choice in the end than Oracle

I'm guessing it was a few million dollars worth of wow-factor.

[+] fla|9 years ago|reply
Postgres is free
[+] Shorel|9 years ago|reply
> but all I can glean from the slides is Postgres hasn't failed them yet and the rewrite worked

That's actually huge for companies that have invested in Oracle and feel trapped.

And the companies that buy Oracle, have a slight tendency to write all their core business logic inside the database.

[+] trollixx|9 years ago|reply
I am using Yandex for my FOSS project's domain. So far, I haven't encountered any big issues. The web interface is plain and simple, but occasionally has some glitches.

Their mobile app (Android) is quite pleasant and lightweight.

What might be a problem for non-Russian speaking people is the lack of documentation in English. Quite often a random link redirects to a page in Russian.

[+] manigandham|9 years ago|reply
To stay on topic: Does anyone else have stories of moving massive datasets to postgres from other commercial databases?

We're looking to make the switch from SQL Server when 9.6 comes out (and proves to be more scalable).

[+] olavgg|9 years ago|reply
SQL Server performs slightly better than PostgreSQL for analytics. This is mostly because of parallel queries which will still be more efficient on SQL Server when PostgreSQL 9.6 is released.

On the other hand, PostgreSQL can take advantage of ZFS compression which is great for archiving cold data.

[+] jadbox|9 years ago|reply
I'd also look into Citus (PG plugin for scaling)
[+] blinkingled|9 years ago|reply
> 3x more hardware # for Postgres

Tells you something about how insanely costly Oracle's licenses are. Whatever you say about Oracle though - Oracle DB is an incredibly well performing and reliable piece of software. (Attested by experience - we had several Oracle DBs running on HP-UX Itanium that only needed to be handled when OS and Oracle patches were needed. Massively used too - think 36 PA-RISC cores at peak, 24 IA64 ones. It also helps that there are lot of DBAs with great deal of Oracle experience.)

[+] d0uble|9 years ago|reply
Nobody argues that Oracle is a very good database. But 3x more hardware and 10 man-years are an order of magnitude cheaper than Oracle licencies cost (even with maximum discount).
[+] jorgecastillo|9 years ago|reply
Yandex.Mail is my favorite email provider and I would invite anyone reading this to give it a try.
[+] overcast|9 years ago|reply
Please cite examples as to why it's your favorite Email provider.
[+] leojg|9 years ago|reply
This seems good.

Not related with the migration itself but I tried to use yandex and its mailing service a couple of years ago when attempting to become google independent but it didn´t work well with spanish queries so I eventually went back to google. But I recall that yandex mail was really nice.

[+] mbesto|9 years ago|reply
I look at the operations of a lot of middle market tech companies that are fairly old (10+ years in existence) and I'm starting to see more and more companies move off of Oracle and on to Postgres. I expect this trend to continue.
[+] dangerboysteve|9 years ago|reply
What version of Postgres did they end up using?
[+] d0uble|9 years ago|reply
We started our first production systems with 9.3. When we started migration process and until it ended we used 9.4. Right now all our production clusters are 9.5.
[+] oneloop|9 years ago|reply
Yandex is doing quite some interesting things, I think they don't get enough love from HN.
[+] niftich|9 years ago|reply
It's not a malicious bias, but a bias nonetheless. We tend to show more love towards services we know of, use, hear about, or have a friend work at.

That Yandex chiefly targets the Russian, other Cyrillic, and Turkish markets limits its exposure to people who aren't in those markets. And some of it has to do with the kitchen-sink nature of what Yandex does (a lot of tech and some media), in that it's easy to mistake them to be similar to other such companies (Yahoo, Verizon, AOL -- incidentally they're now all the same) that have a similar spread of services, and yet they're not generally complimented in their tech achievements.

[+] favadi|9 years ago|reply
Never seen any non-russian yandex user myself.
[+] honkhonkpants|9 years ago|reply
Yandex doesn't seem like it would appeal to the kinds of people who comment here. If you think that having your data hosted in the USA is a privacy concern, imagine having it hosted in Moscow.
[+] Allamaprabhu|9 years ago|reply
I see that document is poorly formatted. Lacks sufficient indentation.
[+] oneloop|9 years ago|reply

[deleted]