<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.3.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>
<channel>
	<title>Comments on: HSCALE 0.1 released - Partitioning Using MySQL Proxy</title>
	<link>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/</link>
	<description></description>
	<pubDate>Sat, 05 Jul 2008 12:31:26 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
		<item>
		<title>By: Beats Programming Timbaland Style Javascript Tutorial J2ee</title>
		<link>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-3950</link>
		<dc:creator>Beats Programming Timbaland Style Javascript Tutorial J2ee</dc:creator>
		<pubDate>Sat, 05 Jul 2008 09:10:28 +0000</pubDate>
		<guid>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-3950</guid>
		<description>&lt;strong&gt;Beats Programming Timbaland Style Javascript Tutorial J2ee&lt;/strong&gt;

I didn't agree with you first, but last paragraph makes sense for me</description>
		<content:encoded><![CDATA[<p><strong>Beats Programming Timbaland Style Javascript Tutorial J2ee</strong></p>
<p>I didn&#8217;t agree with you first, but last paragraph makes sense for me</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: links for 2008-05-16 &#171; Bloggitation</title>
		<link>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-2273</link>
		<dc:creator>links for 2008-05-16 &#171; Bloggitation</dc:creator>
		<pubDate>Fri, 16 May 2008 00:30:35 +0000</pubDate>
		<guid>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-2273</guid>
		<description>[...] HSCALE 0.1 released - Partitioning Using MySQL Proxy (tags: mysql database cluster 247up sysadmin) [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] HSCALE 0.1 released - Partitioning Using MySQL Proxy (tags: mysql database cluster 247up sysadmin) [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pero</title>
		<link>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-456</link>
		<dc:creator>pero</dc:creator>
		<pubDate>Sun, 27 Apr 2008 16:15:07 +0000</pubDate>
		<guid>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-456</guid>
		<description>Kevin,

it is not that easy. Especially if functions or multiple columns are involved like in: SELECT * FROM tbl_name ORDER BY CONCAT(TO_DAYS(date_column), SUBSTRING(string_column, LOCATE('substr', string_column))) In order to merge all the results we would have to mimic mysql server logic (or we rewrite the query to include the order by conditions as hidden columns so we can use them for sort later on). Currently this is much better handled within your application. Remember that "full partition scan" is something you should try to avoid as much as you can anyway since it becomes quite a heavy operation. But you are right that simple ORDER BY could be integrated quite easy.

Greetings

Peter</description>
		<content:encoded><![CDATA[<p>Kevin,</p>
<p>it is not that easy. Especially if functions or multiple columns are involved like in: SELECT * FROM tbl_name ORDER BY CONCAT(TO_DAYS(date_column), SUBSTRING(string_column, LOCATE(&#8217;substr&#8217;, string_column))) In order to merge all the results we would have to mimic mysql server logic (or we rewrite the query to include the order by conditions as hidden columns so we can use them for sort later on). Currently this is much better handled within your application. Remember that &#8220;full partition scan&#8221; is something you should try to avoid as much as you can anyway since it becomes quite a heavy operation. But you are right that simple ORDER BY could be integrated quite easy.</p>
<p>Greetings</p>
<p>Peter</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kevin McCravy</title>
		<link>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-449</link>
		<dc:creator>Kevin McCravy</dc:creator>
		<pubDate>Sat, 26 Apr 2008 04:29:34 +0000</pubDate>
		<guid>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-449</guid>
		<description>To make the ORDER BY work just have each database perform the ORDER BY on it's part of the data and merge the results in the proxy. [http://en.wikipedia.org/wiki/Heapsort]</description>
		<content:encoded><![CDATA[<p>To make the ORDER BY work just have each database perform the ORDER BY on it&#8217;s part of the data and merge the results in the proxy. [http://en.wikipedia.org/wiki/Heapsort]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pero</title>
		<link>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-391</link>
		<dc:creator>pero</dc:creator>
		<pubDate>Mon, 14 Apr 2008 11:30:54 +0000</pubDate>
		<guid>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-391</guid>
		<description>eriam,

currently LIMIT clauses are handled correctly (even though the natural order cannot be preserved due to the nature of having data spread along multiple tables). Queries that go to all tables (i.e. a full partition scan is performed) that contain ORDER BY are rejected. (Our application doesn't use ORDER BY in full partition scans).

The only way to implement ORDER BY in these cases would be to perform the sort in the MySQL Proxy. I would rather solve this in the application layer, i.e. rewrite queries and application logic. Remember, HSCALE is not a "magical plug-in and forget" module that abstracts the MySQL Server in all its functions but a module to aid you writing application based partitioning.

Anyway, if you have any more ideas, please let me know!

Greetings

Peter</description>
		<content:encoded><![CDATA[<p>eriam,</p>
<p>currently LIMIT clauses are handled correctly (even though the natural order cannot be preserved due to the nature of having data spread along multiple tables). Queries that go to all tables (i.e. a full partition scan is performed) that contain ORDER BY are rejected. (Our application doesn&#8217;t use ORDER BY in full partition scans).</p>
<p>The only way to implement ORDER BY in these cases would be to perform the sort in the MySQL Proxy. I would rather solve this in the application layer, i.e. rewrite queries and application logic. Remember, HSCALE is not a &#8220;magical plug-in and forget&#8221; module that abstracts the MySQL Server in all its functions but a module to aid you writing application based partitioning.</p>
<p>Anyway, if you have any more ideas, please let me know!</p>
<p>Greetings</p>
<p>Peter</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: eriam</title>
		<link>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-389</link>
		<dc:creator>eriam</dc:creator>
		<pubDate>Mon, 14 Apr 2008 08:59:18 +0000</pubDate>
		<guid>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-389</guid>
		<description>Hello,

Just a quick question, how do you plan to distribute queries and combine results that contains ORDER BY and/or LIMIT statements ?

I'm curious because I'm working on something similar (written in Perl though).

Thanks</description>
		<content:encoded><![CDATA[<p>Hello,</p>
<p>Just a quick question, how do you plan to distribute queries and combine results that contains ORDER BY and/or LIMIT statements ?</p>
<p>I&#8217;m curious because I&#8217;m working on something similar (written in Perl though).</p>
<p>Thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: links for 2008-04-13 &#171; Breyten&#8217;s Dev Blog</title>
		<link>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-385</link>
		<dc:creator>links for 2008-04-13 &#171; Breyten&#8217;s Dev Blog</dc:creator>
		<pubDate>Sun, 13 Apr 2008 11:33:34 +0000</pubDate>
		<guid>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-385</guid>
		<description>[...] HSCALE 0.1 released - Partitioning Using MySQL Proxy (tags: links) [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] HSCALE 0.1 released - Partitioning Using MySQL Proxy (tags: links) [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Frédéric Sidler</title>
		<link>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-375</link>
		<dc:creator>Frédéric Sidler</dc:creator>
		<pubDate>Fri, 11 Apr 2008 13:31:52 +0000</pubDate>
		<guid>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-375</guid>
		<description>Regarding all big traffic web site they all did that, but without mysql-proxy. That's very nice to share these scripts.
Did you find a way to dynamically add a node to the list of database servers when you need some more.</description>
		<content:encoded><![CDATA[<p>Regarding all big traffic web site they all did that, but without mysql-proxy. That&#8217;s very nice to share these scripts.<br />
Did you find a way to dynamically add a node to the list of database servers when you need some more.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mike</title>
		<link>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-358</link>
		<dc:creator>mike</dc:creator>
		<pubDate>Thu, 10 Apr 2008 08:12:01 +0000</pubDate>
		<guid>http://pero.blogs.aprilmayjune.org/2008/04/10/hscale-01-released-partitioning-using-mysql-proxy/#comment-358</guid>
		<description>This is cool. Sharding pushed from application level to a transparent DB proxy?

Didn't even think of that. I hope this idea gets picked up and someone runs with it, in some shape or form! Thanks for getting the ball rolling!</description>
		<content:encoded><![CDATA[<p>This is cool. Sharding pushed from application level to a transparent DB proxy?</p>
<p>Didn&#8217;t even think of that. I hope this idea gets picked up and someone runs with it, in some shape or form! Thanks for getting the ball rolling!</p>
]]></content:encoded>
	</item>
</channel>
</rss>
