[osmosis-dev] --used-node performance and a possible way to improve it
Frederik Ramm
frederik at remote.org
Wed Jun 8 12:47:08 BST 2011
Hi,
Jochen Topf wrote:
> I have thoght about these things quite a lot, too. I agree with Igor that we
> are bumping into the limits of what the current Osmosis pipelining model can
> do.
We seem to be reaching a point where people are creating specialist
programs to do things that are traditionally done with Osmosis - when
until recently it was the other way round, you needed less and less
specialist programs because Osmosis did it all.
For example, there's "osmconvert"
(http://wiki.openstreetmap.org/wiki/Osmconvert), a tool that can
read/write OSM, apply diffs, do bounding box, polygon, and tag
filtering, and people published benchmarks in the forum where that
program was almost 5 times as fast as Osmosis. The program is certainly
not a marvel of software design (6000 lines of rather unreadable C code
in one source file, and it uses NO LIBRARIES except lz, not even an XML
parser or a geo library or Protobuf code - all hand-coded) - but still,
it seems to have a growing user base because it is fast and can be
easily installed/compiled everywhere. (Also, the tag filtering seems to
be a bit easier than the tee/tf/used-way/used-node/merge orgy that you
currently need to perform in Osmosis if you want to extract something
like "all forests".)
It used to be that, compared to other means of achieving the same,
Osmosis was perhaps minimally more clumsy and perhaps minimally slower,
but I always used, and still use, Osmosis for everything because it was
so convenient to have this one multi-tool. (Maybe except when I was
using grep.) - But when others start to do the same in a fifth of the
time then maybe it is really time to think;
> Split Osmosis into two parts, one
> is the low-level code for OSM objects, readers and writers etc. And one is
> the "control plane" code that stitches pipelines together etc.
... maybe the approach you are sketching would also allow one to somehow
hack together "shortcuts" that would allow the building blocks to be
used without anything not necessary for the task at hand.
Bye
Frederik
--
Frederik Ramm ## eMail frederik at remote.org ## N49°00'09" E008°23'33"
More information about the osmosis-dev
mailing list