<?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 for Enterprise Search, System Administration, and Cloud Computing</title>
	<atom:link href="http:///blog/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.tnrglobal.com/blog/</link>
	<description></description>
	<lastBuildDate>Thu, 20 May 2010 19:04:48 -0400</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Comment on How to get the MongoDB server version using PyMongo by Ross Farinella</title>
		<link>http://www.tnrglobal.com/blog/2010/05/how-to-get-the-mongodb-server-version-using-pymongo/cpage/1/#comment-271</link>
		<dc:creator>Ross Farinella</dc:creator>
		<pubDate>Thu, 20 May 2010 19:04:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.tnrglobal.com/blog/2010/05/how-to-get-the-mongodb-server-version-using-pymongo/#comment-271</guid>
		<description>Updated code to include the slicker-looking &quot;server_info()&quot; call -- thanks Mike!</description>
		<content:encoded><![CDATA[<p>Updated code to include the slicker-looking &#8220;server_info()&#8221; call &#8212; thanks Mike!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on How to get the MongoDB server version using PyMongo by Mike Dirolf</title>
		<link>http://www.tnrglobal.com/blog/2010/05/how-to-get-the-mongodb-server-version-using-pymongo/cpage/1/#comment-270</link>
		<dc:creator>Mike Dirolf</dc:creator>
		<pubDate>Thu, 20 May 2010 18:22:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.tnrglobal.com/blog/2010/05/how-to-get-the-mongodb-server-version-using-pymongo/#comment-270</guid>
		<description>Good tip! You can also use the server_info() method on a Connection instead of running the command manually. There are some tools (meant just for testing, but might be worth a look) that do this in the `test/version.py` file in the PyMongo source tree.</description>
		<content:encoded><![CDATA[<p>Good tip! You can also use the server_info() method on a Connection instead of running the command manually. There are some tools (meant just for testing, but might be worth a look) that do this in the `test/version.py` file in the PyMongo source tree.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on How to create a duplicate ESP collection without re-crawling! by Natasha</title>
		<link>http://www.tnrglobal.com/blog/2010/03/how-to-create-a-duplicate-esp-collection-without-re-crawling/cpage/1/#comment-229</link>
		<dc:creator>Natasha</dc:creator>
		<pubDate>Tue, 04 May 2010 20:34:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.tnrglobal.com/blog/2010/03/how-to-create-a-duplicate-esp-collection-without-re-crawling/#comment-229</guid>
		<description>thanks</description>
		<content:encoded><![CDATA[<p>thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on MySQL Error: BLOB/TEXT used in key specification without a key length by Jeff Peck</title>
		<link>http://www.tnrglobal.com/blog/2009/10/mysql-error-blobtext-used-in-key-specification-without-a-key-length/cpage/1/#comment-99</link>
		<dc:creator>Jeff Peck</dc:creator>
		<pubDate>Thu, 04 Feb 2010 02:40:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.tnrglobal.com/blog/2009/10/mysql-error-blobtext-used-in-key-specification-without-a-key-length/#comment-99</guid>
		<description>That&#039;s a really clever way to access fields in a database by a URL key.

Just thinking about it, I am noticing... to optimize this even further, you might want to store that MD5 hash in two BIGINT UNSIGNED fields with a single index over them (if you are not doing it that way already).

Storing them in CHAR(32) fields uses 256 bits per row whereas two BIGINTs are only 128 bits total, which is all that you need to store an MD5 hash.  The may not be a big deal for space, but should make a noticeable difference in the performance.

This would be the query to accomplish the insert in MySQL:

[code]
INSERT INTO `my_url_table` (`id_1`, `id_2`) VALUES (cast(conv(substring(md5(&quot;www.hugeurl.com&quot;),1,16),16,10) as unsigned integer),cast(conv(substring(md5(&quot;www.hugeurl.com&quot;),17,32),16,10) as unsigned integer))
[/code]

... where id_1 and id_2 are the primary keys.  Note the difference in substring() from 1 to 16 and from 17 to 32 to evenly slice the hash.

Another approach might be to use an CHAR(16) field and convert the hex md5 hash into ASCII.

Either way, I think the idea to access fields by their URL as a hash is a great idea!  Thanks.</description>
		<content:encoded><![CDATA[<p>That&#8217;s a really clever way to access fields in a database by a URL key.</p>
<p>Just thinking about it, I am noticing&#8230; to optimize this even further, you might want to store that MD5 hash in two BIGINT UNSIGNED fields with a single index over them (if you are not doing it that way already).</p>
<p>Storing them in CHAR(32) fields uses 256 bits per row whereas two BIGINTs are only 128 bits total, which is all that you need to store an MD5 hash.  The may not be a big deal for space, but should make a noticeable difference in the performance.</p>
<p>This would be the query to accomplish the insert in MySQL:</p>
<p>[code]<br />
INSERT INTO `my_url_table` (`id_1`, `id_2`) VALUES (cast(conv(substring(md5("www.hugeurl.com"),1,16),16,10) as unsigned integer),cast(conv(substring(md5("www.hugeurl.com"),17,32),16,10) as unsigned integer))<br />
[/code]</p>
<p>&#8230; where id_1 and id_2 are the primary keys.  Note the difference in substring() from 1 to 16 and from 17 to 32 to evenly slice the hash.</p>
<p>Another approach might be to use an CHAR(16) field and convert the hex md5 hash into ASCII.</p>
<p>Either way, I think the idea to access fields by their URL as a hash is a great idea!  Thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Integrate custom services with the Fast ESP Node Controller by andy</title>
		<link>http://www.tnrglobal.com/blog/2010/01/integrate-custom-services-with-the-fast-esp-node-controller/cpage/1/#comment-100</link>
		<dc:creator>andy</dc:creator>
		<pubDate>Wed, 13 Jan 2010 05:00:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.tnrglobal.com/blog/2010/01/integrate-custom-services-with-the-fast-esp-node-controller/#comment-100</guid>
		<description>Thankyou for visiting www.fastesphelp.com</description>
		<content:encoded><![CDATA[<p>Thankyou for visiting <a href="http://www.fastesphelp.com" rel="nofollow">http://www.fastesphelp.com</a></p>
]]></content:encoded>
	</item>
</channel>
</rss>

