Jody Garnett ha scritto:
> It supports 3D data (indeed we wrote it for LRS data which included 
> measures as well as xyz). This work lead into some of the first steps 
> towards coordiante sequence.
> 
> You are correct that I have not optimized it at all; indeed I almost 
> stayed functional in my programming style in order ot be sure everything 
> was correct.

Jody, the problem here is that the bottleneck is not in the SDO class,
but in the parsing of the STRUCT, I cannot do anything about it, it's
the JDBC driver that does that part of the work, I cannot optimize it.
JGeometry seems to have a fast path that avoids the STRUCT entirely and
parses the byte[] directly instead, that's why I find it interesting.
WKB parsing is also very interesting, because it's like 10 lines of
code and would give us the same perf as postgis (it can already churn
out optimized coordinate sequences), too bad WKB is not defined for
3D data.

If you allow me to rant a bit, it seems there is this idea that one
can do write code right and then make it fast afterwards. I cannot
emphasize how wrong this idea is, it just works if the architecture
you set up does not get in the way and the problem is just sloppy
coding of some method, lack of caching, or some other trivial
stuff.
I'm not saying you have to optimize from day one, but you have
to keep performance in mind from day one, so that you can optimize
later without having to rewrite the code.

In this particular case, Oracle woke up and provided the means
for a faster geometry reading only recently, so there was
no way to allow for faster reading back then (or else, it
would have been easier if you stayed with JGeometry, but as you
said, Oracle threatened to give up with it, so you had to
work around that risk).
What I'm saying is that today the context is different, and
if we want better performance, we need to try out different
routes.

Cheers
Andrea

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to