Live data from Hacker News

Oracle vs. PostgreSQL – A Comment

postgresql.org

191–200 of 238 posts

Re: Oracle vs. PostgreSQL – A Comment

#191
post #137

Earlier quoted context omitted.

This isn't true. For example: If a user schedules an event to happen at 15:35 on July 29th 2021 IST, you cannot know with certainty what the equivalent UTC value is. You know what it would be assuming the relationship between IST and UTC stays the same between now and next year. If India suddenly decides to implement some sort of DST, or make any other changes to the definition to IST, the UTC value you stored is now…

> If India suddenly decides to implement some sort of DST, or make any other changes to the definition to IST, the UTC value you stored is now wrong. It is not wrong. When timezones change, the database that contains that info is updated - but it still retains information about historical rules, precisely so that earlier dates can still be converted reliably. On the other hand, if you use local times, then you are no…

You're not converting a historic date though, you're converting a future date. And that's an inherently uncertain process. It is literally impossible to know what UTC time 2021-07-29T15:35:00 IST refers to until it happens. The Indian government is free to redefine IST as they wish, and could choose to do that at 15:34:59.

Re: Oracle vs. PostgreSQL – A Comment

#192

Anyone here use Patroni for automated high availability with postgres? Does it “just work” or do you need a lot of housekeeping?

We recently rolled out Patroni on k8s and it definitely does not “just work”. I suppose once you get it up and running, there’s some truth to that, but it’s one of the most hostile pieces of software I’ve come across. This isn’t a complaint, after all, Zalando don’t owe me anything. But the documentation, the project structure, the contributors...it all reveals very clearly that this is really just some internal tool…

I recently have been working on setting up a HA Postgres Cluster on K8's... its for a pretty small DB use case and not knowing much about the world of Postgres and Databases I ended up using the Crunchy Postgres Operator which amazingly did all of the work for me... (I honestly don't know much about Patroni other then it manages the switchover to replicas during a failure)... anyway I'd recommend the Crunchy Operator...

As a side note, we've found that it takes quite a while for the initial pgBackRest job to run (like 8 minutes) which seems like a lot for an empty DB, but we aren't using SSDs

Re: Oracle vs. PostgreSQL – A Comment

#193

With the amount of hype and mind share micro-services attract, I hope the era of large database clusters like Oracle comes to an end. At the system level, even Oracle has to do some sort of message passing stuff to be able to distributed databases. With the availability of streaming services, resilient distributed computation and data storage architectures, I hope companies like Oracle die a slow, but graceful death.…

Wouldn't it be great if there was a large system for integrating all those data based microservices, taking care of data coherence, type verification, and schema migration, all of that behind a standardized interface that every language supports?

Re: Oracle vs. PostgreSQL – A Comment

#194
post #95

Earlier quoted context omitted.

You should store dates with timezone or you can't make calculations like how old is this post. You could base it off system time, but then the calculation have to take into account summer/winter time.

Everything in the DB should be UTC. Anything else is crazy.

Times, perhaps.

But dates should never be stored with a timezone at all, except in extremely rare cases where a day for some reason specific to a timezone. But even then, it's much more likely that you are trying to specify a time range that happens to start and end on a certain day in a certain place.

Dates, almost by definition, are independent of timezone. January 1st, 2020 began at several different times in different timezones. It should be represented as a date stamp: 2020-01-01 without any timezone.

If you really are trying to represent the day that starts at 12:00 AM PST on January 1, 2020 and ends at 12:00 PM PST the same day, then you probably just want two timestamps representing those instants and not a date at all. But again, that would be quite rare. In most cases you would just want to store 2020-01-01.

Re: Oracle vs. PostgreSQL – A Comment

#195
post #156

Earlier quoted context omitted.

My company uses it all the time. It's an absolutely rock-solid database and I've never had any issues with it. They just released their new containerized version a few months back and have recently simplified their licensing rather significantly. One of my favorite features is the "time travel" query. If you enable this feature on one or more tables you can essentially say "give the results of this query as it would…

Bitemporalism a la SQL:2011 has been partly or wholly implemented by several RDBMSes at this point. Off the top of my head SQL Server, Oracle and MariaDB have it as well as DB2. I'm looking forward to seeing it in PostgreSQL.

Check out https://github.com/arkhipov/temporal_tables or https://github.com/scalegenius/pg_bitemporal

