<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: DrySQL: Not All I Had Hoped</title>
	<atom:link href="http://barelyenough.org/blog/2007/01/drysql-not-all-i-had-hoped/feed/" rel="self" type="application/rss+xml" />
	<link>http://barelyenough.org/blog/2007/01/drysql-not-all-i-had-hoped/</link>
	<description>… and there is much to be learned</description>
	<lastBuildDate>Thu, 02 Feb 2012 14:46:19 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Bryan Evans</title>
		<link>http://barelyenough.org/blog/2007/01/drysql-not-all-i-had-hoped/comment-page-1/#comment-9540</link>
		<dc:creator>Bryan Evans</dc:creator>
		<pubDate>Tue, 30 Jan 2007 20:05:25 +0000</pubDate>
		<guid isPermaLink="false">http://pezra.barelyenough.org/blog/2007/01/drysql-not-all-i-had-hoped/#comment-9540</guid>
		<description>&lt;p&gt;Hi Peter&lt;/p&gt;

&lt;p&gt;I just wanted to follow up with you about your performance issues with DrySQL. I have just released a new version of the gem (0.2.0), which yields considerably better performance with all supported databases (in my test environment).&lt;/p&gt;

&lt;p&gt;As well, the latest release introduces the ActiveRecord::Base.generate_orm method, which will generate the associations and validations for all your model classes on demand, for those who prefer to take the performance hit upfront rather than incrementally during the application&#039;s uptime.&lt;/p&gt;

&lt;p&gt;DrySQL is still a work in progress, but hopefully you&#039;ll find the latest release to be an improvement over the previous.&lt;/p&gt;

&lt;p&gt;Cheers.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Bryan&lt;/li&gt;
&lt;/ul&gt;
</description>
		<content:encoded><![CDATA[<p>Hi Peter</p>
<p>I just wanted to follow up with you about your performance issues with DrySQL. I have just released a new version of the gem (0.2.0), which yields considerably better performance with all supported databases (in my test environment).</p>
<p>As well, the latest release introduces the ActiveRecord::Base.generate_orm method, which will generate the associations and validations for all your model classes on demand, for those who prefer to take the performance hit upfront rather than incrementally during the application&#8217;s uptime.</p>
<p>DrySQL is still a work in progress, but hopefully you&#8217;ll find the latest release to be an improvement over the previous.</p>
<p>Cheers.</p>
<ul>
<li>Bryan</li>
</ul>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bryan Evans</title>
		<link>http://barelyenough.org/blog/2007/01/drysql-not-all-i-had-hoped/comment-page-1/#comment-7983</link>
		<dc:creator>Bryan Evans</dc:creator>
		<pubDate>Mon, 08 Jan 2007 17:05:23 +0000</pubDate>
		<guid isPermaLink="false">http://pezra.barelyenough.org/blog/2007/01/drysql-not-all-i-had-hoped/#comment-7983</guid>
		<description>&lt;p&gt;Hi Peter&lt;/p&gt;

&lt;p&gt;You&#039;re absolutely right...DrySQL&#039;s performance with PostgreSQL is abysmal. My benchmarks revealed an average time of 15 seconds per model class for DrySQL to reflect on the information schema and retrieve the class&#039;s table metadata, and then fetch a row from the table. As you mentioned in your post, this becomes less worrisome in long-running production apps because the DB reflection is only done once per model class, but I do believe that performance is an issue that needs to be addressed.&lt;/p&gt;

&lt;p&gt;As for tweaking your environment, the only thing that comes to mind is choosing a Ruby-PostgreSQL driver. I had difficulty getting the Windows native driver to work in my environment, so I chose a pure Ruby driver in the interest of time since I only use PostgreSQL for testing. I&#039;m told that the pure ruby driver is considerably slower than the native one, which may explain the poor performance I experience.&lt;/p&gt;

&lt;p&gt;I have admittedly neglected PostgreSQL in favor of other DBMSs that I have had more incentive to support, but I do plan to address performance with PostgreSQL as soon as I can. DrySQL&#039;s performance with most of the other DBMSs that it supports is considerably better than with PostgreSQL (i.e. less than a second for the same benchmark test with Oracle or MySQL), but I still plan to address the performance in those as well.&lt;/p&gt;

&lt;p&gt;In the short term, my plan is to work on optimizing the queries that DrySQL uses to retrieve DB schema information, and to offer user-configurable DB reflection so that programmers can choose when and how they would like DrySQL to reflect on their DB schema.&lt;/p&gt;

&lt;p&gt;Thanks for trying out DrySQL. If you care to share any more benchmarking information or offer any suggestions for improvement, I&#039;m sure that readers of the DrySQL forums on RubyForge (myself included) would appreciate it.
http://rubyforge.org/forum/?group_id=2438&lt;/p&gt;

&lt;p&gt;Cheers.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Bryan&lt;/li&gt;
&lt;/ul&gt;
</description>
		<content:encoded><![CDATA[<p>Hi Peter</p>
<p>You&#8217;re absolutely right&#8230;DrySQL&#8217;s performance with PostgreSQL is abysmal. My benchmarks revealed an average time of 15 seconds per model class for DrySQL to reflect on the information schema and retrieve the class&#8217;s table metadata, and then fetch a row from the table. As you mentioned in your post, this becomes less worrisome in long-running production apps because the DB reflection is only done once per model class, but I do believe that performance is an issue that needs to be addressed.</p>
<p>As for tweaking your environment, the only thing that comes to mind is choosing a Ruby-PostgreSQL driver. I had difficulty getting the Windows native driver to work in my environment, so I chose a pure Ruby driver in the interest of time since I only use PostgreSQL for testing. I&#8217;m told that the pure ruby driver is considerably slower than the native one, which may explain the poor performance I experience.</p>
<p>I have admittedly neglected PostgreSQL in favor of other DBMSs that I have had more incentive to support, but I do plan to address performance with PostgreSQL as soon as I can. DrySQL&#8217;s performance with most of the other DBMSs that it supports is considerably better than with PostgreSQL (i.e. less than a second for the same benchmark test with Oracle or MySQL), but I still plan to address the performance in those as well.</p>
<p>In the short term, my plan is to work on optimizing the queries that DrySQL uses to retrieve DB schema information, and to offer user-configurable DB reflection so that programmers can choose when and how they would like DrySQL to reflect on their DB schema.</p>
<p>Thanks for trying out DrySQL. If you care to share any more benchmarking information or offer any suggestions for improvement, I&#8217;m sure that readers of the DrySQL forums on RubyForge (myself included) would appreciate it.<br />
<a href="http://rubyforge.org/forum/?group_id=2438" rel="nofollow">http://rubyforge.org/forum/?group_id=2438</a></p>
<p>Cheers.</p>
<ul>
<li>Bryan</li>
</ul>
]]></content:encoded>
	</item>
</channel>
</rss>

