I'm putting the finishing touches on a similar app that has over 22,000
records and it is plenty fast. There is no noticable pause when it looks up
records. If you can structure everything so it uses binary searches it
would probably be fast enough. The difference between a file with 22,000
records and one with 100,000 is only three memory accesses. You need 10
megabytes just for that file though. Even if you have a device with 16
megabytes some things won't work. You won't be able to beam it because
beaming duplicates a file until it is finished.
You said they initiate searches that "start with" character strings. That
being the case you could order the file by part number and go foreward and
backward in the file to find everything that is inside the filter once a hit
is found. Usually users are content to wait a minute or two to search a
description. If not, you could make an index sorted on the first 10 digits
or so of the description with the back end being a part number. The
application I am working on now has the complete inventory record ordered by
sku and another index that is ordered by UPC code with the sku as the back
end of the index. It does binary searches on both. The find routine
searches for strings within the description. It doesn't have to start on
boundaries of any kind but it will take a minute or so to run. That should
be ok since it won't be used very often.
-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]On Behalf Of John
Crouch
Sent: Friday, February 01, 2002 5:55 PM
To: Palm Developer Forum
Subject: App w/Large Amount of Data
I am looking for opinions and ideas on what tool could be used to develop an
app on the Palm that will allow filtering and viewing data from a pdb with
as many as 100,000 records. Each record would be a maximum of 100
characters in size. We may want to filter on one of two different fields to
narrow down the search for the user then allow them to specifically select
one record to view.
Example: The app has 100,000 records of an inventory database. The user
can select a view for all parts with a part number that begins with an "N".
Or the user can select a view for all parts with a description that begins
with "Bed". Once the filter is put in place they get a grid of the
available matching parts. They tap on one of the items in the grid and view
the detail of that record.
Data is transferred in only one direction: from the PC to the Palm. No
modifications, deletions, additions will be performed on the Palm. The data
may be refreshed periodically (once or twice a day in extreme cases).
We have experimented with Satellite Forms but it is very slow with just
5,000 records, so I can't imagine how slow it would be with 100,000 records.
We would prefer this to be a self-contained app, meaning all data is on the
Palm unit. We have the capability to use Symbol 1740 devices with wireless
networking back to an Access Point (Spectrum 24) but would prefer not to add
that setup complexity to the app. However, if someone has a great idea on
how to create this app using this form of technology I would be more than
willing to hear it.
We have developed a couple apps with Code Warrior. We have considered tools
such as Pocket Technologies, App Forge and Satellite Forms. Each has it's
own strengths and weaknesses. Code Warrior being the bare metal programming
way to go, but it is not very RAD.
Thanks in advance for any suggestions, ideas or opinions.
--
For information on using the Palm Developer Forums, or to unsubscribe,
please see http://www.palmos.com/dev/tech/support/forums/
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/tech/support/forums/