Hi Komяpa

2011/7/30 Komяpa <m...@komzpa.net>:
> 2011/7/30 Igor Brejc <igor.br...@gmail.com>:
>> Great work and thanks for the detailed info.
>> One comment/question: from your description (using Mapnik) and from looking
>> at the json_getter.py I conclude you rely Osm2pgsql DB schema.
> yes.
>
>> The main reason is that IMHO flattening of OSM
>> data  produces some loss of information which is vital for creating high
>> quality maps.
>
> That really depends on what you call "quality". But yes, flattening
> database lets you lose some data.
>
>> Example: Osm2pgsql flattens bus route relations into one or more chunks of
>> consecutive ways. But in order to render a bus network (like this one
>> http://www.harvestersway.co.uk/images/location_busmap.jpg), one would need
>> to reconstruct a graph of all the bus routes, which can have several routes
>> (relations) share the same way, and each relation can consist of several
>> ways. So it's a many-to-many relationship, which would be difficult to
>> reconstruct from this flattened schema.
>
> are you aware that slim osm2pgsql database contains a lot more data,
> and also mentions relations?
> http://latlon.org/pt is constructed entirely from osm2pgsql schema.
>
>
>> So my question is: how would you go about implementing MapCSS support for an
>> "original" schema, if at all? This is why I expressed concerns about
>> performance, since I don't see an efficient way of fetching the data using a
>> declarative map styling.
>
> I don't really understand what's the problem there.
>
> Any mapcss selector can be translated into SQL WHERE clause. You can
> easily join them with ") OR (", and get almost all the data you need.
> For some of them there will be more than one where clause (i.e. you
> need to get "ways in relation like that" and "relations like that
> which have ways like that"). It requires thinking (mostly about
> writing queries to use indexes efficiently) but it's doable.
>
> After you get needed data from database, I don't see any problem to
> render it - even flash-based Halcyon is able to do it ;)
>
> --
> Darafei "Komяpa" Praliaskouski
> OSM BY Team
> xmpp:m...@komzpa.net mailto:m...@komzpa.net

To me AKA caching of JS tiles (coming from json_getter.py?) is
mandatory in order to remain scaleable from a server point of view.
AFAIK tirex does not yet support Kothic JS and memcachedb in front of
http server
What do you recommend there?

-- Stefan

_______________________________________________
dev mailing list
dev@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev

Reply via email to