<?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: Materialized view makes login process 25k times faster</title>
	<atom:link href="http://kontrollsoft.com/archives/588/feed" rel="self" type="application/rss+xml" />
	<link>http://kontrollsoft.com/archives/588</link>
	<description>[relational database software]</description>
	<lastBuildDate>Mon, 08 Nov 2010 17:34:39 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
	<item>
		<title>By: Darius Jahandarie</title>
		<link>http://kontrollsoft.com/archives/588/comment-page-1#comment-73</link>
		<dc:creator>Darius Jahandarie</dc:creator>
		<pubDate>Sun, 10 Jan 2010 23:27:24 +0000</pubDate>
		<guid isPermaLink="false">http://kontrollsoft.com/?p=588#comment-73</guid>
		<description>Hi Justin,

The RENAME TABLE code isn&#039;t truly ACID. MySQL doesn&#039;t have anything like the write-ahead log. It is only a hack in the code. Anything further would require a major restructuring of all DDL statements in MySQL.</description>
		<content:encoded><![CDATA[<p>Hi Justin,</p>
<p>The RENAME TABLE code isn&#8217;t truly ACID. MySQL doesn&#8217;t have anything like the write-ahead log. It is only a hack in the code. Anything further would require a major restructuring of all DDL statements in MySQL.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Justin Swanhart</title>
		<link>http://kontrollsoft.com/archives/588/comment-page-1#comment-69</link>
		<dc:creator>Justin Swanhart</dc:creator>
		<pubDate>Sat, 09 Jan 2010 01:59:05 +0000</pubDate>
		<guid isPermaLink="false">http://kontrollsoft.com/?p=588#comment-69</guid>
		<description>Hi Darius,

First off MySQL support atomic rename:
rename table a to b, b to c, c to d, d to a;

When you build a mview with flexviews, you can choose incremental maintenance or &quot;complete&quot; maintenance.  The latter uses atomic rename to ensure the view is queryable while it refreshes, but then to atomically replace it once the rebuild is completed.  The former uses table logs and DML to asynchronously maintain the view.</description>
		<content:encoded><![CDATA[<p>Hi Darius,</p>
<p>First off MySQL support atomic rename:<br />
rename table a to b, b to c, c to d, d to a;</p>
<p>When you build a mview with flexviews, you can choose incremental maintenance or &#8220;complete&#8221; maintenance.  The latter uses atomic rename to ensure the view is queryable while it refreshes, but then to atomically replace it once the rebuild is completed.  The former uses table logs and DML to asynchronously maintain the view.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: themattreid</title>
		<link>http://kontrollsoft.com/archives/588/comment-page-1#comment-68</link>
		<dc:creator>themattreid</dc:creator>
		<pubDate>Fri, 08 Jan 2010 16:44:11 +0000</pubDate>
		<guid isPermaLink="false">http://kontrollsoft.com/?p=588#comment-68</guid>
		<description>I did check that out, it looks interesting and quite flexible - One of the reference links I posted in the article is for their project. I only found out about it after I finished coding the MV for Kontrollbase. :)</description>
		<content:encoded><![CDATA[<p>I did check that out, it looks interesting and quite flexible &#8211; One of the reference links I posted in the article is for their project. I only found out about it after I finished coding the MV for Kontrollbase. <img src='http://kontrollsoft.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: René Leonhardt</title>
		<link>http://kontrollsoft.com/archives/588/comment-page-1#comment-67</link>
		<dc:creator>René Leonhardt</dc:creator>
		<pubDate>Fri, 08 Jan 2010 11:35:50 +0000</pubDate>
		<guid isPermaLink="false">http://kontrollsoft.com/?p=588#comment-67</guid>
		<description>Have you looked at FlexViews already?
http://flexviews.sourceforge.net/
Current version: 1.5 Beta
http://sourceforge.net/projects/flexviews/files/</description>
		<content:encoded><![CDATA[<p>Have you looked at FlexViews already?<br />
<a href="http://flexviews.sourceforge.net/" rel="nofollow">http://flexviews.sourceforge.net/</a><br />
Current version: 1.5 Beta<br />
<a href="http://sourceforge.net/projects/flexviews/files/" rel="nofollow">http://sourceforge.net/projects/flexviews/files/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Darius Jahandarie</title>
		<link>http://kontrollsoft.com/archives/588/comment-page-1#comment-66</link>
		<dc:creator>Darius Jahandarie</dc:creator>
		<pubDate>Fri, 08 Jan 2010 05:07:34 +0000</pubDate>
		<guid isPermaLink="false">http://kontrollsoft.com/?p=588#comment-66</guid>
		<description>Nice article showing possible uses of materialized views.

This is a little hack I wrote awhile ago that can do (mostly) atomic materialization of views in MySQL:

CREATE TABLE new_materialized_view SELECT * FROM regular_view;
RENAME TABLE materialized_view = old_materialized_view, new_materialized_view = materialized_view;
DROP TABLE IF EXISTS old_materialized_view;

Unfortunately, MySQL doesn&#039;t support true ACID DDL statements, but RENAME TABLE has some code to rollback the operation if it fails, which is better than nothing.</description>
		<content:encoded><![CDATA[<p>Nice article showing possible uses of materialized views.</p>
<p>This is a little hack I wrote awhile ago that can do (mostly) atomic materialization of views in MySQL:</p>
<p>CREATE TABLE new_materialized_view SELECT * FROM regular_view;<br />
RENAME TABLE materialized_view = old_materialized_view, new_materialized_view = materialized_view;<br />
DROP TABLE IF EXISTS old_materialized_view;</p>
<p>Unfortunately, MySQL doesn&#8217;t support true ACID DDL statements, but RENAME TABLE has some code to rollback the operation if it fails, which is better than nothing.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

