home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!munnari.oz.au!bunyip.cc.uq.oz.au!topaz.ucq.edu.au!leovacd
- From: leovacd@topaz.ucq.edu.au
- Newsgroups: bit.listserv.dbase-l
- Subject: Re: spatial data in Clipper
- Message-ID: <1993Jan11.141319.13184@topaz.ucq.edu.au>
- Date: 11 Jan 93 14:13:18 AET
- Organization: University of Central Queensland, Australia
- Lines: 62
-
- >Date: Wed, 6 Jan 1993 09:06:00 LCL
- >From: PaussaVC@SSD0.LAAFB.AF.MIL
- >Subject: spatial data in Clipper
- >>> My problem is how to improve the performance of point data
- retrieval
- >>> Expected ratio points/total points is i.e. 5/100000.
- >>> in a test dbf of 10E5 records.
- >>> D.Leovac@ucq.edu.au
-
- >>Gino, For a database of 100,000 records, you should be using Oracle
- >>instead of dBase files. Purchase Oracle, SQL*Net and ClipDbBridge
- >>301-330-9621 (There is another Clip-Ora package out of England - Call
- >>Nantucket)
- >>On a network, you can use Oracle/os2 or Oracle/Unix depending on how
- >>much power you need. On a network, you can then split the workload
- >>between the client doing user interface and calculations and the
- >>server doing record retrieval.
- >>-Chuck
-
- >You should actually be using FoxPro. Oracle requires too high an
- >overhead in hardware, time and $. FoxPro runs on '286s and up and
- >incorporates a strong subset of SQL with the XBase language that you
- >are already familiar with. No, it doesn't yet support client/server,
- >but neither does
- >Clipper (I think).
-
- Dear colleagues,
-
- Thank you very much for your response. The information which I received
- are very useful, but my main problem was not the tool itself - it's the
- efficient way of retrieving the spatial data. So it's better to explain
- it a little bit more.
-
- 10E5 records contain 2D coordinates of point data <p_id; x; y>. The aim
- is to retrieve small subset of data contained in a desired recatngular
- area.
- Example:
- - coordinates are defined as relative numbers in area 1 x 1, so typical
- record is like this: < Point 1, 0.43211843, 0.73919484 >,
- - there is an area ( described by 2 sets of point coordinates [( x1,y1)
- and ( x2,y2)] ) which contains some of the points in a database. The
- area is very small comparing to the total area.
-
- How to get points from that area when using XBase?
-
- I have used index file < key: str(x)+str(y)> and softseek, but the
- results are pore - to much time is needed. For desired area of 1/25000
- and 5 points in it, it took approx. 30 sec on 486 machine.
-
- Slightly better results are achieved when the point data are clustered
- into the 'cells'. Computing time is reduced due to testing whole
- cluster of data represented by cell coordintes rather than inspecting
- every particular point coordinate.
-
- i.e. index key is [ substr(x,3,3) + substr(y,3,3) + str(x) + str(y)]
- so the key value for this point < Point 1, 0.43211843, 0.73919484 > is
- { 432 739 0.43211843 0.73919484} what means that this point belongs to
- the cell (432,739).
-
- Anybody has a similar problem?
-
- Gino
-