PostgreSQL 9.5 Released
iamvego writes: Later than the typical release cadence, PostgreSQL 9.5 has finally been released, and brings with it a slew of new features including UPSERT functionality, row-level security, and some big data features (CUBE/ROLLUP, join pushdown for foreign data wrappers, TABLESAMPLE, BRIN indexing and more). The previous release had brought about some new JSON functions and operators, but they only queried the data; 9.5 comes with new operators which now allow modification of JSON values, so it no longer has to be manipulated outside of the database. PostgreSQL's wiki has a more detailed overview of the new features.
If that is so, Oracle is supporting "bigdata" features since 8i
https://docs.oracle.com/cd/F49540_01/DOC/server.815/a68003/rollup_c.htm
I have always liked it better than MySQL. Just wish more frameworks and CMSs supported it as the primary database. Support for PostgreSQL always seems like an afterthought.
See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
User's sovereignty over their systems?
If it's not then I won't use it, won't scale.
We use it a *lot* - and it's great for what we use it for.
Now if they can only get active-active working at the same level as an Oracle RAC server? Just maybe we can all listen to the sweet, sweet sound of Larry Ellison howling in existential agony.
Quo usque tandem abutere, Nimbus, patientia nostra?
Go to Google and put in Oracle licensing. There's dozens of companies that are there just to make sure you set up Oracle correctly and pay enough so you won't be surprised during an audit that "oh you mean if I didn't turn off the default option at install time I owe $30,000 per cpu core for this feature we turned off the next day?" Because Oracle doesn't disable features you don't pay for, they just come back later and check for anything that had ever been enabled for even a single cpu cycle, and bills you the difference.
This isn't a "omg fr33 softwarez ftw!!1!" perspective, this is a "laywer up before you even TALK to an oracle salesperson" perspective.
Question:
I like postgres, but I've never used Oracle (or any proprietary DB engine, to be honest), so I was wondering: is there any advantage in using a proprietary database vs using postgres?
No. I've used both PostgreSQL and Oracle. Oracle was worse.
Oracle was harder to install support for on Linux. Oracle had no data type for a mere date, only date and time together. Oracle's command-line tool on Linux was horrible compared to PostgreSQL's psql tool.
What I really would have liked to see is support for merge. MERGE is already supported by all of the platforms I care about. I don't even care about tradeoffs and syntax of 'UPSERT' schemes all I care about is one thing working across the board and MERGE is currently the closest to that.
It's probably easier to find Oracle experts and documentation because it's more common.
It's kind of a Catch-22 for PosgreSql: you can't get market-share until you get market-share.
Table-ized A.I.
We use it a *lot* - and it's great for what we use it for.
Now if they can only get active-active working at the same level as an Oracle RAC server? Just maybe we can all listen to the sweet, sweet sound of Larry Ellison howling in existential agony.
There's that word again, existential. I still can't figure out what people mean when they use it. I've looked it up, and the formal definitions don't seem to fit the sentence.
Question:
I like postgres, but I've never used Oracle (or any proprietary DB engine, to be honest), so I was wondering: is there any advantage in using a proprietary database vs using postgres?
The advantage is that you get the luxury of getting assfucked by Oracle's salepeople, Oracle's technical department and maybe Ellison himself. It's a good prospect for you and your company.
I have never used Oracle, but I can say that MS SQL Server is pretty convenient to work with if you're hooking it to .NET code via LINQ and developing in Visual Studio. I wouldn't necessarily call that an "advantage," though...
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
I hates me some Oracle, but if you want really fast synchronous multi-master relational database clusters and can't live without that, then it's probably the way to go. Assuming you have a couple million bucks lying around. Per year.
If you're starting out now, build your application around async replication like that in Postgres instead of relying on multi-master and use anything but Oracle.
Just another proletarian malcontent.
There's that word again, existential. I still can't figure out what people mean when they use it.
Existential angst. Might be summarized as, "I don't know what to do," or described poetically as, "The unbearable lightness of being."
How it applies to Larry Ellison, you'll have to figure out yourself. Maybe an implication that his purpose for existing is gone from the world, his life's work is dead.
"First they came for the slanderers and i said nothing."
>> Oracle had no data type for a mere date, only date and time together. Oracle's command-line tool on Linux was horrible compared to PostgreSQL's psql tool.
These 2 are silly reasons to hate Oracle, really. Regarding the command line, SQL*Plus can quite be a swiss-army knife in the hands of those who know how to use it.
Question:
I like postgres, but I've never used Oracle (or any proprietary DB engine, to be honest), so I was wondering: is there any advantage in using a proprietary database vs using postgres?
The things to consider are beyond what developers see a RDBMS for, but they include things like DR, management tools, and support (I assume developers see RDBMS as nothing more than a "persistence layer," and if that's offensive to you, then it's not directed at you). If you're paying Oracle (or MS, or IBM, etc) for licenses, its because of the value of the data they're storing is worth the cost of the licenses & support. For what it costs, Postgres is amazingly functional.
Take off every 'sig' for great justice.
I'm logging around 500,000 position reports for aircraft each day, which are naturally ordered by time (I also index on the ICAO24 airframe number). A lot of the queries I do involve the timestamps, which of course are only moving in one direction during the course of the day.
How about it treating empty varchars as NULLs? Good reason to hate it. How about not offering standard data types, like int, long, boolean? Or how about the fact that Oracle still cannot do transactional DDL?
It's too bad there isn't some way to ban these companies outright. If someone is dumb enough to use a database from a vendor that abuses them this much, they *deserve* to pay through the nose for these audits. Obviously, this behavior isn't a surprise to the customers.
I've used both in commercial environments. Since we abstract everything away in Java using ORM layers, you hardly notice the "Oracle" underneath, so it's workable.
However, any direct contact with Oracle DB's reveals their ugly roots -- it seems the entire product is something bolted on top of an engine build in the 80's, with all kinds of quirks that nobody expects anymore of a modern DB. Here are some the quirks I hated:
- VARCHAR empty string is treated as NULL by Oracle. No switch to turn it off anywhere.
- Oracle does not do transactional DDL -- that is if I upgrade my database by dropping some tables and moving some data around, and the process fails halfway due to some inconsistency, you're left to sort it out on your own... no rollbacks.
- No database types for 32/64 bit integers, so there's often a mismatch with the type in the database and the type in your programs. No boolean type. No date type.
- Error messages are (were?) often of the kind "duplicate key violated" -- no additional info which key, which row or columns were involved
- Their tools feel like they were build in the 80's -- and the 3rd party tools aren't much better. Both mysql and postgresql have way better tools.
- Doing INSERTs in a Table which happens to have some foreign keys can result in "too many open cursors" -- what cursor? The internal one it created itself to check the foreign key? What do I care? This results in code that has to do COMMITS every 50 rows (or whatever you have configured the db with).
- Schemas, users, databases... it seems to be all the same in Oracle.
- Many settings in Oracle are global for all databases, but many of those settings would be much more useful if they could be set per database
Oracle however seems to have little interest in fixing these things and getting some good will from people that actually have to work with their systems. They only care about selling the big features, never mind that almost nobody needs them.
Try PostgreSQL -- by the time you feel it no longer fits your needs, consult and expert to look at how you do your queries and indices (the #1 cause of bad performance). If it still doesn't fit your needs after that, you might have a reason to try Oracle.
For Oracle you need experts. That says enough about their product.
Got it. Thanks.
You might also enjoy this comic series, I do.
"First they came for the slanderers and i said nothing."
I tried Oracle many years ago... Nothing seemed to work right. I had all kinds of funky failures, things that would not connect, etc. I assumed it was because I was just skim reading the documentation. So I read everything carefully, reinstalled from scratch, checked every last setting, etc. Some problems resolved themselves because the defaults were all wrong, but still nothing really worked. Eventually I resorted to asking for help, and after some time, discovered that the problem was that my server name started with a "U" and there was a bug for servers starting with letters "T-Z" or something like that! Anyone that can code a bug like that should not be allowed near a computer. I uninstalled and installed postgres - never looked back. I just wish I could get the MS folk to give up in SQL Server now...
Regards,
-Jeremy
That's like saying that the woman that chooses to marry the man that will beat her everyday deserves the beating.
Whether she 'deserves' it or not, she was stupid for marrying him.
"First they came for the slanderers and i said nothing."
I noticed one feature that will be extremely useful for managing queues is the SKIP LOCKED feature. I'm very pleased this made it into the release. I'll be testing performance on this.
I don't see what the problem is with blaming victims.
If the victim *didn't know* they'd become a victim, then *obviously* that's not right.
But if the victim KNOWS they're going to become a victim, and they CHOOSE to become a victim, then please explain why I should feel sorry for them and not blame them.
Your examples are stupid. No normal VW customers knew that VW was cheating on the emissions tests. People commute by bike all the time; no one knows they're going to get hit that day, just like no car driver knows he's going to get into a fiery crash that day. Did you completely miss how these Oracle customers buy these companies' services specifically because they KNOW they'll become victims without them? I'm only proposing banning these companies so that anyone who buys into Oracle KNOWS they'll become a victim, and has no way to avoid it except by not becoming an Oracle customer. If you know a vendor is going to treat you like shit, then it's stupid to continue doing business with that vendor.
Yeah, but Oracle simply is *that* good. No, really. I'm an avid postgres user, but Oracle still blows any other database out of the water. With ease.
Religion is what happens when nature strikes and groupthink goes wrong.
ORACLE - You will never find a more wretched hive of scum and villainy
Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.