Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
морозов_лекц .doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
565.25 Кб
Скачать

7.2. Основні принципи часових баз даних

Зіставимо тепер таке тривимірне відношення (див. мал. 7.1) з додатковими таблицями, які необхідні в традиційній реляційній базі даних для представлення часу, як було показано в попередньому розділі. У часовій базі даних для моделювання часу не вимагається жодних додаткових стосунків. Часове вимірювання вбудовується в саме задане відношення.

Проте уявлення про часові бази даних тільки як про ті, що складаються з часових відносин є вельми спрощеним. Насправді в часових базах даних застосовуються і багато інших принципів, у тому числі використовується множини визначень часу.

Було запропоновано два терміни для визначення часу ефективний час (час вступу чого-небудь в силу) і час реєстрації.

Ефективний час визначався як час, коли деякий факт насправді набуває чинності (тепер його називають „дійсним часом”).

час реєстрації (зване тепер „часом трансакції”) - цей час, коли нове значення поміщається в базу даних.

Бази даних з дійсним часом, що підтримують деяку систему в реальному світі, містять історію цієї системи в такому ступені, в якій вона відома. В той же час бази даних з часом трансакції мають у своєму розпорядженні прекрасні можливості для відкату до попередніх станів баз даних з малими зусиллями саме завдяки підтримці в них часу трансакції.

Мал. 7.1. Тривимірне відношення з часом

7.3. Моделі даних з часом

Один з дослідницьких підходів до тимчасових баз даних був пов’язаний з так званими періодами життя (lifespan), асоційованими з об’єктами баз даних різної гранулярності - від повної бази даних до окремих рядків або кортежів. Періоди життя є відрізками часу, коли мають силу конкретні стани деякого об’єкту. Тому вони можуть служити також параметрами для вибірки інформації.

Концепцію періодів життя можна було б також асоціювати з рівнем атрибутів (стовпець в рядку), як показано на мал. 7.1. І тут знов можна провести аналогію між періодами життя на рівні кортежів і на рівні атрибутів з варіантами блокування на рівні рядків і рівні елементів для управління паралельним доступом.

В рамках часової моделі даних такого роду, як HRDM, операції тимчасового зрізу можуть застосовуватися до деякого відношення як обмежуючий критерій пошуку, що задається у фразі WHEN (коли), значною мірою таким же чином (мал. 7.1), яким при операції SELECT використовуються подібні обмеження у фразі WHERE (де).

Іншим архітектурним підходом до тимчасових баз даних, також заснованим на розширенні реляційної моделі, є тимчасова реляційна модель (Temporal Relational Model, TRM). В TRM тимчасова база даних визначається як „об’єднання двох множин відносин Rs і Rt, де Rs - безліч всіх статичних відносин, а Rt - безліч всіх відносин, що змінюються у времени”. Часові інтервали, концептуально подібні періодам життя в HRDM, включають два обов’язкові атрибути - відмітки часу, що представляють початковий час (start time) Ts і кінцевий час (end time) Te, тобто нижню і верхню межі тимчасового інтервалу відповідно.

У зв’язку з тим, що тимчасові моделі даних, такі, як TRM, мають реляційні основи, представляється цілком природним, що в них значну роль гратиме нормалізація. В моделі TRM використовується концепція тимчасової нормальної форми TNF (Time Normal Form).

Інша корисна можливість, яку може забезпечити часове вимірювання, - це управління майбутнім часом, як, наприклад, це робиться в моделі HDBMS. У HDBMS підтримуються наступні правила для тимчасових операцій:

- Розділення історичних даних, поточних даних і даних майбутнього на різні сегменти так, щоб воно було прозорим для користувача.

- Підтримка всіх типів трансакцій над станами і єствами майбутнього.

- Відмова від накладення яких-небудь обмежень, що не є необхідними, на впорядкування в часі трансакцій над даними майбутнього (наприклад, основних принципів синхронізації трансакцій).