Thursday, October 03. 2013
Printer Friendly
We have PostGIS intro presentation we did in September in 4 parts at https://www.youtube.com/playlist?list=PLHPJPLnP-bUWZShKrUIdbJM5dig8oavzQ.
In the Intro we covered PostGIS geometry, tiger geocoder, and raster. Sadly we didn't have time to cover geography or topology.
Continue reading "Boston PUG Introduction to PostGIS videos"
Saturday, September 28. 2013
Printer Friendly
PostGIS 2.1 bundle for PostgreSQL 9.3 Windows is now available on StackBuilder for windows users. You will find both the 32-bit and 64-bit versions. The bundle includes the following features:
- PostGIS 2.1 with extensions support for postgis (which has geometry/geography/raster), postgis_tiger_geocoder, and postgis_topology.
- pgRouting 2.0.0 with extension support -- just do
CREATE EXTENSION pgRouting
- address_standardizer, which is needed for better tiger geocoding normalizing. Installed with
CREATE EXTENSION address_standardizer
One thing that is different with this packaging is that we are no longer providing a template_postgis database. However if you want your database created for you,
you can check the Create spatial database option which will create a regular old database with all the packaged extensions under the sun created for you.
Continue reading "PostGIS 2.1 Bundle for PostgreSQL 9.3 Windows Stackbuilder"
Monday, September 09. 2013
Printer Friendly
PostgreSQL 9.3 came out today and we are excited to start using the new features. PostGIS 2.1.0 came out about 2 weeks ago and pgRouting just cut the RC 3 release. For windows PostGIS users who are impatient to try the new suite, binaries
can be found on the Unreleased versions of PostGIS.net windows page.
We are planning an official release sometime probably next week on StackBuilder. We are waiting for release of pgRouting 2.0 before we do which should be out next week. This new 2.1 release will be dubbed the PostGIS 2.1 Bundle since it will have more than just PostGIS. It will include postgis extensions (postgis which includes geometry,raster, geography) , postgis_topology, postgis_tiger_geocoder), address_standardizer extension (a companion to tiger geocoder), and pgRouting 2.0.
For those people running PostGIS 2.0 and PostgreSQL 9.0+, especially (raster and geography) users, I highly recommend you jump to PostGIS 2.1. PostGIS 2.1 is a soft upgrade from 2.0. For raster there are enormous speed improvements and new functions. The ones we are most excited about in raster are the much much much faster ST_Clip and ST_Union functions (which now does multi-band in addition to being faster). These two functions are highly important since they are generally the first step in many raster workflows. Geography has speed improvements for point in poly and a ST_Segmentize function done on the spheroid (important for long range). Geometry has a couple of new functions. The Enhanced 3D functionality provided by SFCGAL is brand new and probably won't be distributed by many package maintainers until PostGIS 2.2 where it will garner a few more features and stability improvements.
Continue reading "PostGIS 2.1 windows bundle"
Friday, August 23. 2013
Printer Friendly
One of the new features in PostgreSQL 9.3 is CREATE SCHEMA IF NOT EXISTS someschema; . We were so excited about this new feature that we started using it in the tiger geocoder loader routine. For some reason we thought it was available since 9.1 which gained CREATE TABLE IF NOT EXISTS sometable;
which we noted in Sweat the small stuff, it really matters
Continue reading "CREATE SCHEMA IF NOT EXISTS in 9.3 and tiger geocoder"
Sunday, August 18. 2013
Printer Friendly
Two of the big changes in PostGIS 2.1 raster are the improved speed and functionality of the raster ST_Union function and ST_Clip. Aside from speed, the big thing with ST_Union in 2.1 is that it applies operations to all bands by default.
These are our most favorite funcitons of all. This is a continuation of Word Play with spatial SQL, except we'll be generating rasters instead of geometries and exercising some raster functions in addition to geometry functions.
Although these SQL statements look long and somewhat complicated, they are easily wrappable in an SQL function. We have, for example, an sql function to write letters on parcels that just takes as input the parcel id and the words to write.
This uses the postgis_letters extension, which we've finally put up on github postgis_letters. For rendering the images, we used our quickie viewer which relies on ASP.NET or PHP and JQuery. We'll be putting that up on github as well once
we've dusted it off a bit.
If you are interested in the aerial and parcel geometry data we are using here, we grabbed it from MassGIS for Cambridge, Massachusetts area. You might recognize the base query in our upcoming DZone PostGIS refCard.
So here it goes. An exercise in raster expression.
Continue reading "Raster Words using PostGIS 2.1"
Saturday, August 17. 2013
Printer Friendly
The 2.1.0 release of PostGIS is now available.
The PostGIS development team is proud to release PostGIS 2.1.0.
As befits a minor release, the focus is on speed improvements, more features, and bug fixes.
If you are currently using PostGIS 2.0+, you can go the soft upgrade path:
ALTER EXTENSION postgis UPDATE TO "2.1.0";
If you are running 2.1.0 of beta or an unreleased version
(and the above step fails with error “extension postgis has no update path from version x.x.x to version 2.1.0”)
, you need to first copy the file
in share\extensions\postgis—2.0.3—2.1.0.sql and change the 2.0.3 to the x.x.x noted in the error you are running.
Then follow the above upgrade step again.
Users of 1.5 and below will need to go the hard-upgrade path
documented in manual:
http://postgis.net/docs/manual-2.1/postgis_installation.html#hard_upgrade
Best served with a bottle of GEOS 3.4.1 and
PostgreSQL 9.3beta2 (planned release September).
Continue reading "PostGIS 2.1.0 released"
Thursday, August 15. 2013
Printer Friendly
One of the big changes in PostGIS 2.0 was that the geometry_columns table became a read only view. This change was not without sacrifice. On the plus
it meant a table no longer needed to be maintained which was a relief for those who had to constantly ensure the sideline table was up to date. Also on the plus it meant we could base the views on the current user so that if a user connected, they would only see tables they had access to. The sacrifice made was a bit of speed. In most use cases, the speed difference is hardly noticeable
and only noticeable if you have a query constantly polling this table. However if you have a database of 15,000 geometry tables it could take as long as 450ms as noted in this ticket.
So just playing with ideas, could the new PostgreSQL 9.3 event triggers and materialized views provide a solution. Keep in mind this is just food
for thought. We're not condoning people go out and hack their PostGIS install. We suspect if we implement such a thing in PostGIS core it will change from what we propose here.
If you saw our prior article Caching data with materialized views and statement level triggers you know where this is going. We'll add yet another concept to this cocktail and that is what we'll call schema hiding which by that we mean counting on the order of a search_path to hide a named table/view you don't want.
Continue reading "Materialized geometry_columns using Event Triggers"
Tuesday, August 13. 2013
Printer Friendly
One exciting new feature coming in PostgreSQL 9.3 is materialized views. Materialized views is really a mechanism for caching data of a query. It is especially useful if you have long running queries where the answers change infreqently. There are many things unfortunately that materialized views won't do where you are still better off with regular views.
- They don't refresh themselves automatically. Thus requiring a cron job/pgagent job or a trigger on something to refresh.
- They can't be user dependent or time dependent. For example if you have a view that does something like WHERE user=current_user(), then a materialized
view is out of the question.
Continue reading "Caching data with materialized views and statement level triggers"
Saturday, August 03. 2013
Printer Friendly
The 2.1.0rc2 release of PostGIS is now available.
The PostGIS development team is proud to release a release candidate version of upcoming PostGIS 2.1.0.
As befits a minor release, the focus is on speed improvements, more features, and bug fixes.
We expect this to be the final release candidate before we officially release 2.1.0 slated for Aug 12th, 2013.
We’d appreciate it if you test it before final release and report
back with any issues you run into so we can have a smooth release.
Continue reading "PostGIS 2.1.0rc2 released"
Tuesday, July 23. 2013
Printer Friendly
This is partly in response to Josh's blog entry Calling Bullsh*t in Open Source communities and Sarah Sharp's plea for No more verbal abuse.
I think Linus Torvalds is being treated unfairly
and is being abused for his frank, no bullsh*t, flowery quiky style of stating it. Many have accepted the axiom that Linus is a jerk, childish and needs to conform to the professional standard simply because we are too lazy to analyze the facts for ourselves and like many public figures Linus likes to give people a good show.
Quotes from Linus
"Because if you want me to "act professional," I can tell you that I'm not interested. I'm sitting in my home office wearing a bathrobe. The same way I'm not going to start wearing ties, I'm *also* not going to buy into the fake politeness, the lying, the office politics and backstabbing, the passive aggressiveness, and the buzzwords. Because THAT is what "acting professionally" results in: people resort to all kinds of really nasty things because they are forced to act out their normal urges in unnatural ways."
So I read that as "Let's lynch Linus, cause he refuses to wear a noose of the oppressor around his neck like everyone else". Any one of you who've worked in an oppressive office environment know EXACTLY what he's talking about.
In his Defense of being accused of being a verbal abuser and http://marc.info/?l=linux-kernel&m=137391619513236&w=2
"I definitely am not willing to string people along, either. I've had that happen too—not telling people clearly enough that I don't like their approach, they go on to re-architect something, and get really upset when I am then not willing to take their work."
I curse when there isn't any argument. The cursing happens for the
"you're so f*cking wrong that it's not even worth trying to make
logical arguments about it, because you have no possible excuse" case.
.. and sometimes people surprise me and come back with a valid excuse
after all. "My whole family died in a tragic freak accident and my
pony got cancer, and I was distracted".
And then I might even tell them I'm sorry.
No. Not really.
Linus
Victim of his wrath defending him.
She simply doesn't agree with Linus brand of Tough love which is a brand that I share -- perhaps because I'm in the same age group as Linus.
So my plea is, please let us not get into the business of training people on the ART OF NICENESS and SENSITIVITY and studying the loop holes so that we can use that as a weapon to stab each other behind closed doors and private emails where NO ONE CAN HEAR YOU CRYING FOR HELP.
I think I am more qualified than most to judge verbal abuse and oppression when I see it. I'm the daughter of a black Nigerian man and a white American mother. I was born in Nigeria
and spent my youth there.
I've been traumatized all my life both verbally and physically from all sides for being different in all kinds of ways. This trauma is most often inflicted by women who've told me to be quiet because I do not have the social skills to grasp what is happening. My lesson learned is your oppressor may be someone that looks just like you (or thinks he/she understands what you are feeling) and your ally just MAY BE a purple dragon living in a cave wearing a bathrobe.
Continue reading "In defense of being blunt and to the point"
Wednesday, July 17. 2013
Printer Friendly
This past day, the pgRouting development team released pgRouting 2.0.0 RC1 just steps after PostGIS 2.1.0 rc1. Last week PostGIS project released RC1 of upcoming 2.1.0 PostGIS 2.1.0 RC1.
Now only thing left to make this a 3fer sweetened pot is if strk would move his butt a little faster to get out GEOS 3.4.0.
Also in the news I am now on the GEOS Project Steering Committee and pgRouting development team. Just waiting for my commit keys for GEOS so I can help out with the GEOS release. Yap that's right threaten to help out to speed things up and they make you a development team member or a project steering committee member. I am very proud to be a member of all 3 teams and will do my best to keep all 3 aligned with each other and also PostgreSQL changes. In the past we've stepped on each others toes, e.g making changes in PostGIS 2.0 that broke pgRouting or not testing changes in upcoming PostgreSQL releases and changing accordingly. I hope to keep tabs on these issues and proactively fix them.
For those who wanted a quick tutorial on pgRouting 2.0, I was meaning to write one, but Anita Graser beat me to it. Her pgrouting 2.0 for windows quick guide has a windows flavor, but since pgRouting 2.0 now supports the PostgreSQL extension model, the installation process is much the same regardless what OS you are on if you are running PostgreSQL 9.1+. The rest of the tutorial is QGIS based which is a desktop GIS tool supported on all OS I can think of so definitely worth a read even if you are not on windows.
Tuesday, June 25. 2013
Printer Friendly
We'll be hosting the September 10th, 2013 PostgreSQL User Group meetup
at
Devonshire Sky Club (in the center of Boston Financial district and block away from city hall). This is the same venue we hosted the Boston OSGeo Code Sprint
except this time we'll have some EnterpriseDb folks joining us. Sign-up while supplies last. Leo's got a nice cocktail and food
lineup.
We'll be giving an introductory talk about PostGIS and also give a brief overview of what's packed in the PostGIS 2.1 release that is currently in beta, and that should be out by meetup time. Remember this is the first version of PostGIS to support upcoming PostgreSQL 9.3.
Not only will we have cocktails, but we'll also be giving out PostgreSQL/PostGIS door prizes.
Continue reading "Boston PostgreSQL Meetup September 10, 2013: PostGIS Intro"
Saturday, June 22. 2013
Printer Friendly
The PostGIS development team is proud to release a feature complete beta version of upcoming PostGIS 2.1.0. As befits a minor release, the focus is on speed improvements, more features, and bug fixes. While this beta release is feature complete, we expect some bugs and we'd appreciate it if you test it before final release and report back with any issues you run into so we can have a smooth release.
PostgreSQL versions supported in this release are PostgreSQL 9.0-9.3. PostGIS 2.1 is the first minor release to support PostgreSQL 9.3.
If you are currently using PostGIS 2.0+ (compiled with raster support) and PostgreSQL 9.1+, you can go the soft upgrade path:
ALTER EXTENSION postgis UPDATE TO "2.1.0beta3";
Users of 1.5 and below will need to go the hard-upgrade path.
Best served with a bottle of GEOS 3.4.0dev (still in development) and PostgreSQL 9.3beta2 (which will also be released in next week or so).
SOURCE: http://download.osgeo.org/postgis/source/postgis-2.1.0beta3.tar.gz
HTML DOCS: http://download.osgeo.org/postgis/docs/doc-html-2.1.0beta3.tar.gz
PDF DOCS: http://download.osgeo.org/postgis/docs/postgis-2.1.0beta3.pdf
EPUB DOCS: http://download.osgeo.org/postgis/docs/postgis-2.1.0beta3.epub
Key features of upcoming PostGIS 2.1.0 were outlined in our beta2 release
http://postgis.net/2013/05/11/postgis-2-1-0beta2
This release contains bug fixes completed since 2.1.0beta2 release
Continue reading "PostGIS 2.1.0beta3 released"
Sunday, June 16. 2013
Printer Friendly
I've been having issues with PostgreSQL error handling mostly on windows 64-bit using binaries I build with mingw64 and using under VC++ built PostgreSQL. Most of which I don't understand. As many have pointed out these issues MIGHT go away or be easier to debug if PostGIS was built with same tool chain as EDB VC++ distributions. I can't argue with that especially since its never been done.
The good news is changing my build chain from mingw64 GCC 4.5.4 to mingw64 GCC 4.8.0 has eradicated all of these issues,
and even ones I had with PL/V8 that happended both in a pure mingw64(w32/w64) as well as PostgreSQL VCC (32/64 bit) environment. It did
introduce this minor annoying nat, presumably because my libpq.dll now has a dependency on user32.dll (which just seems wrong). The other nat is that all the binaries I built that have c++ in them (depend on libstd++) now need to be recompiled which means my prior builds of PostGIS will not be compatible with my upcoming 4.8.0 ones. A real pain since for PostGIS/pgRouting I've got like at least 15 of those dependencies and growing. So I've decided to perform this exercise just for PostgreSQL 9.3 -- a new beginning at PostGIS 2.1 and see how it goes
before I bother with 9.2, 9.1. These issues really only affect PostgreSQL 64-bit PostGIS users and as a 64-bit user, you may never have even come across them.
Continue reading "CMake support for PostGIS planned"
Tuesday, May 21. 2013
Printer Friendly
One of the things that really frustrated me about the KNN GIST distance box box centroid operators that came in PostgreSQL 9.1 and PostGIS 2.0 was the fact that one of the elements
needed to be constant to take advantage of the index. In PostGIS speak, this meant you couldn't put it in the FROM clause and could only enjoy it in one of two ways.
Continue reading "KNN GIST with a Lateral twist: Coming soon to a database near you"
|