Проблема с быстродействием Spatial

Visermoz
Дата: 04.12.2012 09:20:00
Доброго времени суток.
Приложение работает с oracle spatial

select * from sys.v_$version;


Oracle Database 10g Release 10.2.0.1.0 - Production
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production


При перемещении по карте возникает пауза около 10 секунд.
Результат трассировки

********************************************************************************

SELECT "GEOLOC",
"KEY",
"MI_PRINX",
"MI_STYLE"
FROM TEST.V_GEO_LOT_LOTS
WHERE MDSYS.SDO_FILTER ("GEOLOC",
MDSYS.SDO_GEOMETRY (
2003,
262148,
NULL,
MDSYS.SDO_ELEM_INFO_ARRAY (1, 1003, 3),
MDSYS.SDO_ORDINATE_ARRAY (451557.81500000,
209187.14050000,
453420.85625000,
209817.03375000)),
'QUERYTYPE=WINDOW') = 'TRUE'
AND (is_settings IS NULL AND catalog_key = 40392)

call count cpu elapsed disk query current rows
------- ------ -------- ---------- ---------- ---------- ---------- ----------
Parse 1 0.01 0.00 0 435 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 4 9.54 9.54 0 61943 0 98
------- ------ -------- ---------- ---------- ---------- ---------- ----------
total 6 9.56 9.55 0 62378 0 98

Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 764

Elapsed times include waiting on following events:
Event waited on Times Max. Wait Total Waited
---------------------------------------- Waited ---------- ------------
SQL*Net message to client 4 0.00 0.00
SQL*Net more data to client 19 0.00 0.00
SQL*Net message from client 3 0.00 0.01
********************************************************************************



Сам запрос
SELECT "GEOLOC",
       "KEY",
       "MI_PRINX",
       "MI_STYLE"
  FROM TEST.V_GEO_LOT_LOTS
 WHERE MDSYS.SDO_FILTER ("GEOLOC",
                         MDSYS.SDO_GEOMETRY (
                            2003,
                            262148,
                            NULL,
                            MDSYS.SDO_ELEM_INFO_ARRAY (1, 1003, 3),
                            MDSYS.SDO_ORDINATE_ARRAY (451557.81500000,
                                                      209187.14050000,
                                                      453420.85625000,
                                                      209817.03375000)),
                         'QUERYTYPE=WINDOW') = 'TRUE'
       AND (is_settings IS NULL AND catalog_key = 40392)

выполняется меньше секунды, но в результатах трассировки стоит 10 секунд.

В плане подхватывается пространственный индекс(в приложенном файле).
В Oracle 11g данная проблема не проявляется.

Если кто-нибудь сталкивался с подобным - подскажи пожалуйста в какую сторону рыть и что можно еще предпринять для ускорения.
Заранее благодарю за ответы
Alexander Ryndin
Дата: 04.12.2012 09:23:27
Сначала стоит пропатчиться до 10.2.0.5 - потом только дальше двигаться.
Visermoz
Дата: 04.12.2012 09:43:23
Alexander Ryndin , благодарю за совет. с этого и начну
Visermoz
Дата: 04.12.2012 13:27:12
Проблема решилась установкой патча 10.2.0.5. Теперь графика летает