Very slow queries when using oracle spatial [message #75827] |
Mon, 19 April 2004 12:59 |
Nishant Mehta
Messages: 3 Registered: April 2004
|
Junior Member |
|
|
Hi,
I am storing spatial regions inside the data base. The data is very simple in form. That is each region is a small rectangle. The boundaries of rectangle touch each other but they do not overlap.
I use the SDO_FILTER query to find regions inside the data base that intersect a particular line. I have around 25000 objects in the database.
The problem is that when the result of the query is large (70% of the tuples) that means there are many regions in the cache that intersect the line, the amount of time it takes is a lot more than if I do the same without using the R Tree.
I can do it without using the R Tree because all my objects are rectangles. I store the the left bottom and the top right corner of the rectangle in the data base. And then use a simple range query.
Is this behaviour expected? should I use an R Tree index structure, or something else. I know that when the result is very large the R Tree search will have to search many sub trees to retrieve the data points. But should the performance be worse than a sequential scan?
Or will indexes only work for cases where the selectivity of the query is high?
Please reply I need help,
Nishant
|
|
|