I was under the impression CF could handle 4-d arrays... but I digress... I would 
probably still go with a structure of structures just the same way you otherwise would 
have an array of arrays (with a 4-d array)... I _suspect_ that'd be faster than a 
single structure, but rather than assuming that's gonna be the case, I would 
definitely recommend testing it out... 

output the current time 

loop over each dimension of the primary key and insert 100 records into each 
dimension, entering a date for each final element. This will give you 100,000,000 
records (hopefully more than the live system will ever deal with). 

output datediff('s',starttime,now())

do it first using a single structure and then again using a structure of structures. 

hth 

Isaac 

------ Original Message ------ 
From: Schreck, Tom <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Aug 28, 2003 10:20 AM
Subject: RE: structures vs arrays

>What I'm faced with is coming up with an application scoped array or
>structure that houses the primary key values of a table and when that
>record was cached.  The powers that be decided this would be a good
>approach.  The table houses the cached html for our content management
>system.  The table's primary key is composed of 4 fields.  When the
>query is called to retrieve the cached html, the 'cached after' query
>attribute would look up the cached date from the application scoped
>array or structure.  I would pass the primary key values to a UDF or CFC
>that would then inspect the application scoped array or structure to
>ascertain the last cached date.  That is the idea anyway.
>
>Am I loosing anyone yet?
>
>I know CF can handle only a 3 dimension array, so I'm not sure how that
>would work with my table containing 4 dimensions.
>
>Do you see a performance penalty with arrays because CF uses 'undefined
>array elements' to fill in blank spots.  For instance if my array is
>myArray[132] = '5/15/2003' (where 132 represents the value of one of my
>primary keys) then the length of my array is 132 even though I'm storing
>1 value, the array is carrying 131 empty spaces.  Does this make sense?
>
>My idea is to concatenate the primary key values into a string and use
>that as the key in a structure.  Does this seem a better solution?
>
>Keep in mind my cached html table has 10s of thousands of cached records
>that would have its primary key stored in this application scoped array
>or structure.  Would a structure containing the concatenated primary key
>as the structure's key be an efficient approach?
>
>
>
>Thanks -
>
>Tom Schreck
>817-252-4900
>[EMAIL PROTECTED]
>
>I have not failed.  I've found 10,000 ways that won't work.
>
>- Thomas Edison
>
>
>-----Original Message-----
>From: Dan Blackman [mailto:[EMAIL PROTECTED] 
>Sent: Thursday, August 28, 2003 9:56 AM
>To: [EMAIL PROTECTED]
>Subject: RE: structures vs arrays
>
>It's also negligible unless you are working with hundereds of thousands
>of rows in MHO.  You are not going to see the difference until you are
>hitting a sizable recordset...
>
>My 2 c
>
>-----Original Message-----
>From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
>Behalf Of S.Isaac Dealey
>Sent: Thursday, August 28, 2003 9:41 AM
>To: [EMAIL PROTECTED]
>Subject: Re: structures vs arrays
>
>
>> Which one is more efficient at retrieving data: structure
>> or an array?
>
>Depends what you're doing with it...
>
>A structure is faster at finding a key than it is to find a given string
>within an array... i.e.
>
>idx = structkeyexists(mystruct,"blah")
>
>vs. something like this:
>
>idx = listfind(arraytolist(myarray),"blah")
>
>or worse
>
>idx = 0;
>for (x = 1; x lte arraylen(myarray); x = x + 1) {
>  if (myarray[x] is "blah") { idx = x; break; }
>}
>
>I believe arrays are slightly faster when looping over them, i.e.
>
><cfloop index="x" from="1"
>to="#arraylen(myarray)#"></cfloop>
>
>vs.
>
><cfloop item="x" collection="#mystruct#"></cfloop>
>
>and I'm pretty sure getting a single value from an array
>
>myarray[3]
>
>is faster than getting a single value from a structure
>
>mystruct["blue"]
>
>I hope that's helpful. :)
>
>s. isaac dealey                972-490-6624
>
>team macromedia volunteer
>http://www.macromedia.com/go/team
>
>chief architect, tapestry cms  http://products.turnkey.to
>
>onTap is open source           http://www.turnkey.to/ontap
>
>
>-----------------------------------------------
>To post, send email to [EMAIL PROTECTED]
>To unsubscribe: 
>   Send UNSUBSCRIBE to [EMAIL PROTECTED]
>To subscribe / unsubscribe: http://www.dfwcfug.org
>
>-----------------------------------------------
>To post, send email to [EMAIL PROTECTED]
>To unsubscribe: 
>   Send UNSUBSCRIBE to [EMAIL PROTECTED]
>To subscribe / unsubscribe: http://www.dfwcfug.org
>
>-----------------------------------------------
>To post, send email to [EMAIL PROTECTED]
>To unsubscribe:
>   Send UNSUBSCRIBE to [EMAIL PROTECTED]
>To subscribe / unsubscribe: http://www.dfwcfug.org
                
                
                

-----------------------------------------------
To post, send email to [EMAIL PROTECTED]
To unsubscribe: 
   Send UNSUBSCRIBE to [EMAIL PROTECTED]
To subscribe / unsubscribe: http://www.dfwcfug.org

Reply via email to