<?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; postgresql</title>
	<atom:link href="http://blogs.enterprisedb.com/tag/postgresql/feed/" 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>Mon, 06 Feb 2012 18:26:56 +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>Postgres Enterprise Manager; I love it when a plan comes together</title>
		<link>http://blogs.enterprisedb.com/2011/08/23/postgres-enterprise-manager-i-love-it-when-a-plan-comes-together/</link>
		<comments>http://blogs.enterprisedb.com/2011/08/23/postgres-enterprise-manager-i-love-it-when-a-plan-comes-together/#comments</comments>
		<pubDate>Tue, 23 Aug 2011 12:51:52 +0000</pubDate>
		<dc:creator>Dave Page</dc:creator>
				<category><![CDATA[Product Features]]></category>
		<category><![CDATA[postgres plus advanced server]]></category>
		<category><![CDATA[postgresql]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=1114</guid>
		<description><![CDATA[After 9 months of heads-down work, I&#8217;m glad to finally be able to talk about the project I and a number of colleagues here at EnterpriseDB have been working on&#8230; Introducing Postgres Enterprise Manager!
Postgres Enterprise Manager, or PEM as we tend to call it, is based on the Open Source pgAdmin project which I started [...]]]></description>
			<content:encoded><![CDATA[<p>After 9 months of heads-down work, I&#8217;m glad to finally be able to talk about the project I and a number of colleagues here at EnterpriseDB have been working on&#8230; Introducing <a href="http://www.enterprisedb.com/products-services-training/products/postgres-enterprise-manager">Postgres Enterprise Manager</a>!</p>
<p>Postgres Enterprise Manager, or PEM as we tend to call it, is based on the Open Source <a href="http://www.pgadmin.org">pgAdmin project</a> which I started over thirteen(!) years ago to give users a graphical tool for managing and developing their Postgres databases. PEM builds on pgAdmin by adding a number of features for sysadmins, DBAs and developers with a focus on management of multiple servers, adding features such as:</p>
<p>- A centralised directory of servers allows all users in the organisation to quickly and easily manage any server.</p>
<p>- Monitoring and logging of hundreds of different metrics from database objects, the Postgres server, and the host/operating system.</p>
<p>- Over 130 different alert templates that may be used to build customised alerts to warn when aspects of your database go outside of the norm. A number of preconfigured alerts help get you up and running quickly and easily.</p>
<p>- A Capacity Manager that allows you to generate reports based on the metrics collected from your databases, Postgres servers and hosts/operating systems.  Metrics from different aspects of your system can be charted together, allowing you to correlate database events with operating system activity for example. Linear trend analysis features allow you to project usage trends into the future to help with capacity planning.</p>
<p>- The Postgres Expert analyses your Postgres servers and database schemas, advising on possible misconfigurations or sub-optimal designs. This &#8220;DBA in a box&#8221; can analyse your entire Postgres deployment in seconds.</p>
<p>- A number of Performance Monitoring Dashboards give the DBA and sysadmin a global overview of the state of the database servers, with the ability to drill down and examine the status of individual hosts, Postgres servers and databases at a glance.</p>
<p>- A SQL Profiler for developers working with Postgres. This tool allows users to capture workloads running on their server and examine each query in detail, viewing the query plan and resource/execution statistics for each individual query, and aggregate statistics for each different query executed with the workload captured. Poorly running queries can also be run through the Index Advisor when work working with Postgres Plus Advanced Server advising on and optionally creating new indexes to improve query performance.</p>
<p>PEM uses a multi-tier architecture. Each managed host runs a copy of an efficient agent (written in C++, and available on Linux, Windows and Solaris) which executes tasks and reports metrics from the host/operating system and one or more Postgres servers running on the host, back to the PEM server. The PEM server is an instance of PostgreSQL 9.0 typically run on a dedicated host (running Windows or Linux), which includes various additional software components including functionality for managing SSL certificates and a dedicated instance of the PEM agent responsible for tasks such as alert processing and garbage collection. The PEM client runs on users Windows or Linux workstations and provides the user interface to the system allowing the user to connect to the PEM server and use all the PEM features, or connect to unmanaged servers as you would with pgAdmin. One feature that can be used on servers that aren&#8217;t managed by PEM (for example, a server on a laptop) is the SQL Profiler. All that&#8217;s required to use the SQL Profiler is a plugin to the Postgres server that you wish to profile which hooks into the server to log the trace data &#8211; ideal for developers.</p>
<p>As far as I&#8217;m aware, PEM is the first management tool for Postgres that offers anything even close to this feature set, and we&#8217;re already working on adding more for the next version, but while we&#8217;re hacking on that why not give the first version <a href="http://www.enterprisedb.com/download-postgres-enterprise-manager">a try</a>.</p>
<a href='http://blogs.enterprisedb.com/2011/08/23/postgres-enterprise-manager-i-love-it-when-a-plan-comes-together/' class='retweet vert' >Postgres Enterprise Manager; I love it when a plan comes together</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2011/08/23/postgres-enterprise-manager-i-love-it-when-a-plan-comes-together/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<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>5</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>6</slash:comments>
		</item>
		<item>
		<title>European Union Recognizes PostgreSQL</title>
		<link>http://blogs.enterprisedb.com/2010/01/21/european-union-recognizes-postgresql/</link>
		<comments>http://blogs.enterprisedb.com/2010/01/21/european-union-recognizes-postgresql/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 23:32:46 +0000</pubDate>
		<dc:creator>Bruce Momjian</dc:creator>
				<category><![CDATA[Open Source Trends/News]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[european union]]></category>
		<category><![CDATA[PostgreSQL Community]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=230</guid>
		<description><![CDATA[It seems the European Commission studying the Oracle purchase of Sun/MySQL has finally realized Postgres is a viable open source alternative to MySQL and has approved the purchase:
The Commission&#8217;s investigation showed that another open source database, PostgreSQL, is considered by many database users to be a credible alternative to MySQL and could be expected to [...]]]></description>
			<content:encoded><![CDATA[<p>It seems the European Commission studying the Oracle purchase of Sun/MySQL has finally realized Postgres is a viable open source alternative to MySQL and has <a style="text-decoration: underline;" href="http://europa.eu/rapid/pressReleasesAction.do?reference=IP/10/40">approved</a> the purchase:</p>
<blockquote><p>The Commission&#8217;s investigation showed that another open source database, PostgreSQL, is considered by many database users to be a credible alternative to MySQL and could be expected to replace to some extent the competitive force currently exerted by MySQL on the database market.</p></blockquote>
<p>This <a style="text-decoration: underline;" href="http://www.betanews.com/article/EU-clears-Oracle-Sun-If-MySQL-fails-theres-always-PostgreSQL/1264109388">article</a>, titled in part, &#8220;If MySQL fails, there&#8217;s always PostgreSQL&#8221;, puts it even more succinctly. I know many MySQL people worked very hard campaigning against approval, and I am sure they are disappointed by the outcome. Postgres users should thank them because even though they lost, their work has increased the visibility of all open source databases, including PostgreSQL.</p>
<a href='http://blogs.enterprisedb.com/2010/01/21/european-union-recognizes-postgresql/' class='retweet vert' >European Union Recognizes PostgreSQL</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2010/01/21/european-union-recognizes-postgresql/feed/</wfw:commentRss>
		<slash:comments>1</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>3</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>3</slash:comments>
		</item>
		<item>
		<title>PostgreSQL: The Credible Alternative to MySQL</title>
		<link>http://blogs.enterprisedb.com/2009/12/29/postgresql-the-credible-alternative-to-mysql/</link>
		<comments>http://blogs.enterprisedb.com/2009/12/29/postgresql-the-credible-alternative-to-mysql/#comments</comments>
		<pubDate>Tue, 29 Dec 2009 19:15:46 +0000</pubDate>
		<dc:creator>Larry Alston</dc:creator>
				<category><![CDATA[Open Source Trends/News]]></category>
		<category><![CDATA[PostgreSQL Community]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[marty widenius]]></category>
		<category><![CDATA[open source database]]></category>
		<category><![CDATA[open source in the enterprise]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=200</guid>
		<description><![CDATA[In a recent blog post, Help Keep the Internet Free, Monty Widenius makes the argument that the free existence LAMP stack is threatened by the eventual acquisition of MySQL by Oracle in the Sun/Oracle deal.   His reasoning stems from the position that there is no credible alternative for MySQL and Oracle will be an awful [...]]]></description>
			<content:encoded><![CDATA[<p>In a recent blog post, <a href="http://monty-says.blogspot.com/2009/12/help-keep-internet-free.html" target="_self">Help Keep the Internet Free</a>, Monty Widenius makes the argument that the free existence LAMP stack is threatened by the eventual acquisition of MySQL by Oracle in the Sun/Oracle deal.   His reasoning stems from the position that there is no credible alternative for MySQL and Oracle will be an awful steward for the MySQL franchise.</p>
<p>There is much to debate about the many points Monty makes in this blog entry but one in particular deserves a mention here.</p>
<blockquote><p><em>&#8220;Q:  Why can&#8217;t everyone just switch to PostgreSQL?</em></p>
<p><em>PostgreSQL is a great database; I am friends with many of the PostgreSQL core developers.</em></p>
<p><em>The problems with PostgreSQL are:</em></p>
<ul>
<li><em>It&#8217;s not compatible with MySQL (different feature sets and different support by various applications) and it&#8217;s far from trivial (in many cases practically impossible) to convert MySQL applications to PostgreSQL and vice versa.</em></li>
<li><em>It doesn&#8217;t have a single strong company backing that MySQL has to deliver high class support globally.</em></li>
<li><em>The PostgreSQL market is also, as far as I know, dominated by EnterpriseDB that provides a closed source version of PostgreSQL, which is not good enough for companies standardizing on open source.</em></li>
</ul>
<p><em>So for the Oracle/Sun/MySQL case, PostgreSQL is not an answer that would help approve the deal, the market share is too small.&#8221;</em></p></blockquote>
<p>Needless to say we at EnterpriseDB could not disagree more with this point of view.</p>
<p><span id="more-200"></span></p>
<p>The reality is there are many applications that have successfully migrated from MySQL to PostgreSQL.  There are many reasons that organizations are already <a href="http://www.enterprisedb.com/learning/success.do" target="_self">migrating from MySQL to PostgreSQL</a> and they are all in direct contradiction to Monty’s assertions that PostgreSQL is not a credible alternative to MySQL. Let&#8217;s address his points one at a time:</p>
<blockquote><p><em>It&#8217;s not compatible with MySQL (different feature sets and different support by various applications) and it&#8217;s far from trivial (in many cases practically impossible) to convert MySQL applications to PostgreSQL and vice versa.</em></p></blockquote>
<p>It’s true that MySQL and PostgreSQL are not completely compatible out of the box; for instance, PostgreSQL is fully SQL compliant and MySQL is not.  However, there are <a href="http://www.enterprisedb.com/products/download.do" target="_self">tools from EnterpriseDB</a> and features in the <a href="http://www.postgresql.org/download/" target="_self">latest release of PostgreSQL 8.4</a> that help make this task much easier.   To claim that the task is impossible is far from true and very misleading.</p>
<blockquote><p><em>It doesn&#8217;t have a single strong company backing that MySQL has to deliver high class support globally.</em></p></blockquote>
<p>Here at EnterpriseDB we provide enterprise class support, services, and training for PostgreSQL, and deliver these products globally with our own staff and via partners.   The Postgres community is a large, successful, and growing independent open source community that has never been controlled by a single vendor; this was the same for Linux when it launched and as it is structured today.   EnterpriseDB brings the same value to the Postgres community that Red Hat brings to the Linux community.  We think this is the best of both worlds for users: a large and independent community with a permissive license but a strong enterprise-focused vendor to turn to when needed.</p>
<p>A few notes about EnterpriseDB’s strength as a vendor:</p>
<ul>
<li> We are backed by three of the most well-known technology venture capitalists in the business.</li>
<li> We are currently finishing our strongest year ever as a business.</li>
<li> We expanded our business reach into new markets in Europe and Asia</li>
<li> We have successfully signed more than 150 new customers this year alone, and</li>
<li> We also acquired two new strategic investors in IBM and Red Hat.</li>
<li> Arguably EnterpriseDB is as strong if not stronger as a commercial open source vendor than MySQL was, at the same stage of maturity.</li>
</ul>
<blockquote><p><em>The PostgreSQL market is also, as far as I know, dominated by EnterpriseDB that provides a closed source version of PostgreSQL, which is not good enough for companies standardizing on open source.</em></p></blockquote>
<p>This argument is quiet simply misinformed, and is in direct contradiction to his previous point that the Postgres community doesn’t have a strong company backing it.  EnterpriseDB’s commercial distributions of PostgreSQL are named Postgres Plus, there are two versions of Postgres Plus – Standard and Advanced.   Our <a href="http://www.enterprisedb.com/products/postgres_plus/overview.do" target="_self">Postgres Plus Standard Server</a> distribution is fully open source and uses a BSD license.   Standard Server adds great documentation, installers, and certifies the distribution with other products and open source projects typically used in conjunction with PostgreSQL but it remains a fully open source product.   <a href="http://www.enterprisedb.com/products/postgres_plus_as/overview.do" target="_self">Postgres Plus Advanced Server</a> does have some closed source extensions to provide <a href="http://www.enterprisedb.com/solutions/business_case.do" target="_self">Oracle compatibility functionality</a> for those customers that wish to leverage their investment in Oracle skills to develop and use PostgreSQL-based database in their applications. However, the core source code is built upon the PostgreSQL distribution.</p>
<p>In closing we believe Monty’s black and white argument that PostgreSQL isn’t a credible alternative for MySQL seems self-serving while discounting what is actually taking place in the open source database market.   We concede that there are MySQL-based applications that may be too costly to move to PostgreSQL or may not require the fully functioning RDBMS features that PostgreSQL provides…in those cases moving to PostgreSQL may not be a practical alternative.  However, PostgreSQL is a credible alternative for MySQL and one that should be considered by those looking for alternatives.</p>
<a href='http://blogs.enterprisedb.com/2009/12/29/postgresql-the-credible-alternative-to-mysql/' class='retweet vert' >PostgreSQL: The Credible Alternative to MySQL</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2009/12/29/postgresql-the-credible-alternative-to-mysql/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Security Enhanced Postgres</title>
		<link>http://blogs.enterprisedb.com/2009/12/17/security-enhanced-postgres/</link>
		<comments>http://blogs.enterprisedb.com/2009/12/17/security-enhanced-postgres/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 18:48:58 +0000</pubDate>
		<dc:creator>Bruce Momjian</dc:creator>
				<category><![CDATA[Open Source Trends/News]]></category>
		<category><![CDATA[PostgreSQL Community]]></category>
		<category><![CDATA[national security agency]]></category>
		<category><![CDATA[nec japan]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[security-enhanced linux]]></category>
		<category><![CDATA[sepostgresql]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=226</guid>
		<description><![CDATA[NEC Japan employee KaiGai Kohei has been working on a security-enhanced version of Postgres (SEPostgreSQL) for two years using the Security-Enhanced Linux framework.  The community recently had a long discussion (summary) about the challenges and usefulness of adding this feature. While concerns about adding the feature are legitimate, some of those concerns have been [...]]]></description>
			<content:encoded><![CDATA[<p><a style="text-decoration: none;" href="http://www.nec.com/">NEC Japan</a> employee KaiGai Kohei has been working on a security-enhanced version of Postgres (<a style="text-decoration: none;" href="http://wiki.postgresql.org/wiki/SEPostgreSQL">SEPostgreSQL</a>) for two years using the <a style="text-decoration: none;" href="http://en.wikipedia.org/wiki/Security-Enhanced_Linux">Security-Enhanced Linux</a> framework.  The community recently had a long <a style="text-decoration: underline;" href="http://archives.postgresql.org/pgsql-hackers/2009-12/msg00001.php">discussion</a> (<a style="text-decoration: none;" href="http://lwn.net/Articles/242087/">summary</a>) about the challenges and usefulness of adding this feature. While concerns about adding the feature are legitimate, some of those concerns have been recently addressed by:</p>
<ul>
<li>The involvement of security professionals from the <a style="text-decoration: none;" href="http://www.nsa.gov/">National Security Agency</a> (NSA) and <a style="text-decoration: none;" href="http://www.tresys.com/">Tresys</a></li>
<li>A dedicated security community meeting in Maryland (<a style="text-decoration: none;" href="http://wiki.postgresql.org/wiki/SEPostgreSQL_Review_at_the_BWPUG">report</a>)</li>
<li>News interest in this feature because of government and credit card security requirements</li>
</ul>
<p>It seems there is now increased user and developer interest in implementing this feature. The development would be done in several stages by adding:</p>
<ul>
<li>SE-Linux support for existing Postgres permissions</li>
<li>Native and SE-Linux mandatory access control (MAC)</li>
<li>Native and SE-Linux row-level security</li>
</ul>
<p>The community is still in an exploratory stage and it might take months for a firm plan to be accepted.</p>
<a href='http://blogs.enterprisedb.com/2009/12/17/security-enhanced-postgres/' class='retweet vert' >Security Enhanced Postgres</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2009/12/17/security-enhanced-postgres/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The International MySQL Soap Opera</title>
		<link>http://blogs.enterprisedb.com/2009/12/16/the-international-mysql-soap-opera/</link>
		<comments>http://blogs.enterprisedb.com/2009/12/16/the-international-mysql-soap-opera/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 21:47:02 +0000</pubDate>
		<dc:creator>Bruce Momjian</dc:creator>
				<category><![CDATA[Open Source Trends/News]]></category>
		<category><![CDATA[european union]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[postgresql]]></category>
		<category><![CDATA[sun microsystems]]></category>

		<guid isPermaLink="false">http://blogs.enterprisedb.com/?p=224</guid>
		<description><![CDATA[A year ago I wrote a tongue-in-cheek blog entry about the MySQL &#8220;soap opera&#8221;.  I never anticipated the soap opera would take on the international importance it has today, with the European Union (EU) questioning the purchase of Sun Microsystems by Oracle.
There have already been two excellent Postgres blog posts about this issue (1. [...]]]></description>
			<content:encoded><![CDATA[<p>A year ago I wrote a tongue-in-cheek <a style="text-decoration: underline;" href="http://momjian.us/main/blogs/pgblog/2008.html#July_29_2008">blog entry</a> about the MySQL &#8220;soap opera&#8221;.  I never anticipated the soap opera would take on the international importance it has today, with the <a style="text-decoration: none;" href="http://en.wikipedia.org/wiki/European_Union">European Union</a> (EU) <a style="text-decoration: underline;" href="http://online.wsj.com/article/SB10001424052748704193004574588112464008166.html?mod=googlenews_wsj">questioning</a> the purchase of Sun Microsystems by Oracle.</p>
<p>There have already been two excellent Postgres blog posts about this issue (<a style="text-decoration: underline;" href="http://it.toolbox.com/blogs/database-soup/snoracle-mysql-and-the-death-of-duallicensing-35850?rss=1">1</a>. <a style="text-decoration: underline;" href="http://blog.endpoint.com/2009/12/live-by-sword-die-by-sword.html">2</a>), so I just want to make three observations:</p>
<ul>
<li>I never thought Oracle cared enough about MySQL to delay the merger, e.g. MySQL was not mentioned in the merger announcement, and MySQL makes up a small portion of Sun&#8217;s revenue. I am guessing either MySQL is more important than Oracle revealed, or Oracle is resisting the EU objections out of principle or stubbornness. (Perhaps there is some advantage to Oracle in delaying the merger.)</li>
<li>Oracle users rarely migrate to MySQL, so I don&#8217;t understand the anti-competitive objection to the merger. Even then-CEO Marten Mickos <a style="text-decoration: underline;" href="http://www.internetnews.com/ent-news/article.php/2225191">said</a> in 2003 that MySQL complements and does not compete against Oracle, so it is hard to understand why the EU is objecting to the purchase on monopolistic grounds. As much as MySQL tried to position itself by adding enterprise features, the effort was incomplete, and based on the limited number of people who port applications from Oracle to MySQL, probably not very successful.Of course, Postgres works well for both MySQL and Oracle workloads based on the number of people who port applications every day, and Postgres will remain a viable open source database alternative no matter what happens to MySQL.</li>
<li>There is an argument that dual-licensing is required to create successful open source software companies.  Of course <a style="text-decoration: none;" href="http://www.redhat.com/">Red Hat</a>, other GPL-only software companies, and Postgres companies are doing just fine, so it is hard to see how this argument makes sense.  It <em>might</em> be a requirement if you expect to pay all the MySQL developers, which is the way MySQL has always operated in the past. Postgres and most open source projects rely much more on volunteers and on multiple companies supporting developers who work in a cooperative fashion; MySQL was an aberration in this area.Interestingly, some MySQL users are <a style="text-decoration: underline;" href="http://www.unix.com/unix-linux-rss-news/125609-monty-program-abs-suggestion-eu-commission-get-rid-gpl-mysql.html#post302378718">suggesting</a> a compromise of changing MySQL to use the Apache/BSD license, like Postgres&#8217;s, which certainly is easier for companies, but not a requirement. There is a few thoughtful articles (<a style="text-decoration: underline;" href="http://lwn.net/SubscriberLink/366480/0712670703bfb2b2/">1</a>, <a style="text-decoration: underline;" href="http://www.jroller.com/dmdevito/entry/dual_licensing_has_a_bad">2</a>, <a style="text-decoration: underline;" href="http://broadcast.oreilly.com/2009/12/give-it-up-monty.html">3</a>) about the licensing issue.</li>
</ul>
<p>I think the big concern Postgres people have is that many of the things being said about this merger are either wrong or MySQL-specific and portray open source, and open source databases specifically, in an inaccurate way.</p>
<a href='http://blogs.enterprisedb.com/2009/12/16/the-international-mysql-soap-opera/' class='retweet vert' >The International MySQL Soap Opera</a>]]></content:encoded>
			<wfw:commentRss>http://blogs.enterprisedb.com/2009/12/16/the-international-mysql-soap-opera/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

