Базы данных Oracle - статьи

         

Быстрый доступ с двухуровневыми запросами


До недавнего времени производительность базы данных в основном определялась размером базы и эффективностью индексов. Но с Oracle Locator в Oracle Database

10g производительность становится функцией от количества фактически выбранных данных. Производительность оптимизируется через использование пространственного индекса и модели двухуровневого запроса. Эта модель значительно снижает непроизводительные издержки при загрузке данных и обработке запросов. Она обеспечивает превосходную масштабируемость по мере роста объема пространственных данных. Первый уровень, или первичный фильтр, позволяет провести быструю селекцию небольшого количества записей-кандидатов и перейти ко второму фильтру.

Первичный фильтр использует аппроксимации, хранимые в пространственном индексе, чтобы сократить сложность вычислений. Вторичный фильтр применяет точную вычислительную геометрию к результирующему набору первичного фильтра. Эти точные вычисления и приводят к заключительному ответу на запрос. Операции вторичного фильтра требуют более интенсивных вычислений, но они применяются к относительно небольшому результирующему набору первичного фильтра. Данные могут быть возвращены приложениям на основе этих аппроксимаций.

Запросы могут быть пространственно ограничены, как определено “областью интересов” ("area of interest"), выбранной пользователем. Исключение данных, не соответствующих этой области интересов, во время обработки запросов обеспечивает оптимальные уровни производительности.

Запросы к позиционным данным, использующие стандартный SQL, могут быть сделаны различными способами.

Например, экстракты в виде двухразмерного окна (two-dimensional window extracts) возможны для задания поиска по диапазону значений (range searches), по критерию близости (proximity searches) и поиска полигонов (polygon searches).



Содержание раздела