Об'єктно-орієнтована модель даних 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Об'єктно-орієнтована модель даних



Об'єктно-орієнтована модель є подальшим розвитком технології баз даних ГІС. У цьому випадку вся сукупність даних, що буде зберігатися й оброблятися в базі даних, подана не у вигляді набору окремих картографічних шарів і таблиць, а у вигляді об'єктів певного класу. Об'єктно-орієнтована модель поряд з геометричною й атрибутивною інформацією зберігає програмний код, що визначає поведінку об'єктів того чи іншого класу при введенні і редагуванні, аналізі або поданні даних. Класи об'єктів являють собою ієрархічну структуру — під ними розуміють загальний батьківський клас (наприклад, робочий простір), на підставі властивостей якого визначаються й описуються похідні класи (векторні, растрові, TIN-просторові дані). У свою чергу, на базі похідних класів другого рівня описуються класи третього, четвертого та інших нижче розміщених рівнів (наприклад, лінії, точки і полігони векторного подання просторових даних). Похідні об'єкти успадковують усі властивості батьківського об'єкта, у програмний код додаються тільки деякі специфічні функції. Об'єкти можуть бути як стандартними для середовища якогось програмного ГІС-пакета (визначені правила обробки даних конкретними програмними модулями і функціями). Властивості і правила поведінки об'єкта можуть бути визначені також користувачем. При використанні стандартних класів об'єктів користувач одержує заздалегідь визначену структуру даних: ідентифікатори, типи і розміри полів табличної бази даних, набір методів обробки (наприклад, до складу стандартних об'єктів ГІС-пакета Arc View 8.3 додані об'єкти для створення муніципальних баз даних, транспортних баз даних, землевпорядкування та ін.).
Об'єкт бази даних являє собою цілісну сутність, наприклад, ріка, озеро, будинок, установа. Крім знака на карті і запису в табличній базі даних, об'єкт має визначену поведінку. Спеціальний інтерфейс буде контролювати весь процес роботи з об'єктом визначеного класу: перевіряти правильність цифрування об'єкта (наприклад, не дозволить використовувати лінію для цифрування контуру будинку); перевіряти правильність заповнення табличної бази даних (типи і формат даних, заповнення обов'язкових полів); перевіряти топологію різних картографічних шарів (наприклад, заборона на взаємоперетинання певних типів об'єктів); перевіряти взаємоположення об'єктів на одному картографічному шарі (наприклад, місця стикування труб різного діаметра (необхідний перехідник), з'єднання доріг різного класу (необхідний обладнаний з'їзд та ін). Об'єкти мають визначений інтелект при організації запитів, аналізі, представленні даних, що значною мірою дозволяє автоматизувати обробку даних, створювати різні сценарії обробки даних, у яких більшість конфліктних ситуацій буде відслідковуватися і виправлятися без участі оператора.
На основі об'єктно-орієнтованої моделі, зокрема, побудована База геоданих сімейства ГІС-пакетів ArcGIS. Вона має єдину внутрішню структуру, що дозволяє в рамках єдиного проекту використовувати і взаємно перетворювати різні типи просторових даних, погоджувати й усувати конфлікти при редагуванні наборів даних різних картографічних шарів, організовувати доступ до різних об'єктів бази геоданих.

Функціонування баз даних

На початку 70-х років XX ст. сформувалися дві концепції, спрямовані на вирішення труднощів, що виникають при створенні і функціонуванні баз даних: концепції адміністрації баз даних (АБД) і системи керування базою даних (СКБД).

Під адміністрацією бази даних розуміється колектив, що відповідає за правильну роботу БД і виконує такі функції:
1. Проектування структури бази даних. Ця робота виконується адміністрацією бази даних у тісному контакті з користувачами. Однак адміністрація приймає остаточне рішення, усі модифікації структури даних виконуються через адміністрацію.
2. Вибір способу подання даних на зовнішній пам'яті. Адміністрація повинна забезпечити ефективність доступу до даних і раціональне використання магнітних носіїв. Якщо прийняте рішення про зміну способу подання, то адміністрація проводить усі пов'язані з цим роботи.
3. Виконання обслуговуючих функцій. Адміністрація виконує обслуговуючі функції, спрямовані на забезпечення цілісності бази даних і інформування користувачів про стан бази даних. При втраті цілісності до функцій адміністрації входить відновлення бази.
4. Планування розвитку бази даних і пов'язаний з цим вибір нових засобів обчислювальної техніки.
5. Консультації користувачів щодо використання бази даних.
6. Контроль користувачів, які працюють з базою даних, урегулювання різних конфліктних ситуацій (наприклад, спроби видалення чи модифікації записів, які використовуються іншими користувачами).

Як головний інструмент керування адміністрація бази даних використовує систему керування базою даних (СКБД).

Система керування базою даних є спеціальним програмним забезпеченням, призначеним для створення, ведення і конкурентного використання баз даних. Застосування СКБД дозволяє значно зменшити витрати праці з реалізації вимог до бази даних і забезпечити більш повне їхнє виконання. Власне СКБД — системне програмне забезпечення. Не розв'язуючи безпосередньо ніякого прикладного завдання, СКБД є інструментом для розроблення прикладних програм і підтримки бази даних. Функції і структуру типової СКБД доцільно розглядати разом, тому що кожній з основних функцій відповідає програмний компонент СКБД.

Більшість СКБД має такі функціональні можливості:
1. Опис структури даних. У процесі роботи прикладних програм і користувачів база даних змінюється. Однак ці зміни не можуть бути довільними. Звичайно існують досить тверді обмеження на можливості маніпулювання даними, що відбивають закономірності предметної галузі. Так, у базі даних користувач може створити новий екземпляр об'єкта (наприклад, власника) чи виключити вже існуючий екземпляр, але змінити характеристики цього об'єкта (наприклад, додати права володіння яким-небудь будинком) він, як правило, не може. Обмеження на припустимі операції з даними дозволяють заздалегідь виконати опис незмінних властивостей бази даних. Такий опис одержав назву «опис структури даних або схеми бази даних».
2. Маніпулювання даними. Сучасні СКБД дають користувачам засоби маніпулювання даними, до складу яких входять оператори пошуку даних, коригування даних, обміну даними між базою даних і прикладною програмою та ін.

Завантаження бази і формування звітів. Універсальною мовою програмування можна написати будь-яку програму обробки даних, у тому числі програму заповнення (завантаження) і коригування бази даних чи програму роздрукування вихідних форм. Однак зазначені дії виконуються настільки часто, що для їхньої реалізації більшість СКБД має спеціальні програмні засоби, наприклад: для введення і коригування даних — підсистема завантаження даних; для одержання вихідних форм — генератор звітів. Ці засоби у своєму складі мають мови високого рівня, орієнтовані на опис введення-виведення даних.

Мова запитів. Часто виникає необхідність виконати запит з бази даних за певними ознаками об'єкта. Для реалізації такої можливості СКБД оснащуються мовою запитів високого рівня, а також інтерпретатором з мови запитів. За допомогою цієї мови користувачі-непрограмісти можуть сформулювати запит до бази даних і відразу на дисплеї одержати відповідь. Розроблена в 1970 р. компанією IBM мова SQL (Structured Query Language — структурована мова запитів) у наш час стала стандартною мовою, використовуваною для обробки запитів у більшості програмних пакетів СКБД. На сьогодні більше ста програмних продуктів мають спеціальний SQL-інтерфейс, що дозволяє обмінюватися даними між віддаленими базами, що мають різні концептуальні схеми і програмні платформи. Сучасні версії мови SQL надають користувачу широкий набір операторів і готових функцій, які дозволяють робити різні маніпуляції з локальними і віддаленими базами даних, здійснювати пошук, сортування і подання необхідної інформації.

Діалогові засоби. З метою зручності користувачів і підвищення оперативності доступу до даних більшість функцій СКБД може здійснюватися в діалоговому режимі через дисплей. Сучасні СКБД, як правило, забезпечують доступ багатьох користувачів до бази даних (тобто одночасний доступ до бази декількох термінальних користувачів чи прикладних програм), а так само засоби поділу і захисту даних різних користувачів. За допомогою дисплея зручно виконувати перегляд бази даних, її коригування, виконання різних сервісних функцій, введення запитів та ін.
Серед комерційних програмних продуктів для створення баз даних найбільшого поширення набули СКБД Microsoft Access, Microsoft SQL Server, Oracle, INGRES, Informix, DB2, Sybase, Paradox та ін. Ці програмні продукти надають користувачу широкий набір засобів для проектування і підтримки баз даних різного масштабу і призначення.

Керування даними в ГІС

При інтеграції просторових і атрибутивних даних у єдину систему розробники конкретного ГІС-пакета звичайно використовують два варіанти: розробляють власну СКБД або створюють засоби для роботи з конкретною комерційною СКБД. Деякі пакети ГІС забезпечують інтерфейс між графічним редактором і СКБД (наприклад, ГІС-пакет MGE фірми Intergraph забезпечує спільну роботу пакета автоматизованого проектування Microstation і досить поширеної СКБД Oracle).
Зв'язок між просторовими об'єктами картографічної бази даних і відповідними записами в реляційних атрибутивних базах даних здійснюється за допомогою спеціальних службових ідентифікаторів — у табличній базі даних створюється спеціальне поле для збереження цього ідентифікатора. При організації картографічної бази даних можуть створюватися відношення «один просторовий об'єкт до одного запису в таблиці» або «безліч просторових об'єктів до одного запису в таблиці».
СКБД, призначені для створення і підтримки баз даних ГІС, надають користувачу широкий набір функцій, властивих звичайним, «непросторовим» СКБД, а також низку спеціальних «просторових» функцій. Це — функції створення структури нових баз даних у режимі «конструктора», зміна структури існуючих табличних баз даних, додавання і видалення полів і записів, використання формул для заповнення і зміни значень полів, зв'язування двох і більше таблиць для подання даних. До деяких спеціальних функцій відносять функції побудови просторових об'єктів за значеннями координат з таблиць, визначення координат об'єктів, довжин, периметрів і площ об'єктів із записом отриманих значень у відповідне поле.
СКБД, що входять до складу ГІС-пакетів, у більшості випадків можуть підтримувати великі бази даних, що нараховують кілька сотень полів і до декількох мільярдів записів (залежно від використовуваної довжини ідентифікатора запису). При конструюванні реляційної бази даних використовуються різні типи полів; тип поля визначає, яка інформація може вводитися в дане поле і яким методом буде оброблятися.

До стандартних типів полів відносять:
- символьне (character) — у полі цього типу може зберігатися до 256 символів алфавіту, включаючи латиницю й інші національні кодування, цифри, знаки пунктуації і пробіли. Усі символи розглядаються й обробляються як текстові рядки (для чисел, записаних у цьому полі, математичні операції не доступні), для економії пам'яті максимальну довжину рядка можна обмежити для всього поля;
- цілочислове (integer) — у поле вводяться тільки числові значення без дробової частини зі значеннями приблизно від -2 мільярдів до +2 мільярдів. Над числовими полями можна виконувати всі доступні математичні операції і функції;
- цілочислове коротке (small integer) — у поле вводяться тільки числові значення без дробової частини зі значеннями приблизно від -32768 до +32767;
- речовинні (дійсні, real) — у поле цього типу вводяться числові значення з дробовою частиною;
- десяткові (decimal) — у поле вводяться числа з фіксованою кількістю припустимих позицій для введення чи відображення цілої і дробової частин (до 19 знаків);
- календарну дату (data) — у поле вводяться календарні дати у визначеному форматі (звичайно MM/DD/YYYY). Над датами можна проводити певні операції, наприклад, обчислювати день тижня, кількість днів між зазначеними датами, розраховувати дату на визначену кількість днів вперед чи назад щодо зазначеної дати;
- логічне значення (logical) — у це поле вводиться числове чи символьне значення, яке показує істинний чи помилковий стан атрибута описуваного об'єкта (наприклад, чи це житловий будинок, чи є в колодязі вода, чи перевищує рівень забруднення визначену величину та ін). Для відображення логічних значень у різних СКБД можуть використовуватися такі пари значень — 1 і 0, Y і N, Т (true — істина) і F (false — неправда). Звичайно значення логічних полів обчислюються з використанням спеціальних функцій.

При конструюванні бази даних ГІС при перетворенні структури полів таблиці в процесі подальшої роботи необхідно враховувати і методи перетворення даних між різними типами і форматами полів. Так, при перетворенні або копіюванні числових даних з речовинного типу в цілочисловий буде загублена дробова частина, при перетворенні довгих цілочислових даних у короткі цілочислові значення, що перевищують максимально припустимі, будуть «зрізані» до відповідного значення. Допускається перетворення числових значень у символьний тип, але при перетворенні символьного поля в числове вся текстова інформація втрачається.
У багатьох випадках при створенні прикладної ГІС у деякій предметній області виникає необхідність використання чи перенесення даних із зовнішньої, «непросторової» бази даних. Для зв'язку з іншими СКБД до складу програмних пакетів ГІС вводять спеціальні функції, що дозволяють користувачу прямо, без операцій з перетворення даних читати і використовувати дані, створені у форматі інших програмних продуктів. Такі функції створюються і вводяться до складу програмного забезпечення ГІС на основі двосторонніх ліцензійних угод між розробниками. До складу того чи іншого пакета ГІС може входити різний набір програмних модулів, що забезпечують зв'язок із зовнішніми базами, набір таких модулів утворить спеціальну сервісну службу СКБД. За наявності відповідного модуля користувач може на тому самому комп'ютері по локальній мережі чи через мережу Internet переглядати зовнішні бази даних, створювати запити Додержувати необхідну інформацію. Наприклад, до складу сімейства пакетів Arc GIS входить спеціальний пакет ArcSDE, що забезпечує зв'язок інших модулів пакета з зовнішніми базами даних. На рис. 3.5 наведені основні схеми організації роботи з базами даних при різній архітектурі ГІС.

Рис. 3.5. Схеми організації роботи з базами даних при різних варіантах архітектури ГІС: а) локальна база даних; б) віддалена база даних (доступно при скачуванні повної версії підручника)

Питання і завдання для самоперевірки

1. Які методи формалізації атрибутивних даних можуть бути використані для створення баз даних ГІС?
2. Які переваги має реляційна модель баз даних порівняно з ієрархічною і мережною моделями?
3. У чому полягають переваги об'єктно-орієнтованої моделі даних у ГІС?
4. Які типи даних можуть зберігатися в базах даних ГІС?
5. Які основні функції виконує СКБД?
6. Як здійснюється взаємодія ГІС з віддаленими базами даних?



Поделиться:


Последнее изменение этой страницы: 2016-07-11; просмотров: 615; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.144.12.205 (0.012 с.)