колекціями, виконання запитів і керування транзакціями.
Серверна частина спроектована з розрахунку на використання механізму відображення віртуальної пам'яті, яка поширюється на всю мережу і може охоплювати кілька серверів. Витягувані з бази даних об'єкти можуть об'єднуватися в пакети для передачі по мережі, що дозволяє знизити обсяг мережевого трафіку. Для скорочення часу доступу в серверах використовується техніка кластеризації. На кожній клієнтської частині є локальний кеш, в якому зберігаються використовувані об'єкти. Коли об'єкт переміщається в адресний простір клієнта, посилання на нього переробляються таким чином, що для кожного до об'єкта доступу достатньо однієї команди комп'ютера.
Управління мультидоступу засноване на використанні прозорого для користувача механізму блокувань, що включає можливість блокування з читання та по запису. Підтримуються різні рівні деталізації (Гранулювання) блокувань від рівня сторінок зовнішньої пам'яті бази даних до конфігурацій (що вказуються програмістом груп об'єктів).
Надійність зберігання даних забезпечується за рахунок підтримки журналу проведених змін. Підсистема управління транзакціями відповідає за журналізацію всіх проведених змін на основі протоколу WAL (Write Agead Log - упреждающей записи в журнал). Додатково підтримується архівний журнал, в якому авторизований користувач може провести архівне копіювання бази даних.
Мається засіб підтримки версій, яке забезпечує можливість колективної роботи з базами даних на основі механізмів check-in/check-out. На цьому підході грунтується підтримка довгих транзакцій. Для кожної конфігурації об'єктів можна створити історію версій, незалежну від типів об'єктів.
У ObjectStore стабільність зберігання об'єктів підтримується за рахунок наявності іменованих кореневих стабільних об'єктів класу база даних. База даних створюється за допомогою виклику методу new цього класу. Є методи для відкриття і закриття бази даних. Крім того, в класі містяться методи для створення стабільних кореневих об'єктів, зазвичай є колекціями, в яких розміщуються стабільні об'єкти. p> Підтримуються мови C, C + + і Smaltalk. Властивість стабільності забезпечується за рахунок включення до бібліотеки класів спеціальних системних класів. Є класи, які підтримують колекції - списки, множини, мультимножини і масиви. Методи цих класів підтримують вибірку об'єктів з колекцій, вставку і видалення об'єктів. p> Підтримуються шлюзові об'єкти, що підтримують доступ до реляційних даних, а також інструментальні засоби для відображення реляційної схеми в еквівалентну об'єктно-орієнтоване уявлення. Таким чином, з реляційними базами даних можна працювати в інтерфейсі ODBC на основі SQL або у власному інтерфейсі ObjectStore. p> Objectivity/DB
Компанія Objectivity була утворена в 1988 р. У 1990 р. була випущена перша версія системи, яка представляла собою розподіле...