On Mon, January 28, 2008 12:37 pm, Per Jessen wrote:
> Richard Lynch wrote:
>
>> On Sat, January 26, 2008 3:45 am, Per Jessen wrote:
>>> Nathan Rixham wrote:
>>>
>>>>Back on the mysql side of things, try using geometry columns rather
>>>>than numerical primary keys, with spatial indexes.. it's a MASSIVE
>>>>performance upgrade (I've cut 5 second queries down to 0.005 by
>>>> using
>>>>geo columns)
>>>
>>> Uh, could you could elaborate a bit on that (whilst I go and do
>>> some
>>> googling)?
>>
>> If you are doing geography/geometry stuff, spatial indices can be
>> nice.
>>
>
> OK, what is a 'geometry column' and what is a 'spatial index' ?

Imagine a single column combining both longitude and latitude.

Now imagine an index that "knows" about long/lat, and keeps
geographically "close" objects sorted in the index for you.

Including "knowing" about the 180 <-> -180 degree wrap-around.
(Or 360 === 0 wrap-around in the other geo-system.)

So when you ask for "theme parks near Zurich" your DB can answer in
milliseconds instead of minutes.

It's a bit more complex than that, as a "geometry" can be much more
than just long/lat, and space could be 3-D or even N-space, but that's
the simple version to light up the bulb.

-- 
Some people have a "gift" link here.
Know what I want?
I want you to buy a CD from some indie artist.
http://cdbaby.com/from/lynch
Yeah, I get a buck. So?

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to