Трембач А.В. Oracle оптимальное решение хранения пространственных данных
Трембач А.В.
ЗАО «РДТЕХ»
Существует множество подходов к хранению пространственных данных. Изначально ГИС и CAD-системы использовали файловый способ хранения и собственные форматы. Развитие систем привело к необходимости хранить большие объемы данных и обеспечивать совместную работу пользователей с ними. Кроме того, для решения геоинформационных задач зачастую применяются системы разных производителей, использующие различные форматы хранения. Несмотря на то, что наиболее популярные продукты работают с большим числом форматов, это не сильно облегчает интеграцию. Требуется общий формат хранения пространственных данных.
Ведущие производители программного обеспечения, работающего с пространственными данными: Autodesk Corp., Intergraph Corp., Laser-Scan и MapInfo Corp. (все США), совместно с корпорацией Oracle бесспорным лидером в области хранения данных объединили усилия в разработке стандарта хранения пространственных данных. Результатом работы стало создание интегрированного в СУБД Oracle модуля хранения пространственных данных, получившего название Oracle Spatial, и использование его как основного хранилища данных перечисленными выше производителями. В настоящее время другие производители программных продуктов также переходят на поддержку хранения данных в СУБД Oracle.
Преимущества использования Oracle для хранения пространственных данных:
хранение пространственных данных в открытом, стандартизованном формате;
хранение пространственных и семантических данных в единой СУБД;
стандартизованный, унифицированный доступ как к пространственным, так и к семантическим данным через SQL;
обеспечение совместной работы с данными и разделение доступа на уровне СУБД Oracle;
поддержка со стороны крупнейших производителей ГИС и CAD-систем;
надежность, производительность и масштабируемость СУБД Oracle;
техническая поддержка и постоянное совершенствование программного обеспечения Oracle.
Опция СУБД Oracle «Oracle Spatial» осуществляет хранение пространственных данных в открытом, стандартизованном формате и полностью соответствует требованиям стандарта Консорциума Open GIS. Это позволяет обеспечивать работу с пространственными данными из различных приложений и строить ГИС вокруг единого хранилища данных. Многочисленные подразделения организаций, даже используя продукты разных производителей, получают возможность работать с едиными данными в едином хранилище.
Идея использовать общее хранилище не нова. До Oracle Spatial существовала возможность хранить пространственные данные в реляционных СУБД, например, Oracle, Microsoft SQL Server или Microsoft Access. В этом случае интерпретация данных осуществляется приложением. Оно должно знать, с каким геометрическим объектом работает, какова привязка объекта к координатам, каковы связи между объектами и много другое. Такой подход не позволял работать с пространственными данными другим приложениям, не знающим логики их интерпретации.
С появлением Oracle Spatial ситуация кардинально изменилась. Spatial обеспечивает хранение в БД пространственных объектов, а не наборов данных. Обращаясь к Spatial, приложение работает не с данными, которые приходится интерпретировать в геометрическую фигуру, а непосредственно с геометрической фигурой. Кроме того, Oracle Spatial обеспечивает целостность данных, преобразование системы координат и другую базовую логику. Это существенно упрощает работу с пространственными данными, интеграцию различных приложений и разработку программных продуктов.
Oracle обеспечивает хранение пространственных и семантических данных об объекте в единой СУБД. Наряду с пространственными данными всегда имеется необходимость хранить семантические данные об объекте и оперировать ими. Например, полигон на карте это контур дома, с которым связана информация об адресе, помещениях, жильцах, и т. д. Хранение пространственных и семантических данных в единой БД Oracle позволяет выполнять поиск и анализ одновременно по обеим характеристикам.
Для обработки как пространственных, так и семантических данных используется единый метод доступа язык запросов SQL. Общие внутренние механизмы БД, оптимизирующие доступ к данным, существенно повышают производительность приложения.
В случае хранения данных в Oracle не требуется дополнительных усилий для работы с данными в многопользовательском режиме и реализации таких важных свойств, как разделение доступа и целостность данных.
Надежность, производительность и масштабируемость СУБД Oracle распространяются и на Oracle Spatial. Для данных, хранящихся в Oracle Spatial, доступны те же механизмы обеспечения надежности, что и для обычных данных в Oracle. Oracle Spatial поддерживает пространственные R-Tree индексы и секционирование пространственных данных, что существенно повышает скорость выполнения пространственных запросов.
Oracle осуществляет техническую поддержку и постоянно развивает программное обеспечение. В последней версии Oracle 10g добавлены механизмы GeoRaster (управление растровыми данными) и Geocoding (унифицированная адресация), усовершенствованы механизмы аналитической обработки данных.
Использование Oracle и Oracle Spatial как центрального хранилища пространственной информации существенно снижает затраты за счет интеграции приложений и обслуживания БД. Уменьшаются время и стоимость разработки программного обеспечения, поскольку отпадает необходимость в услугах специалистов по форматам используемых систем, применяется стандартный язык запросов для доступа к данным в Oracle, и используются внутренние возможности обработки данных в Oracle Spatial.
Компания РДТЕХ занимается созданием больших информационных систем на базе технологий Oracle. В области Oracle Spatial РДТЕХ, являясь официальным дистрибьютором Oracle с 1992 г., предоставляет услуги обучения, консультаций, технической поддержки и поставок лицензий. По мнению специалистов РДТЕХ, решения с применением технологий Oracle Spatial, особенно после выхода версии Oracle 10g release 2, являются наиболее эффективными и перспективными в настоящий момент. В следующих статьях мы расскажем о более подробно об Oracle Spatial и примерах его применения.