Объектілі бағдарланған модель
Объектілі бағдарланған мәліметтер моделінде мәліметтер қорының жеке жазуларын идентификациялауға мүмкіндік бар. МҚ-ның жазулары мен оны өңдеу функцияларының арасында объектілі бағдарланған программалау тілдерінің командаларының көмегімен өзара байланыс тағайындалады.
Стандартты объектілі бағдарланған модель ODMG -93 стандартында сипатталған (Object Database Management Group – бағдарланған мәліметтер қорын басқару тобы). ODMG -93 стандартын толық көлемде меңгеру әлі асырылған жоқ. Негізгі идеясын баяндау үшін объектілі бағдарланған МҚ моделінің жеңілдетілген түрін қарастырайық.
Объектілі бағдарланған МҚ-ның құрылымын торабтары объект болып табылатын графикалық тармақ түрінде қарастыруға болады. Объектінің қасиеттері қандай да бір стандартты типпен (мысалы string-жолдық) немесе пайдаланушының құрған типімен (мысалы, class) сипатталады. String типінің мәні символдар жолы болып табылады. Class типінің мәні сәйкес кластың экземпляры болып табылатын объект болады.
Әрбір объект – класс экземпляры объектінің ұрпағы болып есептеледі, ол қасиет ретінде анықталған. Класс экземплярының объектісі өзінің класына
жатады және бір ғана ата-анасы болады. МҚ-дағы туыстық қатынастар объектілердің байланыс иерархиясын құрады (9-сурет).
10-сурет. Кітапхана жұмысындағы МҚ-ның логикалық құрылымы.
Мұнда кітапхана типті объект абонент, каталог және жіберу объект экземпляр кластарына ата-аналық болып табылады. Кітап типті әртүрлі объектілердің бір немесе бірнеше ата-анасы болуы мүмкін. Бір ата-анасы бар КІТАП типті объектілер ең болмағанда инвентарлық номері бойынша ажыратылуы тиіс, бірақ ISBN, УДК, АТЫ, және АВТОР қасиеттерінің мәні бірдей болуы мүмкін.
Объектілі бағдарланған МҚ-ның логикалық құрылымы иерархиялық МҚ- ның құрылымына ұқсас. Олардың арасындағы негізгі айырмашылық мәліметтерді манипуляциялау әдісінде болуы мүмкін.
Қарастырылып отырған МҚ-да мәліметтермен орындалатын операцияларда инкапсуляция, мұрагерлік (наследование) және полиморфизм тәрізді объектілі бағдарланған механизмдерге күшейтілген логикалық операциялар қолданылады. Кей жағдайда SQL операцияларына ұқсас операциялар қолданылуы мүмкін (мысалы, МҚ-н құру).
МҚ-н құру және түрлендіру мәліметтерді жылдам іздеуге арналған ақпараттан тұратын индекстерді автоматты түрде құрып, одан кейін түзейтіндей болуы тиіс (индексті кестелер).
Объектілі бағдарланған МҚ моделіне қатысты инкапсуляция, мұрагерлік және полиморфизм ұғымдарын қарастырайық.
Инкапсуляция –объектінің өзі анықталған аралықтағы қасиеттердің аты
көрінетін облыспен шектеледі. Егер каталог типті объектіге кітап авторының
телефонын қосатын болсақ (телефон деген атауы бар болса), онда біз абонент және каталог объектілерінің бір атаулы қасиеттерін аламыз. Мұндай қасиеттің мәні инкапсуляцияланған объектілермен анықталады.
Мұрагерлік – бұл керісінше, объектінің барлық ұрпақтарындағы қасиеттердің көріну облысын кеңейтеді. Мысалы, каталог типті объектінің ұрпағы болып табылатын кітап типті барлық объектіге ата-аналық объект қасиетін беруге болады: ISBN, УДК, АТЫ, және АВТОР. Егер тікелей ата-ана болып табылмайтын объектілерде мұрагерлік жасау механизмін кеңейту қажет болса (мысалы, бір ата-ананың ұрпақтарының арасында), онда олардың ортақ атасында abs типті абстрактілі қасиет анықталады. Кітапхана объектісіндегі билет және номер абстрактілі қасиеттерін анықтау барлық абонент, кітап және жіберу ішкі объектілерінен осы қасиетті шығаруға әкеледі.
Полиморфизм – объектілі бағдарланған программалау тілдерінде қандайда бір программалық кодтың әртүрлі типті мәліметтерімен жұмыс істеу қабілетін көрсетеді. Объектілі программаның орындалуы кезінде сол әдіс аргументтің типіне тәуелді әртүрлі объектілерде қолданылады. Біздің жағдайда, объектілі бағдарланған МҚ-на қатысты, полиморфизм кітап класындағы объектілердің қаиеттерінің жиынтығы әртүрлі болуы мүмкін. Кітап класындағы объектілермен жұмыс істейтін программаның полиморфты коды болуы мүмкін.
Объектілі бағдарланған МҚ-дағы іздеу дегеніміз – пайдаланушының сұраған объектісі мен МҚ-да сақталған объектінің арасындағы ұқсастықты анықтау болып табылады. Объект-мақсат деп аталатын пайдаланушының анықтайтын объектісі, жалпы жағдайда, МҚ-да сақталған барлық объектілер иерархиясының ішкі жиыны түрінде берілуі мүмкін. Объект-мақсат, сондай-ақ, сұраныстың орындалу нәтижесі қорда сақталуы мүмкін. Кітапханада кем
дегенде бір кітап алған абоненттің аты мен оқырман билетінің номері жөніндегі сұраудың мысалын былай көрсетуге болады (7-сурет).
Реляциялық мәліметтер қорының моделімен салыстырғанда мәліметтердің объектілі бағдарланған моделінің жетістігі объектілердің күрделі өзара байланысы туралы ақпаратты бейнелеу мүмкіндігі болып табылады.
Мәліметтердің объектілі бағдарланған моделі мәліметтер қорындағы жеке жазуларды ерекшелеп, оларды өңдеу қызметін анықтау болып табылады.
11-сурет. Бүтін объектілі МҚ фрагменті
Объектілі бағдарланған модельдің кемшілігі ұғымдарының аса жоғары күрделілігі, мәліметерді өңдеудің қолайсыздығы және сұрауды орындаудың күрделілігінде болып отыр.
90-жылдары объектілі бағдарланған мәліметтер қорын басқару жүйелерінің эксперименттік прототипі пайда болды. Қазіргі уақытта мұндай жүйелер кеңінен таралуда, оған мынадай МҚБЖ-і жатады: POET (POET Software), Jasmine (Computer Associates), Versant (Versant Technologies), Iris, Orion, Postgres.
Бақылау сұрақтары:
1. Мәліметтердің типтері және моделі дегеніміз не?
2. Иерархиялық моделдің құрылым қалай анықталады?
3. Желілік модел дің құрылым қалай анықталады?
4. Реляциялық моделдің құрылым қалай анықталады?
5. Постреляциялық модел дің құрылым қалай анықталады?
6. Көп өлшемді модел дің құрылым қалай анықталады?
7. Объектілі бағдарланған модел дің құрылым қалай анықталады?
Әдебиеттер:
[3], [4], [7].