<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Open Enterprise: The PostgreSQL Open Source Database Blog from EnterpriseDB &#187; Jim Mlodgenski</title>
	<atom:link href="http://blogs.enterprisedb.com/author/jim_mlodgenski/feed/?category_name=postgresql" rel="self" type="application/rss+xml" />
	<link>http://blogs.enterprisedb.com</link>
	<description>Commentary, tutorials, and announcements surrounding PostgreSQL, Postgres Plus, and open source.</description>
	<lastBuildDate>Thu, 29 Jul 2010 17:46:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Oracle/Sun not off to a good start with open source</title>
		<link>http://blogs.enterprisedb.com/2010/07/29/oraclesun-not-off-to-a-good-start-with-open-source/</link>
		<comments>http://blogs.enterprisedb.com/2010/07/29/oraclesun-not-off-to-a-good-start-with-open-source/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 13:50:03 +0000</pubDate>
		<dc:creator>Jim Mlodgenski</dc:creator>
				<category><![CDATA[Open Source Tools]]></category>
		<category><![CDATA[PostgreSQL Community]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[postgres]]></category>
		<category><![CDATA[sun microsystems]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=455</guid>
		<description><![CDATA[Hot off the heels of Oracle stopping the PostgreSQL build farm servers for Solaris, Oracle released an automatic update for Java that rebrands the company name from Sun to Oracle which had the cascading effect of breaking Eclipse.
While I don&#8217;t think this is some sort of coordinated plan by Larry to bring down open source [...]]]></description>
			<content:encoded><![CDATA[<p>Hot off the heels of Oracle stopping the PostgreSQL <a href="http://www.itnews.com.au/News/221051,oracle-shuts-down-open-source-test-servers.aspx">build farm servers for Solaris</a>, Oracle released an automatic update for Java that rebrands the company name from Sun to Oracle which had the cascading effect of <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=319514">breaking Eclipse</a>.</p>
<p>While I don&#8217;t think this is some sort of coordinated plan by Larry to bring down open source in general, I think this is indicative of the pain of integrating Sun in to Oracle and we can expect more of this in the future. On the positive side, I think the reactions by the PostgreSQL and Eclipse communities really highlight the power of the open source process. In both cases, the communities had solutions quickly in the wake of the mess created by Oracle.</p>
<a href='http://blogs.enterprisedb.com/2010/07/29/oraclesun-not-off-to-a-good-start-with-open-source/' class='retweet vert' >Oracle/Sun not off to a good start with open source</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2010/07/29/oraclesun-not-off-to-a-good-start-with-open-source/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Scala PostgreSQL Access</title>
		<link>http://blogs.enterprisedb.com/2010/07/08/scala-postgresql-access/</link>
		<comments>http://blogs.enterprisedb.com/2010/07/08/scala-postgresql-access/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 20:01:33 +0000</pubDate>
		<dc:creator>Jim Mlodgenski</dc:creator>
				<category><![CDATA[Open Source Tools]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[jdbc]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[postgres]]></category>
		<category><![CDATA[scala]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=403</guid>
		<description><![CDATA[Recently, I&#8217;ve been digging into Scala to understand how PostgreSQL would integrate inside of Scala code. Scala is an interesting language which runs on the JVM like Java but eliminates much of the Java boiler plate code increasing the productivity of developers. With many of the knowledgeable Java programmers advocating Scala and large success stories [...]]]></description>
			<content:encoded><![CDATA[<p>Recently, I&#8217;ve been digging into Scala to understand how PostgreSQL would integrate inside of Scala code. Scala is an interesting language which runs on the JVM like Java but eliminates much of the Java boiler plate code increasing the productivity of developers. With many of the knowledgeable Java programmers advocating Scala and large success stories like Twitter becoming more common, there is a possibility that one day Scala will unseat Java and the dominate enterprise programming language in the future. Given this possibility, it is encouraging that PostgreSQL is respected in the Scala community, but unfortunately, what I&#8217;m finding, database persistence in general is still appears to be immature inside of Scala. There is an early module called DBC that attempts to provide database connectivity, but this initial attempt was lacking. Below is an example of running a simple query which I find very awkward:</p>
<pre>object MainDBC {

  import scala.dbc._
  import scala.dbc.Syntax._
  import syntax.Statement._

  def main(args: Array[String]): Unit = {
    val db = database("jdbc:postgresql://localhost/scala","postgres","password")
    val res = db.executeStatement {
      (select fields (("pgbench_tellers.tid" of integer)
                  and ("pgbench_tellers.bid" of integer)
                  and ("pgbench_branches.bbalance" of integer))
         from "pgbench_tellers, pgbench_branches"
        where "pgbench_tellers.bid = pgbench_branches.bid")
    }

    println(" tid   bid   bbalance")
    println("----- ----- ----------")
    for(val i &lt;- res) {
      for(val f &lt;- i.fields) {
        val r = f.content.sqlString
        print(r + "      ".dropRight(r.length))
      }
      println()
    }
  }
}</pre>
<p>There are a number of object layers available that may be much easier to use, but the nice thing about Scala running on the JVM is that you can leverage the low level JDBC interface and eliminate much of the awkwardness. Below is an example of the same query but using JDBC.</p>
<pre>object MainJDBC {

  import java.sql.{Connection, DriverManager, ResultSet}

  def main(args: Array[String]): Unit = {
    classOf[org.postgresql.Driver]
    val db = DriverManager.getConnection("jdbc:postgresql://localhost/scala","postgres","password")
    val st = db.createStatement

    val res = st.executeQuery(
               "SELECT pgbench_tellers.tid, pgbench_tellers.bid, pgbench_branches.bbalance" +
               "  FROM pgbench_tellers, pgbench_branches " +
               " WHERE pgbench_tellers.bid = pgbench_branches.bid")

    println(" tid   bid   bbalance")
    println("----- ----- ----------")
    while (res.next) {
        for(val i &lt;- 1 to res.getMetaData.getColumnCount) {
          val r = res.getInt(i).toString
          print(r + "      ".dropRight(r.length))
        }
        println
    }
    db.close
  }
}</pre>
<a href='http://blogs.enterprisedb.com/2010/07/08/scala-postgresql-access/' class='retweet vert' >Scala PostgreSQL Access</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2010/07/08/scala-postgresql-access/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Give Me My Own Cloud</title>
		<link>http://blogs.enterprisedb.com/2010/02/25/give-me-my-own-cloud/</link>
		<comments>http://blogs.enterprisedb.com/2010/02/25/give-me-my-own-cloud/#comments</comments>
		<pubDate>Thu, 25 Feb 2010 14:54:40 +0000</pubDate>
		<dc:creator>Jim Mlodgenski</dc:creator>
				<category><![CDATA[Open Source Tools]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[database savings]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[oracle]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=238</guid>
		<description><![CDATA[I&#8217;ve recently attended several Cloud Computing forums and panels, and the general feeling throughout most of the audience has been that the promise of Cloud Computing sounds great, but many organizations are still apprehensive about moving to a public cloud such as Amazon&#8217;s EC2. This is understandable given security concerns and just the general feeling [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently attended several Cloud Computing forums and panels, and the general feeling throughout most of the audience has been that the promise of Cloud Computing sounds great, but many organizations are still apprehensive about moving to a public cloud such as Amazon&#8217;s EC2. This is understandable given security concerns and just the general feeling of a lack of control, so the concept of private clouds  becomes a great solution. It allows organizations to use the power of Cloud Computing without ever leaving the friendly confines of their own data center. There are many products that enable this such as VMWare&#8217;s vShere and the open source product Eucalyptus with many more on the way. When you look at this architecturally, this really is the next generation of virtualization giving administrators more power to efficiently use their physical resources.</p>
<p>The other interesting trend was the types of applications organizations are considering for use in the cloud. While there is much talk about replatforming existing application onto Cloud Computing infrastructures, many organizations seem to people getting their feet wet with new applications. They seem to be fairly traditional applications and not leveraging the elasticity of the cloud and they are just leveraging the financial benefits of not needed to procure new hardware. This trend show a lot of great promise for PostgreSQL given that Oracle does not have a favorable licensing model in virtualized environments. While Oracle is expensive in traditional environments, much of the cost benefits are eroded when Oracle is needed in a cloud environment. This is leading many people to open source solutions and PostgreSQL is a natural fit for many Oracle users.</p>
<a href='http://blogs.enterprisedb.com/2010/02/25/give-me-my-own-cloud/' class='retweet vert' >Give Me My Own Cloud</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2010/02/25/give-me-my-own-cloud/feed/</wfw:commentRss>
		<slash:comments>220</slash:comments>
		</item>
		<item>
		<title>Streaming PostgreSQL into the Cloud</title>
		<link>http://blogs.enterprisedb.com/2010/01/19/streaming-postgresql-into-the-cloud/</link>
		<comments>http://blogs.enterprisedb.com/2010/01/19/streaming-postgresql-into-the-cloud/#comments</comments>
		<pubDate>Wed, 20 Jan 2010 02:43:25 +0000</pubDate>
		<dc:creator>Jim Mlodgenski</dc:creator>
				<category><![CDATA[mysql]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[postgres]]></category>
		<category><![CDATA[replication]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=216</guid>
		<description><![CDATA[The recent Streaming Replication patch committed to the PostgreSQL source tree is the potential killer feature that can catapult PostgreSQL into a prominent position in the cloud computing landscape. This combined with Hot Standby fills a major void in PostgreSQL by providing a replication solution native to the core engine and allows for a horizontally [...]]]></description>
			<content:encoded><![CDATA[<p>The recent Streaming Replication patch committed to the PostgreSQL source tree is the potential killer feature that can catapult PostgreSQL into a prominent position in the cloud computing landscape. This combined with Hot Standby fills a major void in PostgreSQL by providing a replication solution native to the core engine and allows for a horizontally scalable solution without any bolt ons. This is a key piece of functionality to leverage the elasticity promise of compute clouds. While it has always been possible to use replication with PostgreSQL, integrating this into the core will allow new PostgreSQL users to easily use replication without feeling overwhelmed by learning Slonik scripts. What is most exciting about this is the timing of when this is all happening. With the uncertainty of the future of MySQL, there are more people than ever looking at PostgreSQL and one of the biggest historical knocks on PostgreSQL is the lack of an integrated replication solution. This is huge as this new audience starts to look at PostgreSQL and realize that PostgreSQL can more than fit their needs as an open source database instead of MySQL.</p>
<a href='http://blogs.enterprisedb.com/2010/01/19/streaming-postgresql-into-the-cloud/' class='retweet vert' >Streaming PostgreSQL into the Cloud</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2010/01/19/streaming-postgresql-into-the-cloud/feed/</wfw:commentRss>
		<slash:comments>142</slash:comments>
		</item>
		<item>
		<title>Does PostgreSQL Run in the Cloud?</title>
		<link>http://blogs.enterprisedb.com/2010/01/11/does-postgresql-run-in-the-cloud/</link>
		<comments>http://blogs.enterprisedb.com/2010/01/11/does-postgresql-run-in-the-cloud/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 21:03:45 +0000</pubDate>
		<dc:creator>Jim Mlodgenski</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[postgres]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=210</guid>
		<description><![CDATA[Cloud Computing is the new big wave in the Information technology industry, but it is an amorphous term that is commonly misunderstood. I talk to people everyday who are confused by the Cloud, but Cloud Computing is simply a shared computing resource and has actually been part of the IT landscape for many years. The [...]]]></description>
			<content:encoded><![CDATA[<p>Cloud Computing is the new big wave in the Information technology industry, but it is an amorphous term that is commonly misunderstood. I talk to people everyday who are confused by the Cloud, but Cloud Computing is simply a shared computing resource and has actually been part of the IT landscape for many years. The Cloud Computing ecosystem can be split into three categories, Software as a Service (SaaS), Platform as a Service (PaaS) and Infrastructure as a Service (IaaS). SaaS can be considered the first major breakthrough in what is considered Cloud Computing today with services such as Salesforce.com and email hosting like Gmail and Hotmail. PaaS evolved out of the success of successful SaaS offering and spawned platforms allowing users to enhance SaaS offerings with platforms like the Google App Engine and Force.com. The latest category of Cloud Computing of IaaS is driving the  excitement. This includes Storage Clouds and most importantly Compute Clouds. Compute Clouds are shared environments providing virtualized Operating Systems allowing users a platform to deploy applications with greater control over the resources and the ability to deploy the applications of their choice.  These Compute Clouds are where PostgreSQL can be used to back any sort of application you would run inside a traditional data center. These different types of Clouds and the use of the common Cloud Computing terminology among them leads to the confusion of what Cloud Computing really is and ultimately leads to the common question I hear &#8220;Does PostgreSQL run in the Cloud?&#8221;…Of course it does&#8230;</p>
<a href='http://blogs.enterprisedb.com/2010/01/11/does-postgresql-run-in-the-cloud/' class='retweet vert' >Does PostgreSQL Run in the Cloud?</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2010/01/11/does-postgresql-run-in-the-cloud/feed/</wfw:commentRss>
		<slash:comments>256</slash:comments>
		</item>
		<item>
		<title>More SQL Injection Attacks</title>
		<link>http://blogs.enterprisedb.com/2009/12/04/more-sql-injection-attacks/</link>
		<comments>http://blogs.enterprisedb.com/2009/12/04/more-sql-injection-attacks/#comments</comments>
		<pubDate>Fri, 04 Dec 2009 17:26:06 +0000</pubDate>
		<dc:creator>Jim Mlodgenski</dc:creator>
				<category><![CDATA[Open Source Tools]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[postgresql]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=192</guid>
		<description><![CDATA[This summer had some high profile hacks using SQL Injection attacks, but apparently this has not spurred a focus on locking down those holes in other websites. Last month, hackers where able to cause power outages in Brazil by using a SQL Injection attack. And just this week, the Wall St Journal was hacked.
These attacks [...]]]></description>
			<content:encoded><![CDATA[<p>This summer had some high profile hacks using SQL Injection attacks, but apparently this has not spurred a focus on locking down those holes in other websites. Last month, hackers where able to cause <a href="http://www.darkreading.com/blog/archives/2009/11/how_to_hack_a_b.html">power outages in Brazil</a> by using a SQL Injection attack. And just this week, <a href="http://www.thetechherald.com/article.php/200949/4878/SQL-Injection-discovered-on-Wall-Street-Journal">the Wall St Journal was hacked</a>.</p>
<p>These attacks will lead to more technological innovation in the ever growing security arms race. Just yesterday, <a href="http://www.h-online.com/open/news/item/Free-database-firewall-protects-PostgreSQL-and-MySQL-875919.html">GreenSQL released a new version</a> of their database firewall that supports PostgreSQL. While database firewall technology is an effective tool in preventing SQL Injection attacks, it may not be a viable option in many situations. Many application rely heavily on the performance and scalability of the database engine and adding a layer of complex processing between the application and database has its drawbacks. The innovation still needs to progress before SQL Injection attacks become a lot less common place in the wild world of the internet.</p>
<a href='http://blogs.enterprisedb.com/2009/12/04/more-sql-injection-attacks/' class='retweet vert' >More SQL Injection Attacks</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2009/12/04/more-sql-injection-attacks/feed/</wfw:commentRss>
		<slash:comments>115</slash:comments>
		</item>
		<item>
		<title>Monitoring the Monitoring Tools</title>
		<link>http://blogs.enterprisedb.com/2009/10/23/monitoring-the-monitoring-tools/</link>
		<comments>http://blogs.enterprisedb.com/2009/10/23/monitoring-the-monitoring-tools/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 20:39:59 +0000</pubDate>
		<dc:creator>Jim Mlodgenski</dc:creator>
				<category><![CDATA[PostgreSQL Community]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[hyperic]]></category>
		<category><![CDATA[jboss]]></category>
		<category><![CDATA[monitoring postgresql]]></category>
		<category><![CDATA[pg con west]]></category>
		<category><![CDATA[pgfoundry]]></category>
		<category><![CDATA[slony]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=138</guid>
		<description><![CDATA[Last weekend, I presented &#8220;Monitoring Your PostgreSQL Database with Hyperic&#8221; 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 [...]]]></description>
			<content:encoded><![CDATA[<p>Last weekend, I presented &#8220;Monitoring Your PostgreSQL Database with Hyperic&#8221; 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&#8217;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.</p>
<p style="text-align: center;"><img class="aligncenter" src="http://www.enterprisedb.com/img/blog/JBoss-Slony-PostgreSQL.jpg" border="0" alt="JBoss Slony PostgreSQL" align="center" /></p>
<p>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.</p>
<a href='http://blogs.enterprisedb.com/2009/10/23/monitoring-the-monitoring-tools/' class='retweet vert' >Monitoring the Monitoring Tools</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2009/10/23/monitoring-the-monitoring-tools/feed/</wfw:commentRss>
		<slash:comments>79</slash:comments>
		</item>
		<item>
		<title>PostgreSQL 8.4 Released</title>
		<link>http://blogs.enterprisedb.com/2009/07/06/postgresql-84-released/</link>
		<comments>http://blogs.enterprisedb.com/2009/07/06/postgresql-84-released/#comments</comments>
		<pubDate>Mon, 06 Jul 2009 13:03:11 +0000</pubDate>
		<dc:creator>Jim Mlodgenski</dc:creator>
				<category><![CDATA[Technical Alerts]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[bruce momjian]]></category>
		<category><![CDATA[postgresql 8.4]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=17</guid>
		<description><![CDATA[Last week, the PostgreSQL community announced the general availability of PostgreSQL 8.4. This is another great release from the community with a number of great new features such as analytical functions and even deeper security. All worthy features to be highlighted as the headline of the release, but the true headline feature is not even [...]]]></description>
			<content:encoded><![CDATA[<p>Last week, the <a href="http://www.postgresql.org" target="_blank">PostgreSQL</a> community announced the general availability of PostgreSQL 8.4. This is another great release from the community with a number of great new features such as analytical functions and even deeper security. All worthy features to be highlighted as the headline of the release, but the true headline feature is not even part of the core engine. In conjunction with the 8.4 release, <a href="http://momjian.us" target="_blank">Bruce Momjian</a> is in the process of releasing pg_migrator as an external project that allows users to upgrade their database in place. While most databases has had this functionality for years, it is something that PostgreSQL has lacked and in my opinion has held PostgreSQL back from deeper enterprise adoption. Previously, to move to a new major release, users would need to export their data from the old version and then import it into the new version. This works well when the database is small, but if the database is large, it could mean hours or days of downtime to upgrade the database along with at least double the storage to hold the two copies. This is completely unacceptable to  enterprises that need to maintain a 24&#215;7 environment. I believe that pg_migrator has cleared on the the few major technical hurdles preventing PostgreSQL from widespread commercial adoption.</p>
<a href='http://blogs.enterprisedb.com/2009/07/06/postgresql-84-released/' class='retweet vert' >PostgreSQL 8.4 Released</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2009/07/06/postgresql-84-released/feed/</wfw:commentRss>
		<slash:comments>41</slash:comments>
		</item>
	</channel>
</rss>
