<?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: Reduce Complexity with Self-Expiring Data Columns</title>
	<atom:link href="http://www.nodroidsallowed.com/2007/12/03/reduce-complexity-with-self-expiring-data/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.nodroidsallowed.com/2007/12/03/reduce-complexity-with-self-expiring-data/</link>
	<description>Practical techniques for raising a well-adjusted database</description>
	<lastBuildDate>Tue, 17 Jan 2012 12:33:02 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
	<item>
		<title>By: vdibart</title>
		<link>http://www.nodroidsallowed.com/2007/12/03/reduce-complexity-with-self-expiring-data/comment-page-1/#comment-8</link>
		<dc:creator>vdibart</dc:creator>
		<pubDate>Thu, 20 Dec 2007 15:41:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.nodroidsallowed.com/?p=6#comment-8</guid>
		<description>You are right - you will always need a background process if you want to perform some other action when it expires.  This pattern doesn&#039;t address that issue, only the issue of whether you need a background process to actually do the expiring.  But keep in mind that the background process itself can construct the query as outlined above.  If you think about this for a while, you will realize that the pattern naturally ensures that you can rerun that process any number of times without harming data integrity.  But that might be a topic for another post :)</description>
		<content:encoded><![CDATA[<p>You are right &#8211; you will always need a background process if you want to perform some other action when it expires.  This pattern doesn&#8217;t address that issue, only the issue of whether you need a background process to actually do the expiring.  But keep in mind that the background process itself can construct the query as outlined above.  If you think about this for a while, you will realize that the pattern naturally ensures that you can rerun that process any number of times without harming data integrity.  But that might be a topic for another post <img src='http://www.nodroidsallowed.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: charles</title>
		<link>http://www.nodroidsallowed.com/2007/12/03/reduce-complexity-with-self-expiring-data/comment-page-1/#comment-7</link>
		<dc:creator>charles</dc:creator>
		<pubDate>Thu, 20 Dec 2007 01:06:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.nodroidsallowed.com/?p=6#comment-7</guid>
		<description>Hey Vinny, thanks for the tip.  This definitely sounds like the right method for self-expiring data.  But I think you would still need a background process if you want to take action at the time of expiration (e.g. sending an email notification).  Are there any other ways to do that?</description>
		<content:encoded><![CDATA[<p>Hey Vinny, thanks for the tip.  This definitely sounds like the right method for self-expiring data.  But I think you would still need a background process if you want to take action at the time of expiration (e.g. sending an email notification).  Are there any other ways to do that?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: vdibart</title>
		<link>http://www.nodroidsallowed.com/2007/12/03/reduce-complexity-with-self-expiring-data/comment-page-1/#comment-5</link>
		<dc:creator>vdibart</dc:creator>
		<pubDate>Thu, 06 Dec 2007 20:59:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.nodroidsallowed.com/?p=6#comment-5</guid>
		<description>If I understand you properly.....logically, I think this is the same as using just EXPIRES_TS.  In other words:

TTL  + CREATE_TS = EXPIRES_TS

So in effect this is an alternate formulation of the idea, and I think just as valid.  One benefit I can think of is that you probably don&#039;t have to index TTL, so if you already have CREATE_TS indexed you&#039;re saving yourself on index space and upkeep.  One drawback is that it&#039;s not very self-descriptive - the developer would have to know that TTL is applied to CREATE_TS, and not some other column like UPDATE_TS (which I always have in my tables....more on that later)

Thanks for the suggestion though.</description>
		<content:encoded><![CDATA[<p>If I understand you properly&#8230;..logically, I think this is the same as using just EXPIRES_TS.  In other words:</p>
<p>TTL  + CREATE_TS = EXPIRES_TS</p>
<p>So in effect this is an alternate formulation of the idea, and I think just as valid.  One benefit I can think of is that you probably don&#8217;t have to index TTL, so if you already have CREATE_TS indexed you&#8217;re saving yourself on index space and upkeep.  One drawback is that it&#8217;s not very self-descriptive &#8211; the developer would have to know that TTL is applied to CREATE_TS, and not some other column like UPDATE_TS (which I always have in my tables&#8230;.more on that later)</p>
<p>Thanks for the suggestion though.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jason</title>
		<link>http://www.nodroidsallowed.com/2007/12/03/reduce-complexity-with-self-expiring-data/comment-page-1/#comment-4</link>
		<dc:creator>Jason</dc:creator>
		<pubDate>Thu, 06 Dec 2007 18:04:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.nodroidsallowed.com/?p=6#comment-4</guid>
		<description>Dog,

What about a TTL column in conjunction with the CREATE_TS, instead of EXPIRED_TS? That would answer your homework problem of messages differing expiration times. If you wanted to change all messages that lived for ten days to twenty you wouldn&#039;t have to look at CREATE_TS to do so. Display code would add TTL to CREATE_TS and check against sysdate. would also improve performance the bulk update. There are pros and cons to this but I guess the only major advantage to the TTL way would be for clarity in the varying expiration logic.

- Jason</description>
		<content:encoded><![CDATA[<p>Dog,</p>
<p>What about a TTL column in conjunction with the CREATE_TS, instead of EXPIRED_TS? That would answer your homework problem of messages differing expiration times. If you wanted to change all messages that lived for ten days to twenty you wouldn&#8217;t have to look at CREATE_TS to do so. Display code would add TTL to CREATE_TS and check against sysdate. would also improve performance the bulk update. There are pros and cons to this but I guess the only major advantage to the TTL way would be for clarity in the varying expiration logic.</p>
<p>- Jason</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.260 seconds -->

