Squishing data
xbury.cs at clearstream.com
xbury.cs at clearstream.com
Thu Aug 28 04:33:00 EDT 2003
Shari,
The biggest stack I ever made was around 70MBs with 7 levels of data all
interelated.
The key to speed (and this was HC!) was to link the data to the right cd
id and then grab
the data from there. Access times were less than 3 seconds - it took 3
days to build or
update the links though!
Size was not important as it was for a CD but despite cd speeds (way back
then it was 4X),
was really snappy!
The scheme was a display stack with browsing controls and 7 hidden stacks.
The 1st level
stack contained the index to the cd IDs holding the data and their
respective parent and child
links (also stored as IDs). IOW, a classic double-linked list.
It didn't require much ram and it was the fastest I could find in the
year's time it took to develop.
I had planned using an XCMD in the beginning but none could handle the
amount of data!
Even FileMaker had troubles! There were some 800,000 record links for
80000 items!
Hope that helps a bit! ;))
Xavier
---------------------=---------------------
Xavier Bury
TNS NT LAN Server
ext 6465
Brian Yennie <briany at qldlearning.com>
Sent by: metacard-admin at lists.runrev.com
28/08/03 02:20
Please respond to metacard
To: metacard at lists.runrev.com
cc: ^
Subject: Re: Squishing data
I'm not sure what you mean by "putting data in an array" changing the
stack size: arrays are held in memory. Do you mean that you write the
arrays to custom properties?
You may want to try using compress() on the field data, i.e.
set the compressed_data of fld 1 to compress(fld 1)
Then just access the fields with:
put decompress(the compressed_data of fld 1) into fieldData
For performance, you would want to only decompress() once- although
keeping the uncompressed data in memory bumps your memory requirements
so you'll have to balance memory vs. performance.
Compress() should get you a reasonable shrink on text, hopefully 50% or
so.
Brian
> The stack with 300 fields is about 15 MB. I tried putting the data
> into an array, and deleting the fields. But it actually makes the
> stack bigger to do this. I created an array with 300 elements,
> myArray[1] held the data from field 1, and so forth.
_______________________________________________
metacard mailing list
metacard at lists.runrev.com
http://lists.runrev.com/mailman/listinfo/metacard
Visit us at http://www.clearstream.com
IMPORTANT MESSAGE
Internet communications are not secure and therefore Clearstream International does not accept legal responsibility for the contents of this message.
The information contained in this e-mail is confidential and may be legally privileged. It is intended solely for the addressee. If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted to be taken in reliance on it, is prohibited and may be unlawful. Any views expressed in this e-mail are those of the individual sender, except where the sender specifically states them to be the views of Clearstream International or of any of its affiliates or subsidiaries.
END OF DISCLAIMER
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.runrev.com/pipermail/metacard/attachments/20030828/f904a68f/attachment.htm
More information about the metacard
mailing list