<?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>MaisonBisson.com &#187; database</title>
	<atom:link href="http://maisonbisson.com/blog/post/tag/database/feed/" rel="self" type="application/rss+xml" />
	<link>http://maisonbisson.com</link>
	<description>A bunch of stuff I would have emailed you about.</description>
	<lastBuildDate>Sat, 14 Nov 2009 20:14:03 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Introducing bsuite_speedcache</title>
		<link>http://maisonbisson.com/bsuite</link>
		<comments>http://maisonbisson.com/bsuite#comments</comments>
		<pubDate>Mon, 03 Oct 2005 05:06:11 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[bsuite]]></category>
		<category><![CDATA[bsuite_speedcache]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[cache hit]]></category>
		<category><![CDATA[codex]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[database caching]]></category>
		<category><![CDATA[database optimization]]></category>
		<category><![CDATA[database performance]]></category>
		<category><![CDATA[database queries]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[mysql caching]]></category>
		<category><![CDATA[mysql optimization]]></category>
		<category><![CDATA[mysql performance]]></category>
		<category><![CDATA[mysql queries]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress optimization]]></category>
		<category><![CDATA[wordpress performance]]></category>
		<category><![CDATA[wordpress performance optimization]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/?p=10861</guid>
		<description><![CDATA[
I wrote bsuite_speedcache to reduce the number of database queries I was executing per page load. By implementing it on some of the content in my sidebar, I dropped 35 queries for each cache hit. That might not seem like much, but it should average about 525 queries per minute that that my host server [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-10861"><!-- &nbsp; --></abbr>
<p>I wrote bsuite_speedcache to reduce the number of database queries I was executing per page load. By implementing it on some of the content in my sidebar, I dropped 35 queries for each cache hit. That might not seem like much, but it should average about 525 queries per minute that that my host server <em>won&#8217;t</em> need to process.</p>
<p>Now that I&#8217;m looking seriously at optimizing my queries, I&#8217;ve also cut the monthly archives links from the sidebar. The SELECT DISTINCT query it relies on <a href="http://www.databasejournal.com/features/postgresql/article.php/3437821">hits MySQL hard</a>. It wouldn&#8217;t be so bad if the <a href="http://codex.wordpress.org/Template_Tags/get_archives">get_archives</a> function could be set to return the results (and my attempts at output buffering seemed to conflict with something else within WP), but it can&#8217;t and without being able to feed the results into the cache it has to be re-queried with every page load.</p>
<p>Between removing the archives links and bsuite_speedcache, I&#8217;ve gone from 136 to 99 queries for the front page and my story pages went from 65 to 28.</p>
<p>Where is it?</p>
<p>I&#8217;m going to ask my pal <a href="http://nosheep.net/">Zach</a> (who knows a lot more about MySQL optimization than I do) to take a look at it with an eye toward making sure I&#8217;m not missing any easy optimization opportunities (and that I&#8217;m not causing trouble in one area I&#8217;ve got a question about).</p>
<p>With that done, and after I add some code to create the DB table and such, I&#8217;ll try to release it sometime this week.<br />
<!-- technorati tags start -->
<p style="text-align:right;font-size:10px;">tags: <a href="http://www.technorati.com/tag/bsuite_speedcache" rel="tag">bsuite_speedcache</a>, <a href="http://www.technorati.com/tag/bsuite" rel="tag">bsuite</a>, <a href="http://www.technorati.com/tag/cache" rel="tag">cache</a>, <a href="http://www.technorati.com/tag/cache hit" rel="tag">cache hit</a>, <a href="http://www.technorati.com/tag/codex" rel="tag">codex</a>, <a href="http://www.technorati.com/tag/database" rel="tag">database</a>, <a href="http://www.technorati.com/tag/database caching" rel="tag">database caching</a>, <a href="http://www.technorati.com/tag/database optimization" rel="tag">database optimization</a>, <a href="http://www.technorati.com/tag/database performance" rel="tag">database performance</a>, <a href="http://www.technorati.com/tag/database queries" rel="tag">database queries</a>, <a href="http://www.technorati.com/tag/mysql" rel="tag">mysql</a>, <a href="http://www.technorati.com/tag/mysql caching" rel="tag">mysql caching</a>, <a href="http://www.technorati.com/tag/mysql optimization" rel="tag">mysql optimization</a>, <a href="http://www.technorati.com/tag/mysql performance" rel="tag">mysql performance</a>, <a href="http://www.technorati.com/tag/mysql queries" rel="tag">mysql queries</a>, <a href="http://www.technorati.com/tag/wordpress" rel="tag">wordpress</a>, <a href="http://www.technorati.com/tag/wordpress optimization" rel="tag">wordpress optimization</a>, <a href="http://www.technorati.com/tag/wordpress performance" rel="tag">wordpress performance</a>, <a href="http://www.technorati.com/tag/wordpress performance optimization" rel="tag">wordpress performance optimization</a>, <a href="http://www.technorati.com/tag/wordpress plugin" rel="tag">wordpress plugin</a></p>
<p><!-- technorati tags end --></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/bsuite/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Doing Relevance Ranked Full-Text Searches In MySQL</title>
		<link>http://maisonbisson.com/blog/post/10752/making-mysql-do-relevance-ranked-full-text-searches/</link>
		<comments>http://maisonbisson.com/blog/post/10752/making-mysql-do-relevance-ranked-full-text-searches/#comments</comments>
		<pubDate>Tue, 06 Sep 2005 11:56:33 +0000</pubDate>
		<dc:creator>Casey Bisson</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[boolean search]]></category>
		<category><![CDATA[boolean searches]]></category>
		<category><![CDATA[boolean searching]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[db]]></category>
		<category><![CDATA[docs]]></category>
		<category><![CDATA[documentation]]></category>
		<category><![CDATA[full text]]></category>
		<category><![CDATA[full text index]]></category>
		<category><![CDATA[full text search]]></category>
		<category><![CDATA[full text searching]]></category>
		<category><![CDATA[fulltext]]></category>
		<category><![CDATA[fulltext search]]></category>
		<category><![CDATA[keywords]]></category>
		<category><![CDATA[match()]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[rank]]></category>
		<category><![CDATA[relevance]]></category>
		<category><![CDATA[relevance rank]]></category>
		<category><![CDATA[relevance ranked]]></category>
		<category><![CDATA[relevance ranking]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[search full text]]></category>

		<guid isPermaLink="false">http://maisonbisson.com/blog/?p=10752</guid>
		<description><![CDATA[
I&#8217;m going out on a limb to say MySQL&#8217;s full-text indexing and searching features are underused. They appeared in MySQL 3.23.23 (most people are using 4.x, and 5 is in development), but it&#8217;s been news to most of the people I know.
Here&#8217;s the deal, the MATCH() function can search a full-text index for a string [...]]]></description>
			<content:encoded><![CDATA[<abbr class="unapi-id" title="maisonbisson-10752"><!-- &nbsp; --></abbr>
<p>I&#8217;m going out on a limb to say MySQL&#8217;s full-text indexing and searching features are underused. They appeared in MySQL 3.23.23 (most people are using 4.x, and 5 is in development), but it&#8217;s been news to most of the people I know.</p>
<p>Here&#8217;s the deal, the <a href="http://dev.mysql.com/doc/mysql/en/fulltext-search.html">MATCH()</a> function can search a full-text index for a string of text (one or more words) and return relevance-ranked results. It&#8217;s at the core of the list of <a href="http://maisonbisson.com/blog/post/10770/">related links</a> at the bottom of every post here.</p>
<p>For that query, I put all the tag names into a single variable that might look like this:</p>
<blockquote><p>$keywords = “mysql database php select full-text search full-text searching docs documentation”</p></blockquote>
<p>Then I do a select that looks something like this:</p>
<blockquote><p>SELECT * FROM wp_posts WHERE MATCH(post_title,post_content) AGAINST(&#8217;$keywords&#8217;);</p></blockquote>
<p>The <a href="http://dev.mysql.com/doc/mysql/en/fulltext-search.html">docs</a> give a lot more detail, including how to do <a href="http://dev.mysql.com/doc/mysql/en/fulltext-boolean.html">boolean searches</a>.</p>
<p><!-- technorati tags start -->
<p style="text-align:right;font-size:10px;">tags: <a href="http://www.technorati.com/tag/boolean search" rel="tag">boolean search</a>, <a href="http://www.technorati.com/tag/boolean searches" rel="tag">boolean searches</a>, <a href="http://www.technorati.com/tag/boolean searching" rel="tag">boolean searching</a>, <a href="http://www.technorati.com/tag/database" rel="tag">database</a>, <a href="http://www.technorati.com/tag/db" rel="tag">db</a>, <a href="http://www.technorati.com/tag/docs" rel="tag">docs</a>, <a href="http://www.technorati.com/tag/documentation" rel="tag">documentation</a>, <a href="http://www.technorati.com/tag/full text" rel="tag">full text</a>, <a href="http://www.technorati.com/tag/full text index" rel="tag">full text index</a>, <a href="http://www.technorati.com/tag/full text search" rel="tag">full text search</a>, <a href="http://www.technorati.com/tag/full text searching" rel="tag">full text searching</a>, <a href="http://www.technorati.com/tag/fulltext" rel="tag">fulltext</a>, <a href="http://www.technorati.com/tag/fulltext search" rel="tag">fulltext search</a>, <a href="http://www.technorati.com/tag/keywords" rel="tag">keywords</a>, <a href="http://www.technorati.com/tag/match()" rel="tag">match()</a>, <a href="http://www.technorati.com/tag/mysql" rel="tag">mysql</a>, <a href="http://www.technorati.com/tag/rank" rel="tag">rank</a>, <a href="http://www.technorati.com/tag/relevance" rel="tag">relevance</a>, <a href="http://www.technorati.com/tag/relevance rank" rel="tag">relevance rank</a>, <a href="http://www.technorati.com/tag/relevance ranked" rel="tag">relevance ranked</a>, <a href="http://www.technorati.com/tag/relevance ranking" rel="tag">relevance ranking</a>, <a href="http://www.technorati.com/tag/search" rel="tag">search</a>, <a href="http://www.technorati.com/tag/search full text" rel="tag">search full text</a></p>
<p><!-- technorati tags end --></p>
]]></content:encoded>
			<wfw:commentRss>http://maisonbisson.com/blog/post/10752/making-mysql-do-relevance-ranked-full-text-searches/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>