I just published a new security talk, Securing PostgreSQL From External Attack. I recently presented this talk for the first time in Brazil.
This presentation is also available in on-demand webcast format.
New Security Talk
I just published a new security talk, Securing PostgreSQL From External Attack. I recently presented this talk for the first time in Brazil.
This presentation is also available in on-demand webcast format.
New Security TalkLast weekend, I presented “Monitoring Your PostgreSQL Database with Hyperic” at PG Con West and while creating my slides, I looked at many other options of how to monitor production databases. I was impressed by the sheer number of options available for monitoring PostgreSQL with 19 project listed on PgFoundry, but I was also disheartened by those same number of options. Many of the projects have overlapping capabilities each written in the developer’s language of choice. Also, none of the projects provided an overarching solution that would allow administrators to monitor complex PostgreSQL deployments. This is where Hyperic fits. Hyperic allows administrators to create monitoring across complex PostgreSQL architectures such as show below.

Without an integrated solution that will monitor the different pieces infrastructure, tracking down potential bottlenecks becomes a nightmare. Hyperic can be overkill in some small environments, but its model is something the PostgreSQL community should consider instead of writing yet another monitoring tool.
Monitoring the Monitoring ToolsThe idea behind the ‘elastic’ cloud is that you can simply ’stretch’ your wasteband by adding more junk in your trunk, i.e. putting more servers online to give you the ability to scale. The biggest problem here, however, is the simple fact that Postgres really operates on a ’shared-nothing’ architecture, so how is it that we gain anything by simply adding more resources? That is, how does Postgres become elastic without changing the application or doing massive architecture work?
Right off the bat, I’ll attempt to eliminate confusion. The following describes a feature specific to EnterpriseDB’s proprietary product, Postgres Plus Advanced Server, and, specifically, InfiniteCache.
Scaling Postgres Plus Advanced Server in the CloudOn Sunday at PG West, David Fetter gave an interesting presentation about recursive queries; he explained step by step how recursive queries can create Mandelbrot sets and solve traveling salesman problems. I had seen these queries before but this is the first time I heard them explained. Interestingly, two levels of recursive queries were used — one recursive query’s output was fed into the next recursive query, which was then fed into the main query.
Lists and Recursion and Trees (Oh, My!)Today at PG West I saw a great presentation by Josh Berkus about the many variants of Postgres — it was a trip down memory lane. I was also surprised to see how many offshoots there are of Postgres; I had heard many of the names before but it was surprising to see them all listed together.
Elephant Roads: PostgreSQL Patches and VariantsWhen developing the Postgres backend, we are always mindful of keeping the code clean, efficient, and reliable. For some people, our style is too conservative, but end-users appreciate our current approach. One thing we often avoid is complex coding — the pitfalls of which are well presented in a blog post by Joel Spolsky (Joel on Software). Talking about programmers grappling with complex designs, Joel wrote:
“You see, everybody else is too afraid of looking stupid because they just can’t keep enough facts in their head at once to make multiple inheritance, or templates, or COM, or multithreading, or any of that stuff work. So they sheepishly go along with whatever faddish programming craziness has come down from the architecture astronauts who speak at conferences and write books and articles and are so much smarter than us that they don’t realize that the stuff that they’re promoting is too hard for us.”
No, I am not advocating Duct Tape programming (as mentioned in the blog), but the Postgres project is always trying to steer between Duct Tape programming and overly-complex design programming.
Coding SimplicityI have relicensed all my presentations under the Creative Commons Attribution License, which most closely matches the BSD licensed used by Postgres. Previously there was no license on the presentations, meaning, I think, all rights were reserved. (My book cannot be relicensed because the copyright is owned by the publisher, Addison-Wesley.)
Presentation LicenseYou are currently browsing the Open Enterprise: The PostgreSQL Open Source Database Blog from EnterpriseDB blog archives for May, 2012.