Processing Large Amounts Of Data
Richard Gaskin
ambassador at fourthworld.com
Wed Jul 29 16:19:51 EDT 2009
Warren Kuhl wrote:
> I have a variable that has approx 100,000 records (loaded from a text file).
> I need to read through each record and extract items from each record.
>
> I am currently using:
> Repeat with x = 1 to tRecordCount
> Put item 2 of line x of tData into tItem2
> Put item 6 of line x of tData into tItem6
> ...process data
> End Repeat
>
> I find this very slow to process. Is there a fast way to process through the
> data?
The "repeat with..." construct will be slow when using the iteration
variable to access the data, because each time through the loop it needs
to count from 1 to x to find the line in question.
You should see at least an order of magnitude performance gain using
"repeat for each...", e.g.:
repeat for each line tLine in tData
put item 2 of tLine into tItem2
put item 6 of tLine into tItem6
...process data
end Repeat
With "repeat for each", the engine parses the data as it goes, putting
each line as it finds it into tLine, and keep track of where it is so
the next time through the loop it just picks up where it left off.
Much, much faster.
--
Richard Gaskin
Fourth World
Revolution training and consulting: http://www.fourthworld.com
Webzine for Rev developers: http://www.revjournal.com
More information about the use-livecode
mailing list