FOSS4G NA Community Program Review

It’s that time again (so soon?), time for FOSS4G (North America!) attendees to review the presentation submissions and pick their favourites, so the program committee can build the most appealing (on average) program possible. Head on over to http://community-review.foss4g.org and do your duty!

FOSS4G North America - Presentation Deadline - March 1

Public service announcement! If you’ve been toying with the idea of doing a presentation at FOSS4G North America (April 10-12, in Washington, DS) as I have, it’s time to stop toying and start writing your abstract: the deadline for submissions is this Thursday, March 1.

Go submit your paper right now!

PostGIS vs Oracle Spatial

“That’s a nice database you have there, but how does it compare to Oracle?”

A fair question. On the one hand we have an open source database, with a core development community of a few dozens and a spatial development community of … a few! On the other hand we have a multi-billion dollar IT behemoth with a client list of Fortune 100 companies. On our biases alone, one would expect Oracle to perform much better.

And we’d have to go on our biases, because there haven’t been any Oracle vs PostGIS comparisons available in the wild. Until now.

The Advanced Research Lab for Geospatial Information Science and Engineering of the prestigious Indian Institute of Technology has put a study online, comparing PostGIS to Oracle Spatial across a number of spatial join operations, run in both “cold” (empty cache) and “hot” (pre-seeded cache) modes.

The tests require the database to correctly plan a self-join that includes both spatial and attribute clauses, and then execute. The queries generally seem to require a medium to large quantity of spatial objects to be evaluated in spatial predicate tests. So this is a step up from the usual test of bulk bounding box operations that most benchmarks have gotten bogged down in.

And the results? The authors say:

From the experimental results that we saw, we can conclude that Postgres performs better than Oracle 11g both in the Cold Phase and Warm Phase. Though in few queries Oracle 11g performed better but on the whole Postgres overpowered Oracle 11g. In the warm phase in 3 out of 4 queries Postgres performed significantly well, from this we can conclude that Postgres has better automatic memory management capabilities and page replacement policies… On the whole it is the open-source that wins the game!

Methodologically there are two obvious issues: one is that the Oracle database was on Windows while the PostGIS database was on Linux; the other is that neither database got any tuning, they were both installed and run with default parameters. However, this is one of the nicer comparisons I have read: concise, focussed and with enough technical detail to evaluate what’s going on.

Based on that detail, I can also take a stab at guessing why PostGIS did not win every test: the two slower tests used the touches relationship, which is not optimized in PostGIS using a prepared geometry approach. And the non-optimized predicates in PostGIS are quite inefficient, they calculate far more topological information than is strictly necessary to answer a true/fale question about a single topological relationship. So, more room for improvement!

Thanks to IIT for carrying out and sharing this research, truly invaluable stuff.

Twice as Dirty (and now with more Shame!)

For all those Americans, who think your political culture is uniquely corrupt or tarnished by money or special interests, I give you, direct from Canada, in all its astroturfing glory, “Ethical Oil”.

http://www.ethicaloil.org/

My favorite part is the donation area, “Please consider making a $5, $10 or $15 donation…” because of course ethicaloil.org relies “on small donors like you to sustain our grassroots advocacy”. They won’t take money “from foreign corporations, foundations, governments, or lobbyists”, so it’s a good thing there’s lots of money available from CANADIAN corporations, foundations and lobbyists.

I took the kids to school this morning after reading this and especially this so my tolerance for people who think time-shifted mass murder is ETHICAL is a little lower than usual today.

SVR #2

Hello, all my dark minions in the consulting industry!!! Have you ever low-bid a contract, knowing that once you got deep into it, the client would be as professionally invested in the success of the project as you, and would carry the can back to management for more funding? Come on, chums, you can be honest with me, didn’t we row together at Oxford?

Sadly, our old mates at Oracle got their hands caught in the cookie jar recently. They thought they were building a strategic vendor relationship with Montclair State University. Everyone was friends, all pulling together for success, and then some loser decided to knife them in the back instead of being chums!

“When issues arose during the course of the project, it became clear that MSU’s leadership did not adequately understand the technology and the steps necessary to complete the project,” [Oracle] stated. “Instead of cooperating with Oracle and resolving issues through discussions and collaboration, MSU’s project leadership, motivated by their own agenda and fearful of being blamed for delays, escalated manageable differences into major disputes.”

Right ho! Instead of “cooperating” and “resolving through discussions and collaboration” (oh! and an extra $15M!) they created a major dispute. Bollocks! It’s this kind of unfriendliness and lack of trust that can turn a super strategic friendship and awesome partnership relationship into a garden variety contractual business arrangement, and who wants one of those?!?

And, to add to the betrayal, I guess someone at MSU used to work in the consulting industry (zounds!)

“This is a textbook example of how to file a legal action against a vendor for failure to deliver,” said analyst Ray Wang, CEO of Constellation Research, who reviewed the updated complaint on Wednesday.

MSU made some smart moves to protect itself, such as documenting all conversations and interactions with Oracle, and working out an escalation procedure in the event the project ran into problems. It also was wise to use real-life use cases for the demonstrations, Wang added.

I’m glad I live in a jurisdiction where clients and vendors know how to get along.