(Please CC me, if you reply as I am out of pocket now and not able to be on 
mailing lists at this time...);

I'm not sure which list I was reading, but I've been looking for info about 
R-Trees, and stumbled across my favourite DB backend's mailing lists...

I've used RTREE based db engines before (Informix) but was unaware of PostGres 
and MySQL implementing RTREE capability until tonight.

While I understand the basic concept of an RTREE. I would like to be pointed 
someplace to get more info on the algorithms of RTREES and how they work, as 
I'd like to implement  something that uses RTREE algorithms, and be able to 
represent a whole record w/ items with values,subvalues,subsubvalues, 
etc...in an object type format. 

(Something that can get a whole record for a customer and break it out into 
all the pieces automagically.. as an example.)


I'm used to doing code like this for parsing data for a customer from an 
RTREE:
(Mixed Pseudocode and perl):
$customer=GETDATA;
$MultivalueMarker="~";
$SubvalueMarker=0007;
$valuemarker=0008;

foreach $customer (@recordlist) {
     @carray=split ($ValueMarker,$customer,10);
        @phonearray=split($SubValueMarker,@carray[7]);
          foreach $phoneitem (@phonearray) {
                my ($phone,$number)= split($MultiValueMarker,$phoneitem);
                $phonehash{$phone}=$number;
           }
          @domainarray=split ($SubValueMarker,@carray[8]);
           @emailarray=split ($MultiValueMarker,@domainarray[2]);

}

And at some point the data is packed and unpacked....
I'd like to hide all that using objects and make it so one could say read in a 
template, and then make access to the data based on names defined in the 
template.

As for an SQL database using Rtrees:
This doesn't seem like good practice for use if one is using SQL to do queries 
with as it isn't structured around this kind of datatype, is there black 
magic going on here that autoguesses joins, etc based on relationship of data 
in the tree?

(When PG first announced Multidimensional support for the db, I didn't believe 
it to be an rtree because of the slowness at which queries occurred, when 
using multivalued data, even in a small database.)  I would hope that pgsql 
would have other ways of handling queries on an rtree. And it may well do 
that now.)




---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

Reply via email to