Yeah.

By the way these columns are searched (and named) it indicates that 
they likely (pun intended) contain multiple values:

     RecordID #00022  Keywords='this,that,another...'

     A column with multiple values violates the first normal form: each column
     should be atommic.

   or another common approach:

     RecordID #00022  Keyword1='this' Keyword2='that' Keyword3='another' ...

     Here the record contains repeating columns of "like" data.

as opposed to separate occurrences  of a single column in a child table:

               keyword     ParentID

   record #7   this        00022
   record #99  that        00022
   record #2   another     00022

 From a performance view, it generally means that the db engine needs 
to read each record in the db and scan each of these fields for the 
desired values to, satisfy the query.

Here, each record must be accessed and then scanned to determine 
whether it is accepted or eliminated.

With a normalized situation, the target records can be located by 
manipulating the indexes with no need to scan the fields (unless 
partial keywords are used).

Records which do not contain the desired keyword(s) do *not* need to 
be accessed, to be eliminated.

Most modern db engines are optimized to handle this situation quite 
efficiently.

HTH

Dick

At 9:19 AM -0400 9/30/00, Bud wrote:
>On 9/30/00, Dick Applebaum penned:
>>Hmmm... 10 seconds to query sounds like some db redesign may be in order.
>>
>>This will vary with the db engine, but there are things you can do.
>>
>>I noticed that your db is denormalized (ProductsCategory,
>>ProductsKeyWords, and maybe ProductsStyleNumber).  If you haven't
>>already tried it, you might experiment with normalizng these... & let
>>the db engine do its thing.  (you might be surprised by the results)
>
>Normalized? Can you expand on that?
>--
>
>Bud Schneehagen - Tropical Web Creations
>
------------------------------------------------------------------------------
Archives: http://www.mail-archive.com/[email protected]/
To Unsubscribe visit 
http://www.houseoffusion.com/index.cfm?sidebar=lists&body=lists/cf_talk or send a 
message to [EMAIL PROTECTED] with 'unsubscribe' in the body.

Reply via email to