Re: Oracle vs. PostgreSQL – A Comment

#196
post #195

Earlier quoted context omitted.

Bitemporalism a la SQL:2011 has been partly or wholly implemented by several RDBMSes at this point. Off the top of my head SQL Server, Oracle and MariaDB have it as well as DB2. I'm looking forward to seeing it in PostgreSQL.

Check out https://github.com/arkhipov/temporal_tables or https://github.com/scalegenius/pg_bitemporal

I'm familiar with these and they are useful, but I would greatly prefer mainline support using the SQL standard. A mainline implementation is far more likely to lead to optimisations being made to the query planner, indices, disk formats etc.

Re: Oracle vs. PostgreSQL – A Comment

#197

I'm a big fan of Postgres, and it's got plenty going for it. That's not to say Oracle isn't a good database in its own right. The knocks against Oracle tend to be lock-in, complexity, price, but rather than go in a checklist comparison I'd rather say what's unique about Postgres: - Based on its license it's very hard for any one company or individual to "own" Postgres, this makes risk of a company as a bad actor bein…

Worked on a large application for the Dutch government with Oracle as database using spatial. Oracle is the only database that implemented spatial wrong (in my opinion). Oracle is the only one that implemented spacial functions to have a parameter for the accuracy. So basically you spacial function could calculate things wrong depending on that parameter. We had issues in the calculations when we where subtracting land to see what parts we needed to buy from land owners for laying new roads. We could not fix this. Oracle didn't help. They payed millions for licenses but they did not offer enough support in my opinion. I did some of the calculations in postgres with the spacial extension and most of them where way faster (10 times was not uncommon). Postgres also did not fuck up the calculations like oracle did. The project actually had a huge amount of psql code and we could not switch to postgres...

Re: Oracle vs. PostgreSQL – A Comment

#198
post #49

Earlier quoted context omitted.

Oracle may very well want to litigate it. I doubt they care about the optics. This is the well-known DeWitt clause, so named because Oracle crafted it to squelch database research being performed by Dr. David DeWitt. I believe these clauses should be clearly ruled as illegal, but to my knowledge they still persist. Details here: https://dwheeler.com/essays/dewitt-clause.html

If they decide to litigate, they might learn what a Streisand effect[0] is. [0] http://en.wikipedia.org/wiki/Streisand_effect

I highly doubt Oracle cares about the Steisand effect. Oracle has long been lampooned for its lawyers, e.g., this old Bonkers World cartoon: https://bonkersworld.net/organizational-charts , and people have been complaining about the DeWitt clause since around 1982.

I think the Streisand effect is not going to work in this case. The kind of people who decide to write Oracle multi-hundred-million dollar checks don't seem to care about this, because they have kept paying money for decades. So there's no reason for Oracle to care about it. The clause was added specifically at the direction of Larry Ellison. Larry Ellison is co-founder, executive chairman and chief technology officer (CTO) of Oracle, and the sixth richest person in the world... he has no reason to care what people think about these contracts, because no matter what he's still rich. The courts don't care about the Streisand effect either; they're used to people being unhappy about some of their rulings. And if there was going to a Streisand effect, you'd think it'd have already happened in the last 38 years.

Don't get me wrong, I loathe the DeWitt clause (as does DeWitt). Making the truth illegal, which is what this does, hurts all of society. But a Streisand effect will not get you there. What's needed is a court ruling or law that strikes such clauses down.

I'd much rather see a world where people can freely compare different products. I like Oracle's VirtualBox, for example; that thing can compete on its own merits. But that's my point; products should be able to compete on their own merits, instead of having legal clauses that prevent honest comparisons.

Re: Oracle vs. PostgreSQL – A Comment

#199
post #195

Earlier quoted context omitted.

Check out https://github.com/arkhipov/temporal_tables or https://github.com/scalegenius/pg_bitemporal

I'm familiar with these and they are useful, but I would greatly prefer mainline support using the SQL standard. A mainline implementation is far more likely to lead to optimisations being made to the query planner, indices, disk formats etc.

I am in vehement agreement!

Re: Oracle vs. PostgreSQL – A Comment

#200
post #188

Earlier quoted context omitted.

> any program benchmark tests Don't think installation size or length of time taken to set up the program really qualify as a "program benchmark test", so he should be fine

Would you want to argue about that in court?

Absolutely. Seems like a clear cut case. There was no program running benchmarks here
Post reply on HN