.comment-link {margin-left:.6em;}

Oracle Sponge -- Now Moved To Wordpress

Please use http://oraclesponge.wordpress.com

Friday, April 07, 2006

My Dishwasher is List Partitioned

My dishwasher has two levels in it. The bottom level is for plates and Large Things, the top level is for cups and Small Things, and there is a removable cutlery partition attached to the door.

If I had a spare cutlery partition then I could keep one of them in use by the dishwashing system while the other one is treated as a regular cutlery holder, and it could be filled with dirty cutlery as the items become available. When it was full I could perform a cutlery partition exchange between the one with clean items and the one now full of dirty items.

If I had spare levels then they could be treated in a similar manner. I believe that commercial dishwashers have exactly that configuration, thus they operate with lower downtime because of this exchange mechanism, although the overall configuration requires more space.

Within the cutlery partition there are six subpartitions. I like to fill each one with a single type of cutlery -- one for knives, two for spoons (they don't stack as well), a couple for forks, and one for other items. Although it is more work to separate the items into these subpartitions it has the advantage of physically clustering all the spoons together and I can access all items of one type without having to scan the complete cutlery partition.

For the upper and lower levels similar principles apply, although they are not really subpartitioned in the same way. Instead the large plates are clustered in a single contiguous range -- the small plates, the glasses and the mugs each have their own place. Again it is more work to insert the items like this, but the advantage of faster retrieval is similar because I don't have to scan the complete level to pick similar items out from dissimilar ones.

That is all.


At 3:46 AM, Blogger Pete_S said...

Have you implemented partition exchange for the other partitions yet? ;)

At 10:51 PM, Anonymous Anonymous said...

Looks like the commercial ones that are partitioned, along with the partition exchange facility.

yours seem to have different tablespaces for each "object size" (small, medium, large).

What do you think?

At 2:25 AM, Anonymous OracleDoc said...

You need to get outside.

At 8:04 AM, Blogger Eric said...

I agree with oracledoc, you do need to use your bike more. But I think I'll keep the analogy for when I have to explain partition exchange to some IT-'architect' or somebody else that thinks he/she knows something about databases but does not have much clue really.

At 8:14 AM, Blogger David Aldridge said...

The part where the analogy breaks down is that in thedishwasher the cutlery tray physically moves, whereas with the partition exchange the segments don't. That seems to be a point that many people have trouble grasping.


At 8:16 AM, Blogger David Aldridge said...

And yes, I agree with both of you -- I need to get out.


Post a Comment

<< Home