Аппараттық және бағдарламалық қамтамасыз етуді орнату

Sybase eServer жеткізу опциялары. Дерекқорды басқару жүйелері және ақпаратты сақтауды қолдау (IBM DB2)

IBM DB2 дерекқорын басқару жүйесі өзінің дамуын сонау 70-ші жылдары бастады және қазір өнімділікке, сенімділікке, қауіпсіздікке және масштабтауға жоғары талаптарға жауап беретін корпоративтік ДҚБЖ нарығында күшті орын алады.

Игорь Булатенко, Позитивті технологиялардың ақпараттық қауіпсіздік жөніндегі маманы

IBM DB2 дерекқорын басқару жүйесі өзінің дамуын сонау 70-ші жылдары бастады және қазір өнімділікке, сенімділікке, қауіпсіздікке және масштабтауға жоғары талаптарға жауап беретін корпоративтік ДҚБЖ нарығында күшті орын алады. Жеке секторда IBM DB2 Express тегін нұсқасының қолжетімділігіне қарамастан, DB2 кеңінен қолданылмаған. Интернетте DB2 конфигурациялау және пайдалану туралы мақалалардың көп болмауының себебі осы болуы мүмкін.

DB2 қауіпсіздік үлгісі кең ауқымды функционалдылыққа ие және деректерді сыртқы әсерлерден қорғауға және ДҚБЖ өзін пайдаланатын ішкі пайдаланушылар үшін қол жеткізу құқықтарын саралауға мүмкіндік береді.

Дегенмен, дайын емес пайдаланушыға осы әртүрлілікті нөлден бастап түсіну қиын, сондықтан кейбір маңызды аспектілер осы мақалада талқыланады.

Кіру нүктесі

DB2 кіру нүктесі келесідей көрінеді: ДҚБЖ -> белгілі бір портқа байланыстыруға болатын данасы (данасы) -> нақты дерекқор атауы. Қауіпсіздік параметрлерін нақты данада да, нақты дерекқорда да өзгертуге болады.

Аутентификация

Аутентификация DB2 серверіне қосылуға әрекеттенген кезде қолданылатын негізгі қауіпсіздік механизмі болып табылады. Аутентификация берілген тіркелгі деректерінің дұрыстығын тексереді. Негізгі мүмкіндік DB2 ішінде пайдаланушы аутентификациясы тек сыртқы плагиндер арқылы орындалады. Oracle немесе MS SQL серверінен айырмашылығы, ішкі пайдаланушылар мұнда жоқ. Тіпті IBM Data Studio бағдарламасында табылған пайдаланушы жасау мүмкіндігі пайдаланушыны жасамайды, бірақ көрсетілген пайдаланушыға дерекқор қосылымы артықшылығын тағайындайды.

Бірнеше аутентификация опциялары бар, қажетті опция дерекқор менеджеріндегі AUTHENTICATION параметрімен басқарылады. Бұл параметрдің мәні клиенттердің аутентификацияланатын жеріне (сервер жағында немесе клиент жағында) және деректер шифрланған пішінде (_ENCRYPT аяқталатын мәндер) жіберілетініне әсер етеді. Бұл параметр үшін қолдау көрсетілетін мәндер мына жерде қол жетімді:

sysibmadm.dbmcfg кестесін сұрау арқылы дерекқор менеджерінің конфигурациясын көруге болады, бірақ бұл дерекқорлардың кез келгеніне кіруді талап етеді, бұл әрқашан мүмкін емес. Серверге жергілікті рұқсатыңыз болса, процессорды ашуға болады пәрмен жолы(Windows жүйесінде db2 немесе db2.exe), данаға қосылып, келесі пәрмендерді іске қосыңыз:

db2 => db2inst1 файлына тіркеңіз
db2 => дерекқор менеджерінің конфигурациясын алу

AUTHENTICATION параметрінің әдепкі мәні - СЕРВЕР. Берілген пайдаланушы тіркелгі деректерінің дұрыстығын тексеру сервер жағында көмегімен жүзеге асырылады операциялық жүйе, бірақ барлық деректер анық мәтінде беріледі және оны шабуылдаушы ұстап алуы мүмкін.

Түсірілген ақпарат Wireshark-те қалай көрінетінін көрейік.


Клиенттен жіберілген логин мен пароль EBCDIC қарау кезінде пакетте көрінеді.

Аутентификация түрін SERVER_ENCRYPT деп өзгерткен кезде логин мен құпия сөз шифрланған пішінде жіберіледі және сервер жағында тексеріледі.

Мән келесідей өзгереді:

db2 => db2inst1 файлына тіркеңіз
db2 => server_encrypt аутентификациясы арқылы дерекқор менеджерінің конфигурациясын жаңартыңыз
db2 => db2 тоқтату күші
db2 => db2start

Содан кейін аутентификация пакеті келесідей болады:


Дегенмен, сұраулардың мәтіні мен нәтижесі әлі де анық түрде беріледі.

Wireshark сұрау пакеті:


Wireshark-те жауабы бар пакет:


AUTHENTICATION параметрі DATA_ENCRYPT мәніне орнатылса, пайдаланушының тіркелгі деректері, сонымен қатар клиент пен сервер арасында тасымалданатын ақпарат шифрланады.

Мән жоғарыдағы мысалдағыдай өзгереді:

db2 => db2inst1 файлына тіркеңіз
db2 => authentication data_encrypt көмегімен дерекқор менеджерінің конфигурациясын жаңартыңыз
db2 => db2 тоқтату күші
db2 => db2start

Осыдан кейін жіберілген деректер де шифрланады:


Сондай-ақ, CLIENT аутентификация түріне назар аудару қажет. Аутентификацияның бұл түрімен клиент пен сервер арасында қауіпсіз байланыс арнасы бар деп есептеледі және егер пайдаланушы клиентке рұқсат алған болса, ол тіркелгі деректерінің дұрыстығын тексермей серверге кіре алады. Яғни, аутентификация клиент жағында болады, тексеру сервер жағында орындалмайды. Серверге қосылатын пайдаланушының қол жеткізу құқығы болмаса да, ол Қоғамдық топқа тағайындалған барлық артықшылықтарды алады. Сондықтан аутентификацияның бұл түрін пайдаланбау керек, ол шабуылдаушыларға серверге көп күш жұмсамай қол жеткізу мүмкіндігін береді.

Егер кенеттен, қандай да бір себептермен аутентификацияның бұл түрі қажет болса, пайдаланушының тіркелгі деректерінің қалай тексерілетініне әсер ететін тағы екі қосымша параметр бар екенін ескеру қажет. Бұл – сіз қандай клиенттер сенімді деп есептелетінін көрсетуге болатын trust_allclnts параметрі және логин мен құпия сөз қосылым кезінде жіберілген болса, қайда тексеру керектігін анықтайтын trust_clntauth параметрі. Бұл опциялардың екеуі де AUTHENTICATION опциясы КЛИЕНТ күйіне орнатылған жағдайда ғана аутентификацияға әсер етеді.

Сәтті болса, пайдаланушы идентификаторы DB2 идентификаторымен салыстырылады. Әдетте, идентификатор пайдаланушы атымен бірдей, бірақ ол бас әріптерді пайдаланады.

Авторизация

Авторизация процесі пайдаланушының өзі сұраған әрекеттерге қажетті құқықтары бар-жоғын тексереді. ДҚБЖ және деректер қоры данасының уәкілетті органдары (органдары) бар.

Белгілі бір дананың деңгейіндегі рұқсаттар дерекқор менеджерінің конфигурациясында жазылған. Бұл келесі өкілеттіктер:

  • SYSADM (жүйелік әкімші өкілеттігі);
  • SYSCTRL (жүйені басқаруға рұқсат);
  • SYSMAINT (жүйені қолдауға рұқсат);
  • SYSMON (жүйені бақылауға рұқсат).

Бұл артықшылықтар пайдаланушы жататын топты көрсету арқылы орнатылады. Ол үшін dbmcfg файлының келесі параметрлері пайдаланылады (жоғарыда көрсетілген рұқсаттарға сәйкес):

DB2 құралдарын пайдаланып топ мүшелері болып табылатын пайдаланушылардың тізімін алу оңай емес, оны операциялық жүйенің өзінде жасау керек немесе белгілі бір пайдаланушының қай топтарға жататынын талдау керек (сұрау үшін «пайдалы сұраулар» қойындысын қараңыз). ).

DB2 конфигурациялау кезінде SYSADM рұқсаты тағайындалған пайдаланушылар тізімін тексеруді ұмытпаңыз. Бұл рұқсат барлық дерекқор нысандарын басқаруға мүмкіндік береді.

Белгілі бір дерекқордың рұқсаттарын SYSCAT.DBAUTH көрінісінде көруге болады. Пайдаланушының дерекқорға кіру мүмкіндігі бар-жоғын анықтайтын CONNECTAUTH артықшылығына және қоршалмаған (қоршалмаған) процедуралар мен функцияларды жасауға жауап беретін NOFENCEAUTH артықшылығына назар аударыңыз. Мұндай процедуралар деректер қорының адрестік кеңістігінде орындалады және қате болған жағдайда деректер қоры мен ондағы кестелердің тұтастығын бұзуы мүмкін.

Артықшылық

DB2 ішіндегі артықшылықтар әртүрлі нысандарда берілуі мүмкін. Кестеге қатынасу артықшылықтарын SYSCAT.TABAUTH көрінісінде көруге болады. Берілген артықшылық түрі туралы деректер артықшылықтың өзіне байланысты (SELECTAUTH, DELETEAUTH және т.б.) бөлек бағандарда сақталады. СІЛТЕМЕЛЕР және ЖАҢАРТУ артықшылықтары үшін GRANT пәрменін пайдаланып артықшылықты берген кезде, берілген артықшылықтар кеңейтілетін бағандардың атауларын да көрсетуге болады. Бұл туралы ақпаратты SYSCAT.COLAUTH көрінісінде көруге болады

Режимдердің артықшылықтарын (функциялар, процедуралар және әдістер) SYSCAT.ROUTINEAUTH көрінісінде көруге болады. Мұндағының бәрі тривиальды емес, SPECIFICNAME және TYPENAME өрістеріне байланысты артықшылықтар берілген схеманың барлық ішкі бағдарламаларына берілуі мүмкін.

Пайдаланушылар, топтар, рөлдер

Барлық дерекқор өкілеттіктері мен әртүрлі артықшылықтар пайдаланушыларға, топтарға немесе рөлдерге берілуі мүмкін. Пайдаланушылардың, топтардың болуы және пайдаланушылардың топтарға мүшелігі дерекқордың өзінен тыс реттеледі. Осыған байланысты, өкілеттіктер мен артықшылықтарды беру кезінде белгілі бір ұсыныстарды ескеріп, кейбір нәзіктіктерді білген жөн. Дерекқорға артықшылықтар мен өкілеттіктерді, атап айтқанда, деректер қорына (CONNECTAUTH) қосылу мүмкіндігін топтарға беру ұсынылмайды. Артықшылықтарды қажет ететін нақты пайдаланушыларға немесе рөлдерге беруіңіз керек. Рөлдерге қолдау DB2 ішінде 9.5 нұсқасынан бастап қол жетімді. Рөл мүшелігі дерекқордың өзінде басқарылады.

Сондай-ақ, DB2 кірістірілген Қоғамдық рөлі бар. Дерекқор пайдаланушысына ҚОҒАМДЫҚ рөлді беру қажет емес: пайдаланушыдан ЖАҒДАЙЫ рөлді қайтарып алу мүмкін емес. Қоғамдық рөлге артықшылық берілгенде, артықшылық іс жүзінде барлық дерекқор пайдаланушыларына беріледі. Қоғамдық рөлге дерекқор рұқсатын бермеуіңіз керек. Кестелер мен көріністерге артықшылықтар өте сақтықпен, тек қарау үшін және қайта тағайындау мүмкіндігінсіз берілуі керек (ГРАНТ ОПЦИЯСЫМЕН).

Артықшылықтарды беру кезінде аутентификацияның ерекшелігіне байланысты жүйеде пайдаланушының немесе топтың болуы тексерілмейді. Нәтижесінде аутентификация пайдаланушылары жүйенің нақты пайдаланушыларымен байланыссыз жүйеде пайда болуы мүмкін. Мұндай пайдаланушыларды келесі SQL сұрауы арқылы табуға болады:

sysibmadm.authorizationids ҚАЙДАН ТАҢДАУ authidtype = "U" ЖӘНЕ authid IN ЕМЕС (пайдаланушы атын TABLE(sysfun.USERS()) ТАҢДАУ КЕРЕК)

Мұндай топтарды іздеу үшін ұқсас сұрау пайдаланылады, бірақ сұрау PUBLIC туралы деректер көрсетілмеуі керек екенін көрсетеді:

sysibmadm.authorizationids ҚАЙДАН ТАҢДАУ authidtype = "G" ЖӘНЕ authid IN ЕМЕС (топ атын TABLE(sysfun.groups()) ТАҢДАУ ЖӘНЕ authid !=«ҚОҒАМДЫҚ»

LBAC

DB2-де белгілерге негізделген кестелердегі деректерге кіруді шектеудің қуатты механизмі бар (Жапсырмаға негізделген қатынасты басқару). Бұл механизм арнайы жолдар мен бағандарға қауіпсіздік белгілерін орнатуға мүмкіндік береді, осылайша қорғалған деректерге рұқсаты жоқ пайдаланушы олардың бар екендігі туралы тіпті білмейді. LBAC енгізу әдістері туралы егжей-тегжейлі айтудың мағынасы жоқ, өйткені өндірушіде осы тақырып бойынша оқу құралы бар:

Автоматты сканерлеу құралдары

IBM DB2 серверінің қауіпсіздігін теңшеу кезінде қауіпсіздік сканерінің қандай да бір түрін пайдалану маңызды (мысалы, NGS SQuirreL for DB2, MaxPatrol, т.б.). Сканерлер сіз жіберіп алған параметрлердің осалдықтарын анық көрсетеді немесе ақпаратты талдауға ыңғайлы пішінде көрсетеді:

Пайдалы сұраулар мен командалар

Дерекқор менеджерінің параметрлерін алыңыз:

sysibmadm.dbmcfg ішінен атауды, мәнді таңдаңыз

немесе

дб2 => алуdbmcfg

Дерекқор менеджерінің опциясын өзгерту:

db2 => көмегімен дерекқор менеджерінің конфигурациясын жаңарту

Осыдан кейін дананы қайта бастау керек:

дб2 => дб2 Тоқтакүш
дб2 => дб2 бастау

Дерекқор параметрлерін алу:

sysibmadm.dbcfg ішінен атауды, мәнді таңдаңыз

немесе

db2 => үшін db cfg алыңыз

Операциялық жүйені пайдаланушылардың тізімі:

кестеден пайдаланушы атын таңдаңыз(sysfun.USERS()) AS t

Операциялық жүйе топтарының тізімі:

кестеден топ атауын таңдаңыз(sysfun.GROUPS()) AS t sysibmadm.AUTHORIZATIONIDS ішінен AUTHID, AUTHIDTYPE таңдаңыз

Ағымдағы дерекқор атын көрсетіңіз:

sysibm.sysdummy1 ішінен ағымдағы серверді таңдаңыз

Ағымдағы пайдаланушы атын енгізіңіз:

таңдаңызпайдаланушыбастапsysibm. sysdummy1

Пайдаланушы тиесілі топтардың тізімін алыңыз:

кестеден GROUPNAME таңдаңыз(sysfun.groups_for_user(" ")) т ретінде

Барлық орнатылған ДҚБЖ тізімі:

$db2ls

ДҚБЖ барлық даналарының тізімі:

$ дб2 ілист

Шығару жолдарының санын шектеңіз:

қойынды атауынан * таңдаңыз, тек алғашқы 5 жолды алыңыз

IBM DB2 ДҚБЖ IBM компаниясының 30 жылға жуық зерттеу және тәжірибелік-конструкторлық жұмыстарының нәтижесі болып табылады. Бұл ДҚБЖ (6.x) соңғы нұсқасы басқару және оңтайландыру құралдарының ең ойластырылған жиынтықтарының бірін және Windows 95 ноутбугынан OS/390 жұмыс істейтін S/390 негізгі фреймдерінің тұтас кластеріне дейін өсетін дерекқор механизмін ұсынады.

DB2 бумасы екі басылымда қол жетімді: DB2 Workgroup және DB2 Enterprise Edition. Бұл ДҚБЖ DB2 алдыңғы нұсқаларынан белгілі барлық инновациялық дерекқор механизмінің технологияларын жүзеге асырады, мысалы, параллельді өңдеу, репликация құралдарының толық жинағы, дерекқор өнімділігін жақсарту үшін сұрау жиынтық кестелері, нысанға бағытталған дерекқорды жобалау мүмкіндіктері және Java тілінің мүмкіндіктері. Сонымен қатар, DB2 жүйесі мәтінді, дыбысты және бейне фрагменттерін, кескіндерді және географиялық деректерді сақтауға және өңдеуге мүмкіндік беретін мультимедиялық кеңейтімдердің толық жиынтығымен жабдықталған. Масштабтылығы жағынан IBM мамандары әзірлеген деректер қорын кластерлеу технологиясының аналогтары жоқ деп айта аламыз. Бұл кеңейтімдер веб-қосымшаларды, сондай-ақ фотосуреттер мен көлемді мәтіндік есептерді қамтитын бағдарламаларды әзірлеу процесін айтарлықтай жеңілдетеді. DB2 жүйесі қолданбаларды әзірлеу платформасы ретінде де айтарлықтай бәсекеге қабілетті, өйткені SQL мәлімдемесін сәйкес Java класына автоматты түрде түрлендіретін және оны дерекқор құрылымына қосатын Stored Procedure Builder құралы бар. DB2 6.1 нұсқасында басқа ДҚБЖ-мен өзара әрекеттесу Microsoft корпорациясының OLE DB спецификациясын, жаңа дерекқорға кіру стандартын пайдалануды қосу арқылы айтарлықтай жақсартылды. DB2 әкімшілік басқару элементтері жаңа нұсқасы Java тілінде қайта жазылған және Интернеттен алуға болатын ең жоғары мақтауға лайық.

Бұл ДҚБЖ негізгі кемшіліктері әкімшіліктің салыстырмалы күрделілігі және LINUX сияқты танымал серверлік операциялық жүйелер үшін іске асырудың жоқтығы (әлі) болып табылады.

Бұл ДҚБЖ-да Index Smart-Guide арқасында деректер базасына типтік жүктемені сипаттайтын рұқсаттардың берілген саны үшін оңтайлы индекстерді құра отырып, баптауды жүзеге асыруға болады. DB2 деректер қоймасы ретінде ДҚБЖ тиімділігін айтарлықтай жақсартатын жиынтық кестелерді жасауға мүмкіндік беретін жалғыз пакет. Жиынтық кесте – жиі қойылатын сұрауларға жауаптарды сақтау үшін дерекқор пайдаланатын уақытша жұмыс кеңістігі. Жаңа функционалдылықпен, сондай-ақ параллельизациямен және біріктіру мен индекстің кез келген түрін таңдау мүмкіндігімен (мүмкін растрлық индекстерден басқа) DB2 6.1 моделі өнімділігі жоғары жүйелердің ең арзанына айналады деп айтуға болады. Бұл ДҚБЖ-ның әкімшілік құралдары шешілетін тапсырмалар деңгейіне әбден сәйкес келеді, сонымен қатар ол мультимедиялық деректермен жұмыс істеуге және бағдарламалауға (Microsoft SQL Server-де анық жетіспейтін) ерекше кең мүмкіндіктер береді.

Informix ұсынған ДҚБЖ.

Соңғы уақытта реляциялық ДҚБЖ-дан объектілі-бағытталғанға көшу болды (бұл Oracle мысалында анық көрінеді). Informix сонымен қатар осы тұжырымдамадан кейін Informix Dynamic Server 7.3 реляциялық деректер базасы мен Informix Universal Data Option объектілік реляциялық деректер базасына негізделген және Universal әмбебаптығы және мультимедиялық функциялары бар деректермен жұмыс істеу кезінде динамикалық сервердің жоғары өнімділігін біріктіретін жаңа Centaur ДҚБЖ шешімін жариялады. Деректер опциясы. Бұл іске асыру Интернет жүйелерін дамытуға арналған. Бұл ДҚБЖ Интернетке тән қарқынды жұмыс жүктемелеріне сәйкес масштабталатын икемді әзірлеу ортасына және Интернеттің дамуымен барлық жерде таралған деректердің жаңа түрлерімен жұмыс істеуге арналған құралдарға ие болады деп күтілуде. Жаңа жүйеде енгізілген Java мүмкіндіктері әзірлеушілерге сақталған процедураларды, пайдаланушы бағдарламаларын және Informix пайдаланушы дерекқор кеңейтімдері деп атайтын осы тілде DataBlades құрамдастарын жасауға мүмкіндік береді.

Inforix тұтынушыларының көзқарасы бойынша, бұл алға жасалған үлкен қадам, өйткені осы уақытқа дейін DataBlades-пен жұмыс істегенде олар сақталатын процедураларды жазу үшін тек C және SPL, Informix-тің ішкі тілін пайдалана алатын. Сонымен қатар, Centaur пакеті кірістірілген ActiveX нысандарын өңдеумен жабдықталады. Бұл, мысалы, Visual Basic тілінде деректер қорының сақталатын процедураларын жасауға мүмкіндік береді; дегенмен, бұл Windows NT ортасында іске қосу үшін Centaur бумасын талап етеді.

Centaur Informix динамикалық серверіне қосымша болады және осы пакет үшін дәстүрлі дерекқор пішімімен жұмыс істейді, осылайша пайдаланушылар өздерінің иелігінде барлық ескі функцияларға ие болады және жүйені жаңа нұсқаға жаңарту өте қиын болмайды. Сонымен қатар, Centaur пакеті Informix әмбебап сервер жүйесін тамаша инженерлік жетістікке айналдырған барлық дизайн және бағдарламалау мүмкіндіктерін сақтайды. Жаңа жүйе дерекқорды объектілі-бағытталған жобалау, мамандандырылған кестелерді құру және индекстеу бағдарламалары үшін құралдармен жабдықталады; ол пайдаланушыларға стандартты SQL құралдарына ғана сенбей, сұрауларға өз функцияларын ендіруге мүмкіндік береді.

Қорытындылар.

ААЖ, серверлік операциялық жүйелер және ДҚБЖ құру архитектураларының негізгі сипаттамаларын қарастыра отырып, болашақта AIS архитектурасы ретінде біз Linux серверінің ОЖ ретінде Oracle 8i ДҚБЖ ретінде Internet/Intranet архитектурасын таңдаймыз. Жиынтық кесте бүгінгі күн үшін ең көп таралған екі шешімнің салыстырмалы сипаттамаларын ұсынады Microsoft базасы SQL Server 7.0 (NT жүйесінде) және Oracle8i (Unix, Linux жүйесінде).

Microsoft SQL Server 7.0

Әкімшілік басқару

Графикалық құралдар

Техникалық қызмет көрсетудің қарапайымдылығы

Деректер механизмі

Бірнеше процессорлармен жұмыс істеу

Қолайлы

Біріктіру функциясы мен индексті таңдау

Бірнеше пайдаланушының бір уақытта қол жеткізуі

Мультимедиялық мәліметтерді өңдеу

Интернетке қосылу

Аудио, бейне, кескінді өңдеу

Осы мәтіннен іздеңіз

Өзара әрекеттестік

Қолайлы

Басқа мәліметтер базасымен өзара әрекеттесу

бір реттік кіру

Түрлі операциялық жүйелерде жұмыс істеу

Қолайлы

Бағдарламалау опциялары

Қолайлы

Сақталған процедуралар мен триггерлер

Ішкі программалау тілі

Мәліметтер базасын құру

Объектіге бағытталған жүйелер

Филиалдармен жұмыс

Репликация

Бөлінген транзакцияны өңдеу

Қашықтан басқару

Мәліметтер қоймасын ұйымдастыру және есептерді дайындау

Құралдар жүктелуде

Талдау құралдары

DB2(орыс тілінде «dibi two» деп айтылады, ағылшын тілінен «dibi tu» калька да жиі кездеседі) - отбасы бағдарламалық өнімдер IBM компаниясында ақпаратты басқару мамандығы бойынша.

Көбінесе DB2-ге сілтеме жасағанда, олар IBM әзірлеген және шығарған DB2 Universal Database (DB2 UDB) реляциялық дерекқорды басқару жүйесін білдіреді.

Кейде «DB/2» емлесі көрінеді, бірақ бұл емле дұрыс емес: IBM белгілеуінде бөлшектің бөлгішіндегі сан платформаны білдіреді және «/2» OS/2 операциялық жүйесіне арналған өнімді білдіреді (немесе компьютерлердің PS/2 сериясы). Мысалы, OS/2 жүйесіне арналған DB2 нұсқасы "DB2/2" деп белгіленді.

Іске асыру

DB2 ДҚБЖ қазіргі уақытта келесі платформаларда қол жетімді:

  • Linux, UNIX және Windows v9 үшін DB2 AIX, HP-UX, Linux, Solaris, Windows платформалары үшін және Mac OS X платформасына арналған бета нұсқасы
  • DB2 for z/OS v9 z/OS және OS/390 платформалары үшін
  • VSE & VM v7 үшін DB2 сервері z/VM және z/VSE платформалары үшін
  • i үшін DB2 IBM i платформасы үшін (аппараттық және бағдарламалық жасақтама деңгейінде жүйеге біріктірілген)

Бұрын OS/2, UnixWare, PTX үшін DB2 дерекқор серверінің нұсқалары шығарылды.

DB2 ДҚБЖ клиенттері тізімделген платформаларға қосымша ретінде шығарылған немесе шығарылған әртүрлі нұсқаларсонымен қатар SINIX, IRIX, классикалық Mac OS және MS-DOS үшін, сонымен қатар in мобильді нұсқасы DB2 Everywhere Windows CE, Palm OS, Symbian OS, Neutrino және Java виртуалды машинасы үшін.

Қазіргі уақытта отбасының коммерциялық өнімдеріне қоса, IBM тегін таратуды да таратады DB2 Express-C Linux (x86, x86-64, POWER), Windows (x86, x86-64), Solaris (x86-64), Mac OS X (x86-64 бета) платформалары үшін. Тегін нұсқаДҚБЖ жұмысы үшін бір екі ядролы процессордан және 2 ГБ-тан артық емес пайдалануға шектеулер бар. жедел жады(жүйедегі процессорлар мен жадтың жалпы саны кез келген болуы мүмкін, бірақ көрсетілген шектеулерден асатын ресурстар ДҚБЖ пайдаланбайды).

Оқиға

DB2 ұзақ тарихы бар және оны кейбіреулер SQL қолданатын алғашқы ДҚБЖ деп санайды.

1975 жылдан 1982 жылға дейін DB2 прототипі IBM компаниясында System Relational немесе System R деген атпен әзірленді. SQL тілі алғаш рет IBM System R жүйесінде жүзеге асырылды, бірақ бұл жүйе зерттеушілік сипатта болды және коммерциялық өнім, құрамында SQL бар, алғаш рет Oracle 1979 жылы шығарған.

DB2 өз атауын 1982 жылы SQL/DS үшін бірінші коммерциялық шығарылыммен, содан кейін DB2 деп аталатын MVS үшін алды. Ұзақ уақыт бойы "DB2" -мен бірге "Database 2" нұсқасы, сонымен қатар IBM сауда белгісі қолданылды. Шамасы, бұл ескі иерархиялық IMS ДҚБЖ кейінгі екінші флагмандық IBM ДҚБЖ болуы керек еді.

DB2-нің дамуы 1970-ші жылдардың басына, IBM компаниясында жұмыс істеген доктор Э.Ф.Кодд реляциялық деректер қоры теориясын жасап, 1970 жылы маусымда деректерді өңдеу үлгісін жариялаған кезден басталады. Бұл модельді жүзеге асыру үшін ол тілді дамытты реляциялық мәліметтер базасыдеректер мен оны Альфа деп атады. IBM одан әрі әзірлеуді доктор Коддтың бақылауынан тыс бағдарламашылар тобына беруді таңдады. Кейбір принциптерді бұзу қатынас моделі, олар оны «Structured English Query Language», қысқаша SEQUEL ретінде жүзеге асырды. SEQUEL бұрыннан тіркелген сауда белгісі болғандықтан, атау SQL – «Structured Query Language» болып қысқартылды және бүгінгі күнге дейін солай қалды.

Осылайша, тарихи түрде DB2 MVS үшін DB2 (оның ішінде DB2 for z/OS ұрпағы болып табылады) және оның қарындасы VM үшін SQL/DS (оның VSE және VM үшін DB2 сервері ұрпақ болып табылады) дамыды. Кейінірек IBM-дегі басқа әзірлеушілер тобы OS/2 EE Database Manager серверін іске асырды, ол кейінірек OS/2, AIX, содан кейін Windows үшін DB2 v2, содан кейін DB2 UDB (оның ұрпағы Linux, UNIX және Windows үшін DB2) болып шықты. ). Басқа топ DB2 архитектурасын ендірілген AS/400 дерекқорымен (ұрпағы - i үшін DB2) біріктіруді аяқтады. IBM бірте-бірте осы филиалдардың барлығын біріктіруге бет алды.

Ерекшеліктер

DB2-нің ерекше белгілеріне сирек ерекшеліктерді қоспағанда, тіл құрылымдарының таза декларативті мағынасын анықтайтын SQL тілінің диалектісі және осы декларациялық құрылымдардан тиімді сұрауды орындау жоспарын құрайтын қуатты көп фазалық оңтайландырушы кіреді. Басқа SQL диалектілерінен айырмашылығы, DB2 SQL диалектісінде іс жүзінде оңтайландырушы кеңестер жоқ, сақталатын процедура тілінің дамуы аз (және ұзақ уақыт бойы) жоқ және осылайша барлығы сұрауларды жазудың декларативті стилін сақтауға бағытталған. Сонымен бірге, DB2 SQL тілі есептеу жағынан аяқталды, яғни ол бастапқы деректер мен декларативті пішіндегі нәтиже арасындағы кез келген есептелетін сәйкестіктерді анықтауға мүмкіндік береді. Бұған басқалармен қатар кесте өрнектерін, рекурсияны және басқа кеңейтілген деректерді өңдеу механизмдерін пайдалану арқылы қол жеткізіледі.

IBM реляциялық дамуға және фирманың компьютерлік индустриядағы ұстанымына байланысты DB2 SQL диалектісі ANSI/ISO SQL стандарттарына айтарлықтай әсер етеді.

DB2-де сақталған процедуралар өте кең қолданылмайды және дәстүрлі түрде сақталатын процедураларды жазу үшін әдеттегі жоғары деңгейлі бағдарламалау тілдері (C, Java, PL/I, Cobol және т.б.) пайдаланылады, бұл бағдарламашыға файлды оңай пішімдеуге мүмкіндік береді. клиентте немесе серверде орындау неғұрлым орынды екеніне байланысты қолданбаның бөлігі ретінде немесе сақталған процедура ретінде бірдей код. DB2 сонымен қатар қазіргі уақытта ANSI SQL/PSM стандартына сәйкес сақталған процедуралар үшін SQL процедуралық кеңейтімін жүзеге асырады.

DB2 оңтайландырғышы кестелердегі деректерді тарату бойынша статистиканы кеңінен пайдаланады (егер жинақтау процесін дерекқор әкімшісі орындаса), сондықтан бірдей SQL сұрауын келесіге байланысты мүлде басқа орындау жоспарларына аударуға болады. статистикалық сипаттамаларол өңдейтін деректер.

Тарихи түрде DB2 негізгі фреймдердегі көп пайдаланушылық жүйелерден дамығандықтан, DB2 архитектурасында қауіпсіздік мәселелеріне және DB2-ге қызмет көрсететін мамандардың рөлдерін бөлуге көп көңіл бөлінеді. Атап айтқанда, көптеген басқа ДҚБЖ-дан айырмашылығы, DB2 дерекқор әкімшісі (DB2 бағдарламалық құрал құрамдастарын конфигурациялауға және оларды компьютер жүйесінде оңтайлы іске қосуға жауапты) және дерекқор әкімшісіне (белгілі бір дерекқордағы деректерді басқаруға жауапты) бөлек рөлдерге ие.

Қажет болған жағдайда бағдарламаларда статикалық SQL және пакеттер концепциясын пайдалану, басқа ДҚБЖ көпшілігінен айырмашылығы, мұндай қауіпсіздік моделін жүзеге асыруға мүмкіндік береді, егер белгілі бір операцияларды орындау құқығы қолданбалы бағдарламаларға мұндай құқықтар болмаған кезде берілуі мүмкін. осы бағдарламалармен жұмыс істейтін пайдаланушылар. Бұл бұл жағдайда пайдаланушының деректер базасын айналып өту мүмкін еместігіне кепілдік беруге мүмкіндік береді қолданбалы бағдарлама, егер пайдаланушының тек бағдарламаны іске қосу құқығы болса, бірақ деректерді дербес өңдеуге құқығы жоқ болса.

Компьютерлік жүйедегі қауіпсіздік құралдарын біріктіру деңгейін арттыру тұжырымдамасының бөлігі ретінде DB2-де пайдаланушыларды аутентификациялаудың, операциялық жүйе құралдарымен немесе арнайы қауіпсіздік серверлерімен интеграцияланудың өзіндік құралдары жоқ. DB2 ішінде жүйемен аутентификацияланған пайдаланушылар ғана рұқсат етілген.

DB2 – аппараттық/бағдарламалық құрал деңгейінде іске асырулары бар жалғыз жалпы мақсаттағы реляциялық ДҚБЖ (IBM i жүйесі; DB2 қолдауы сонымен қатар IBM System z негізгі аппараттық құралында жүзеге асырылады).

DB2 нұсқасының заманауи нұсқалары XML деректерін, соның ішінде XML құжаттарының жеке элементтеріндегі операцияларды пайдалану үшін кеңейтілген қолдауды қамтамасыз етеді.

Өңдеу қатесі

DB2 SQL серверінің пайдалы мүмкіндігі оның қателерді өңдеу мүмкіндігі болып табылады. Ол үшін SQLCA құрылымы қолданылады. SQL коммуникациялар аймағы- SQL сілтеме аймағы) SQL операторының әрбір орындалуынан кейін қолданбалы бағдарламаға қате туралы ақпаратты қайтарады.

SQLCODE құрылым өрістері және олардың мәндері

Негізгі, бірақ әрқашан пайдалы емес қате диагностикасы өрісте қамтылған SQLCODE(деректер түрі - бүтін) SQLCA блогының ішінде. Ол келесі мәндерді қабылдай алады:

  • 0 табыс дегенді білдіреді.
  • Оң сан бір немесе бірнеше ескертулермен сәттілікті білдіреді. Мысалы, +100 ешқандай баған табылмағанын білдіреді.
  • Теріс сан қате бар сәтсіздікті білдіреді. Мысалы, −911 дәйекті кері қайтаруды іске қосатын анықталған мерзімі өткен құлып күту аралығын (немесе тұйықталуды) білдіреді.

SQLERRM(деректер түрі – 71 таңбадан тұратын жол). SQLCODE өрісі нөлден аз болса, қатені сипаттайтын мәтіндік жолды қамтиды.

SQLERRD(деректер түрі – массив, 6 бүтін сан). Соңғы SQL операторының орындалу нәтижесін сипаттайды:

  • 1 элемент – ішкі ақпарат;
  • 2-ші элемент - INSERT мәлімдемесі үшін сервер жасаған SERIAL түр өрісінің мәнін қамтиды немесе қосымша кодқателер;
  • 3-ші элемент – өңделген жазбалар санына тең;
  • 4-ші элемент – осы операторды орындаудың шамамен құны;
  • 5-ші элемент – SQL операторының мәтіндік жазбасындағы қатенің орнын ауыстыру;
  • 6-шы элемент – ішкі ақпарат.

Ескертпелер

Сілтемелер

  • IBM веб-сайтындағы бағдарлама беті
  • developerWorks бойынша DB2 - DB2 мақалалары мен тренингтері
  • PlanetDB2 - DB2 блогтары

Әдебиет

  • Күні Қ. DB2 реляциялық ДҚБЖ нұсқаулығы. – М.: Қаржы және статистика, 1988. – 320 б. - ISBN 5-279-00063-9
  • Зикопулос П.К., Бакларз Дж., деРус Д., Мельник Р.Б. DB2 8-нұсқасы: Ресми нұсқаулық = DB2 нұсқасы 8: Ресми нұсқаулық. - М.: КУДИЦ-ОБРАЗ, 2004. - 400 б. - ISBN 5-9579-0031-1
  • Смирнов С.Н. IBM DB2 бағдарламасымен жұмыс істеу: Оқулық. – М.: Гелиос, 2001. – 304 б. - ISBN 5-85438-007-2 («Автоматтандырылған жүйелердің ақпараттық қауіпсіздігі» және «Компьютерлік қауіпсіздік» мамандықтары бойынша оқу құралы ретінде ақпараттық қауіпсіздік саласындағы ЖОО-ның ОМО ұсынған)
  • Сюзан Виссер, Билл Вонг. DB2 әмбебап дерекқорын 21 күнде үйретіңіз = Sams DB2 әмбебап дерекқорын 21 күнде үйретіңіз. - 2-ші басылым. - М.: Уильямс, 2004. - 528 б. - ISBN 0-672-32582-9
  • Хук Дж., Харбус Р., Қар Д. Windows NT® жүйесіне арналған DB2 әмбебап нұсқаулық. - Нью-Джерси: Prentice Hall PTR, 1999. - P. 504. - ISBN 0-13-099723-4

Викимедиа қоры. 2010 ж.

Басқа сөздіктерде "IBM DB2" не екенін қараңыз:

    IBM DB2- Әзірлеуші(лар) IBM бастапқы шығарылымы 1983 (1983) ... Wikipedia

    IBM DB2- DB2 IBM фирмасының Databank Management System (RDBMS) байланыстарымен байланысады, ол 1970 жылы жасалған IBM Research немесе E. F. Codd компаниясының Grundlagen жүйесімен жұмыс істеуге арналған. Inhaltsverzeichnis 1 Eigenschaften 1.1… … Deutsch Wikipedia

    IBM DB2- IBM Dernière нұсқасын әзірлеуші ​​... Wikipedia en Français

    IBM DB2 Commonstore- Электрондық пошта хабарларын немесе SAP ERP деректерін басқару үшін IBM шығарған DB2 CommonStore Archiving бағдарламалық құралы. DB2 дерекқор платформасына негізделген IBM Information Management портфолиосының бөлігі. DB2 CommonStore – бірнеше өнімдердің бірі, олар… … Wikipedia

Негізгі ұғымдарға шолу және Linux, Unix және Windows платформаларына арналған IBM DB2 дерекқор архитектурасының жалпы сипаттамасы

Мазмұн сериясы:

Бұл мазмұн мақалалар сериясының # бөлігі болып табылады: DB2 LUW шолуы

http://www.?q=%D0%9E%D0%B1%D0%B7%D0%BE%D1%80+DB2+LUW&co=ru&lo=ru&ibm-submit.x=11&ibm-submit.y=13&sn= mh&lang=ru&cc=RU&en=utf&hpp=

Осы сериядағы жаңа мақалаларды күтіңіз.

Бастапқы материалдар және байланыс ақпараты

Марк Баринштейнге мақалалар материалын түзетуге уақыт бөлгені, егжей-тегжейге назар аударғаны және құнды пікірлері үшін ерекше алғыс айтамыз.

Мақала материалының негізгі бөлігі ресми DB2 құжаттамасын еркін түсіндіру болып табылады. Ұсынылған ақпарат қысқа және сонымен бірге мүмкіндігінше анық болу үшін қайта құрылымдалған және қайта тұжырымдалған. Барлық жағдайларда пайдаланылған дереккөздерге сілтемелер мақалалар мәтінінде және «Ресурстар» бөлімінде берілген.

Мақалалар топтамасы аясында келесі мәселелерді қарастыру жоспарлануда:

  1. (сіз қазір оқып жатқан мақала)
  2. (орнату, конфигурациялау, диагностикалау, сақтық көшірме жасау және қалпына келтіру);
  3. кеңейтілген әкімшілік процедуралар (ақпаратты тасымалдау, өнімділікті оңтайландыру, орындау басымдықтарын басқару);
  4. аналитикалық деректер қоймасын құру құралдары;
  5. жадтағы аналитикалық технологиялар – DB2 BLU;
  6. DB2 DPF (Дерекқорды бөлу мүмкіндігі) көмегімен жаппай параллельді аналитикалық деректерді өңдеу;
  7. таратылған дерекқорлар (жұмбақ конфигурациялары, деректерді репликациялау және деректерге федеративтік қол жеткізу);
  8. Ақауларға төзімділік пен масштабтауға арналған DB2 pureScale кластерлеу мүмкіндіктері.

Тиісті материалдар дайындалған сайын сериядағы мақалалар жарияланатын болады.

DB2 өнімдер тобы

«DB2» атауын IBM компаниясы бір-бірінен олар қолданылатын аппараттық және бағдарламалық платформалардың құрамы бойынша да, функционалдығы, архитектурасы және технологиялық мүмкіндіктері бойынша да ерекшеленетін өнімдердің тұтас тобы үшін қолданады. Бұл айырмашылықтар DB2 отбасы өнімдерінің көпшілігінің олар іске қосылатын операциялық жүйелердің мүмкіндіктерімен, сондай-ақ сол операциялық жүйелердің ерекшеліктерімен тығыз интеграциясына байланысты.

Қазіргі уақытта DB2 өнімдер тобына мыналар кіреді:

  • Linux, Unix және Windows жүйесіне арналған DB2, немесе DB2 LUW - Linux (RedHat, SuSE, Ubuntu), UNIX (AIX, HP-UX, Solaris) және басқарылатын жүйелерге арналған ДҚБЖ. Microsoft Windows, осы мақала және осы сериядағы басқа мақалалар арналған;
  • z/OS үшін DB2- IBM System z негізгі фреймдерінде пайдаланылатын z/OS операциялық жүйесіне арналған ДҚБЖ;
  • VSE және VM үшін DB2 сервері- IBM System z негізгі фреймдерінде пайдаланылатын z/VM және z/VSE жұмысына арналған ДҚБЖ;
  • i үшін DB2- IBM Power платформасында қолданылатын System i операциялық жүйесіне арналған ДҚБЖ.

Көрсетілген ДҚБЖ-ның әрқайсысы сәйкес операциялық жүйелерде ең тиімді жұмыс істеу үшін архитектуралық түрде бейімделген және өзінің арнайы құралдары мен басқару құралдарын қамтиды.

Әртүрлі DB2 отбасылық ДҚБЖ құжаттамасында қолданылатын терминология біркелкі емес және бірдей терминдер DB2 әртүрлі нұсқалары үшін әртүрлі мағынаға ие болуы мүмкін: мысалы, «деректер қоры» және «кесте кеңістігі» терминдерінің DB2 LUW және DB2 үшін әртүрлі мағыналары бар. z/OS үшін осы ДҚБЖ түрлері арасындағы архитектуралық айырмашылықтарға байланысты.

Осылайша, DB2-ге арналған ақпараттық ресурстармен жұмыс істегенде, шатасуды және ықтимал қателерді болдырмау үшін отбасы өнімдерінің қайсысы талқыланып жатқанын нақты ажырату қажет.

Ескірген мүмкіндіктер DB2LUW

Қандай да бір түрде DB2 LUW өнімі 1989 жылдан бері нарықта (OS/2 1.10 Extended Edition операциялық жүйесі шығарылған жылы, оның құрамына Database Manager құрамдас бөлігі – яғни реляциялық ДҚБЖ негіз болған. DB2 LUW).

Өнімнің ұзақ дамуы барысында бастапқыда жасалған кейбір функциялар қайта ойластырылып, басқа іске асырумен ауыстырылды немесе қажеттіліктің болмауына байланысты өнімнен толығымен алынып тасталды. Сондықтан, DB2 ескі нұсқалары үшін дайындалған материалдармен жұмыс істегенде (мысалы, 9.7 нұсқасы), осы материалдарда сипатталған кейбір мүмкіндіктер DB2 жаңа нұсқаларында (мысалы, 10.5 және 11.1) ауыстырылуы мүмкін екенін ескеріңіз. Ескірген және ауыстырылған функциялар туралы толық ақпарат бөлімінде берілген.

Әкімшілер мен әзірлеушілер үшін ең маңызды өзгерістер мыналарды қамтиды:

  • ескірген графикалық басқару құралдарын «Басқару орталығы», «Тапсырмалар орталығы» және бірқатар басқаларын тегін IBM Data Studio пакетінің функцияларымен, сондай-ақ IBM Data Server Manager тегін шығарылымында қамтылған құралдардың функцияларымен ауыстыру өнім;
  • бұрынғы басқару құралдары үшін қажет болатын DB2 әкімшілік серверінің (DAS) ескіруі;
  • DB2 Governor және Query Patroller жұмыс жүктемесін басқару құралдарын DB2 Workload Manager (DB2 WLM) функциясымен ауыстыру.

Осы мақалалар топтамасын дайындау мақсаты

IBM DB2 шолу мақалаларының сериясын жазудың негізгі мақсаты осы тақырып бойынша орыс тіліндегі материалдардың жетіспеушілігін толтыру болып табылады. Шынында да, құжаттаманың маңызды бөлігінің орыс тіліне аудармаларының және DB2 қол жетімді кітаптарының болуына қарамастан, қызығушылық танытқан оқырмандарға DB2 мүмкіндіктері туралы түсінік алуға мүмкіндік беретін қолжетімді шолу ақпараты әлі де жоқ. функционалдық және басқару ерекшеліктерінде.

Дегенмен, автордың DB2 отбасындағы барлық өнімдерге шолу жасау ниеті емес («DB2 өнімдер тобы» бүйірлік тақтасын қараңыз), оның орнына Linux, Unix және DB2 нұсқасына назар аудару жоспарлануда. Windows операциялық жүйелері - яғни DB2 LUW өнімінде.

DB2-мен жұмысты бастауға арналған практикалық нұсқаулыққа қызығушылық танытқан оқырмандар үшін мен сізге орыс тіліне аударылған еркін таратылатын «» кітабын қарауды ұсынамын. Бұл кітап кітапта сипатталған DB2 9.7 нұсқасымен және жаңарақ DB2 нұсқаларымен (10.5 және 11.1) жұмысты бастауды жеңілдететін жалпы DB2 бағдарламалық құралының әрекеттерінің көптеген мысалдарын береді. -мен жұмыс істегенде ағымдағы нұсқалар бағдарламалық қамтамасыз ету DB2, 9.7 нұсқасындағы кейбір функциялардың ескіргенін және өнімнің жаңа нұсқаларында қолдау көрсетілмейтінін ескеріңіз («Есірілген DB2 LUW мүмкіндіктері» бүйірлік тақтасын қараңыз).

DB2 LUW функциясы

IBM DB2 серверде ақпаратты сақтау және жергілікті немесе желі арқылы дерекқорларға қосылатын клиент қолданбалары бар қазіргі уақытта жалпы қабылданған реляциялық ДҚБЖ клиент-сервер архитектурасын пайдаланады.

Параллельді қолданбалардан деректерге бір мезгілде қол жеткізуді қамтамасыз ету үшін DB2 стандартты ACID кепілдіктерін (атомдық, тұрақтылық, оқшаулау, төзімділік) қамтамасыз ету үшін құлыптау және транзакция журналына негізделген транзакция механизмін пайдаланады. Бұл механизм максималды өнімділікті, сенімділікті қамтамасыз ету және қолданбаны орындау кідірістерін азайту үшін эволюцияның ұзақ жолын өтті.

DB2 стандартты тілді қоса, қолданба деректеріне қол жеткізу үшін барлық жалпы салалық стандарттарға қолдау көрсетеді SQL сұраулары, ODBC және JDBC интерфейстері, типтік мәтіндік кесте пішімдерімен жұмыс және т.б. Бұған қоса, DB2 XML, JSON/BSON пішімдерінде жартылай құрылымдық деректерді сақтау және олармен жұмыс істеу үшін кеңейтілген мүмкіндіктерді қамтиды. Сақталған процедураларды әзірлеу үшін DB2 әртүрлі процедуралық тілдерге қолдау көрсетеді, соның ішінде:

  • DB2 тілінің SQL PL стандарты,
  • Oracle ДҚБЖ қолданылатын SQL/PL тілі,
  • бойынша «сыртқы» сақталатын процедураларды әзірлеу мүмкіндігі Java тілдері, C, C++ және COBOL.

DB2-нің айрықша ерекшеліктері:

  • тек қолда бар есептеу ресурстарымен шектелген ауқымдылық және есептеу ресурстарын барынша үнемді пайдалану;
  • объектілер (кестелер, көріністер) контекстіндегі ақпаратқа қол жеткізуді түйіршікті түрде шектеу мүмкіндігін қамтамасыз ететін, сондай-ақ қол жеткізуді міндетті басқару моделін іске асыратын қуатты кірістірілген дифференциялау және қол жеткізуді басқару құралдары;
  • деректердің сақтық көшірмесін жасау және қалпына келтірудің кеңейтілген интеграцияланған жүйесі;
  • «классикалық» аналитикалық деректер қоймаларын құру технологияларының толық жиынтығының болуы (кестелерді бөлімдерге бөлу, материалдандырылған көріністер, деректерді кэштеу және кестелер мен индекстерді сканерлеуді оңтайландыру, күрделі сұраныстарды орындаудағы «ішкі» параллелизм және т.б.);
  • DB2 дерекқорын бөлу мүмкіндігіне (DB2 DPF) негізделген байланыс желісі арқылы қосылған бірнеше серверлерден жаппай параллельді аналитикалық деректерді өңдеу (MPP) конфигурацияларын құруға қолдау көрсету;
  • ортақ дискілерде сақталған деректермен DB2 pureScale кластер конфигурацияларының максималды ақауларға төзімділігі және сызықты масштабтауы;
  • Дерекқор құрылымын қолмен оңтайландыруды қолданбай, қазіргі заманғы жадтағы «бағандық» аналитиканы қолдауды жүзеге асыратын DB2 BLU технологиясы.

Басқа ДҚБЖ түрлерінен (ең алдымен Oracle Database) қолданбаларды тасымалдауды жеңілдету үшін DB2 қажетті деректер түрлерін, сақталған процедураларды және стандартты жүйе көріністерін қолдауды қамтитын кеңейтілген үйлесімділік құралдарын ұсынады.

DB2 LUW өнімінің негізгі функциялардың бір жиынтығымен біріктірілген және бір-бірінен пайдаланылған есептеу ресурстарында шектеулердің болуымен және кеңейтілген функционалдылықты қолдауымен ерекшеленетін бірнеше шығарылымдары бар. Ақысыз қол жетімді DB2 Express-C шығарылымын өнімді бағалау, үйрену және тіпті шағын өндірісті орналастыру үшін пайдалануға болады. DB2 LUW әртүрлі басылымдарының функционалдығы мен ресурстық шектеулері «» мақаласында егжей-тегжейлі сипатталған.

Мәліметтер қоры серверінің құрылымы

DB2 дерекқор сервері — DB2 серверінің бағдарламалық құралы (DB2 қозғалтқышы) орнатылған және құрылымдық ақпаратты басқару қызметтерін ұсынатын компьютер.

Қолданбалар арқылы DB2 қызметтеріне қол жеткізу DB2 серверімен қолдау көрсетілетін қолданба қосылым әдістеріне (ODBC, JDBC, OLE DB, ADO, CLI және басқа әдістерді қоса) сәйкес байланысатын DB2 клиенттік бағдарламалық құралымен (IBM деректер сервері драйверінің бумасы) қамтамасыз етіледі. . Көп жағдайда қажетті клиенттік бағдарламалық құрал DB2 серверімен орнатылып, дерекқор серверінде тікелей орналастырылған қолданбаларға DB2 серверіне қосылуға мүмкіндік береді.

DB2 дерекқор сервері әртүрлі бағдарламалық құрал нұсқалары мен орнату каталогтары бар DB2 бағдарламалық құралының бірнеше көшірмелерін орналастыра алады. DB2 бағдарламалық құралының бірнеше көшірмелері олардың арасында ресурс қақтығыстары болмаса (соның ішінде жеткілікті серверлік есептеу ресурстары және операциялық жүйенің логикалық ресурстары бойынша қайшылықтар болмаса: желі атаулары, порт нөмірлері, файлдық жүйе каталогтары және т.б.) бір серверде тәуелсіз болуы мүмкін. қосулы.).

ДҚБЖ қызметтерін тікелей қамтамасыз етуді DB2 дерекқор менеджері (DB2 DBM) құрамдас бөлігі қамтамасыз етеді. Әрбір көшірмеде DB2 дерекқор реттеушісінің бірнеше даналары немесе қысқаша айтқанда, DB2 даналары болуы мүмкін. Дана дерекқорлар жасалатын және қолданбалар іске қосылатын тәуелсіз орта болып табылады. Әрбір DB2 данасы өзінің конфигурациясына ие және нақты дерекқорлар жинағына қатынасты қамтамасыз етеді. DB2 даналары бір физикалық немесе виртуалды серверде бірнеше даналарды іске қосу арқылы қойылған ресурс шектеулерін қоспағанда, бір данада әрекеттерді орындау басқаларға әсер етпейтін мағынада тәуелсіз.

DB2 қызметтерін іске қосу және тоқтату даналық деңгейде орындалады, яғни. әрбір DB2 данасы жұмыс істеп тұрған немесе тоқтатылған күйде болуы мүмкін. DB2 данасының параметрлері оның ресурс шектеулерін анықтай алады (мысалы, жадты пайдалану тұрғысынан). DB2 данасының ресурстары данада бар дерекқорларды қолдау үшін пайдаланылады.

Мәліметтер қоры – бұл бір ақпарат массивін (кестелер, көріністер, индекстер және т.б.) құрайтын объектілердің жиынтығы. Дерекқорлар тәуелсіз нысандар болып табылады және сондықтан әдетте нысандарды басқа дерекқорлармен бөліспейді (ерекшелік деректерге қол жеткізу федерация механизмдерін пайдаланатын таратылған дерекқор конфигурациялары болуы мүмкін).

Мәліметтер қоры серверінің құрылымының схемалық мысалы суретте көрсетілген.


Көптеген жағдайларда DB2 дерекқор серверінде жалғыз болады орнатылған көшірмеБір дерекқорға қызмет көрсететін жалғыз данасы бар DB2. Бұл конфигурациямен барлық дерекқор серверінің ресурстары жалғыз DB2 дерекқорын іске қосу үшін пайдаланылады.

Дерекқор сервері жағында қосылған қолданбалардан сұрауларға қызмет көрсетуді DB2 агенттері деп аталатындар орындайды. DB2 данасында әрбір қосылған қолданба үшін қажет болған жағдайда бірнеше қосымша (көмекші) агенттерді іске қоса алатын үйлестіруші (бастапқы) агент іске қосылады. Техникалық тұрғыдан әрбір агент орындаудың бөлек ағыны немесе (DB2 ескі нұсқалары үшін) оны іске қосу үшін қажетті байланысты ресурстары бар бөлек операциялық жүйе процесі болып табылады.

DB2 конфигурация опциялары

DB2 сервер конфигурациясын төрт түрлі деңгейде орнатуға болады:

  • Қоршаған ортаның айнымалылары;
  • DB2 профиль тізілімі;
  • дерекқор менеджерінің конфигурация файлы (DBM CFG);
  • дерекқор конфигурация файлы (DB CFG).

Қоршаған ортаның айнымалылары серверлік операциялық жүйе деңгейінде және операциялық жүйе арқылы орнатылады. Windows ОЖ үшін бұл айнымалылар шын мәнінде сервер үшін жаһандық болып табылады, Unix және Linux отбасыларының ОЖ үшін олардың арнайы орта айнымалы параметрлерін әрбір данаға орнатуға болады.

DB2 профиль тізілімінің параметрлерін операциялық жүйе деңгейінде (жаһандық) немесе дана деңгейінде орнатуға болады, бұл ретте даналық деңгей параметрлері амалдық жүйе деңгейінде орнатылғандарды қайталайды. DB2 профиль тізілімінің мәндерін қарау және орнату db2set пәрмені арқылы орындалады.

Дерекқор реттеушісінің конфигурация файлының опциялары даналық деңгейінде анықталады, ал дерекқор конфигурациясының опциялары дерекқор деңгейінде анықталады.

Көптеген параметрлер динамикалық, яғни енгізілген өзгерістер дереу күшіне енеді; дегенмен, өзгерту үшін дананы тоқтатуды және бастауды талап ететін параметрлер бар. Мұны пәрмен жолында db2stop және db2start пәрмендері арқылы жасауға болады. Барлық қолданбалар дананы тоқтатудан бұрын жабылуы керек. Дананы тоқтатуға мәжбүрлеу үшін db2stop force пәрменін пайдалануға болады.

Дерекқор менеджерінің конфигурация файлы данаға және оның құрамындағы барлық дерекқорларға әсер ететін параметрлерді қамтиды. Дерекқор менеджерінің конфигурация файлын пәрмен жолы (GET DBM CFG және UPDATE DBM CFG пәрмендері) және IBM Data Studio арқылы қарауға немесе өзгертуге болады.

Дерекқор конфигурациясының файлы белгілі бір дерекқорға әсер ететін опцияларды қамтиды. Дерекқор конфигурациясының файлын пәрмен жолы (GET DB CFG және UPDATE DB CFG пәрмендері) және IBM Data Studio арқылы қарауға немесе өзгертуге болады.

Қолдау көрсетілетіндердің толық сипаттамасы, сондай-ақ ресми DB2 құжаттамасында берілген.

Мәліметтерді сақтауды ұйымдастыру

DB2 ішіндегі ең кіші физикалық сақтау бірлігі бет. Рұқсат етілген бет өлшемдері: 4K, 8K, 16K және 32K. Дерекқор нысаны туралы ақпарат (кесте жазбалары және индекс жазбалары сияқты) беттерде орналастырылады.

Таңдау қосымша орындеректерді сақтауға арналған беттер топтары бойынша бөлінеді, олар шақырылады көлемдер. Кеңістік деңгейінде қосымша кеңістікті бөлу әрекеттерін орындау жазба кірістірулері мен жаңартуларының өнімділігін жақсартады.

DB2 дерекқорларындағы ақпаратты сақтау деп аталатын нысандарға ұйымдастырылған кесте кеңістігі. Кесте кеңістігі – дерекқор серверінің файлдық жүйесінде орналастырылған ақпаратты сақтауға арналған контейнерлердің атаулы жиыны.

Әрбір кесте кеңістігі үшін бір немесе бірнеше кесте кеңістігі жасалады. контейнерлер(файлдық жүйедегі файлдар немесе каталогтар) ақпаратты сақтауға, сондай-ақ деректерді кэштеу үшін бет өлшемі мен аймағын (буфер пулы, төменде қараңыз), сондай-ақ бірқатар басқа параметрлерді орнатуға арналған.

Кесте кеңістігінің келесі түрлері бар:

  • кәдімгі: пайдаланушы кестелері мен индекстерін орналастыру үшін қолданылады;
  • үлкен: пайдаланушы кестелері мен индекстерін және үлкен нысан (LOB) деректерін орналастыру үшін пайдаланылады және XML деректері. DB2 қазіргі нұсқаларында әдеттегі кестелердің орнына әдепкі бойынша үлкен кесте кеңістіктері пайдаланылады;
  • уақытша: сұрауларды (жүйенің уақытша кесте кеңістіктері) және қолданбалармен анықталған уақытша кестелерді (пайдаланушының уақытша кесте кеңістіктері) орындау кезінде уақытша ақпаратты сақтау үшін қолданылады.

Кесте кеңістігінің түрі ол жасалғанда көрсетіледі және кесте кеңістігін жою және қайта жасау арқылы ғана өзгертілмейді.

Кесте кеңістігі кесте кеңістігі жасалған кезде орнатылатын басқару түрі бойынша да жіктелуі мүмкін:

  • жүйемен басқарылатын кесте кеңістіктері (SMS, System Managed Storage) – каталогтар кесте кеңістігі контейнерлері ретінде пайдаланылады, деректер файлдары сақтау объектілерін каталогтарға орналастыру үшін жасалады. Кеңістік алдын ала бөлінбейді, файлдар динамикалық түрде өседі. Анықталған кезде контейнерлер жасалған уақытта бекітіледі;
  • деректер қорымен басқарылатын кесте кеңістіктері (DMS, Database Managed Storage) – алдын ала бөлінген файлдар кесте кеңістігі контейнерлері ретінде пайдаланылады, контейнерлерді қосуға, жоюға немесе өзгертуге болады;
  • автоматты түрде басқарылатын кесте кеңістігі (автоматты сақтау) - кесте кеңістігінің түріне байланысты контейнердің түрі мен орнын автоматты түрде анықтау (тұрақты және үлкен кесте кеңістігіне арналған DMS, уақытша кесте кеңістігі үшін SMS). Кесте кеңістігін құру кезінде контейнерлердің нақты анықтамалары көрсетілмейді, қажетті контейнерлер автоматты түрде жасалады. Қолданыстағы контейнерлердің өсуі және жаңа контейнерлердің қосылуы толығымен DB2 арқылы бақыланады.

Кесте кеңістігін автоматты түрде басқаруды қосу үшін алдымен автоматты сақтау қосылған (бұл әдепкі) дерекқорды жасап, оған сақтау жолдары жинағын байланыстыру керек.

Әдепкі бойынша, DB2 контейнерлер арасында "арнайы" ауқымдарға ретімен жазады. Мысалы, бет өлшемі 4 КБ және кеңейтім өлшемі 8 бет болатын кесте кеңістігі болса және DMS кесте кеңістігінде 3 дереу контейнерді пайдалансаңыз, бұл 32 КБ деректер (4 КБ x 8 бет extent = 32 KB) келесіге жазуды бастамас бұрын бір дискіге жазылады.

DB2 10.1 нұсқасынан бастап деректерді сақтауды басқаруды жеңілдету үшін жаңа тұжырымдама енгізілді − сақтау тобы(сақтау тобы). Сақтау тобы - деректерді сақтау үшін пайдалануға болатын ДҚБЖ серверінің файлдық жүйесіндегі жолдардың атаулы жиыны. Дерекқордағы сақтау топтарының құрамы әдетте ақпаратты сақтау үшін қолжетімді сақтау құрылғыларының түрлерінің жиынын анықтайды. Дерекқор жасалған кезде әдепкі сақтау тобы әрқашан дерекқорда автоматты түрде жасалады.

Әрбір автоматты түрде басқарылатын кесте кеңістігі сәйкес кесте кеңістіктерінде сақталған деректердің физикалық орнын анықтайтын құрылған сақтау топтарының бірімен байланысты. Кесте кеңістігін бір сақтау тобынан екіншісіне ALTER TABLESPACE ... ПАЙДАЛАНУ STOGROUP ... командасы арқылы жылжытуға болады.

Транзакцияларды тіркеу

IBM DB2 LUW, ACID кепілдіктерін қамтамасыз ететін көптеген басқа заманауи реляциялық ДҚБЖ сияқты, осы талаптарды орындаудың негізгі механизмдерінің бірі ретінде транзакция журналын пайдаланады.

DB2 орындайтын деректерді өзгерту әрекеттері транзакция журналында журнал жазбаларының қатары ретінде жазылады. Әрбір дерекқор дискідегі файлдар тізбегі болып табылатын өзінің транзакция журналын жүргізеді. Бір файлдың өлшемі LOGFILSIZ параметрімен анықталады, бастапқы жасалған файлдар саны LOGPRIMARY параметрімен анықталады. DB2 қажетінше қосымша журнал файлдарын жасай алады, жасауға болатын журнал файлдарының ең көп саны LOGSECOND параметрімен басқарылады.

Мәліметтер операциялық журналға жедел жадтағы арнайы буфер арқылы жазылады. Буфердің мазмұны буфер толтырылғанда, сондай-ақ транзакциялар расталғанда немесе тоқтатылғанда (бағдарлама пәрмені арқылы немесе қолданбамен қосылымды қалыпты емес жабу кезінде) дискіге (транзакция журналының файлдарына) тазартылады.

Бұзылудан кейін деректерді қалпына келтіру үшін қажет транзакциялық журнал файлы белсенді журнал файлы деп аталады. Белсенді транзакция журналының файлдары DB2 дерекқор менеджеріне барлық уақытта қолжетімді болуы керек. Транзакциялық журнал файлдарының қолжетімділігі ДҚБЖ өнімділігін қамтамасыз ету үшін маңызды болғандықтан, екі файлдық жүйеде транзакциялық журналдарды көшіру механизмі қамтамасыз етілген (LOGMIRROR параметрімен конфигурацияланған).

Егер қате таңдауағымдағы жүктеме деңгейіне сәйкес келмейтін транзакциялар журналының файлдарының өлшемі мен саны, жасауға рұқсат етілген журнал файлдарының жеткіліксіз саны немесе дискідегі бос орынның болмауы салдарынан транзакциялар журналы толу жағдайлары болуы мүмкін. Дерекқор параметрлеріне байланысты (BLK_LOG_DSK_FUL параметрін қараңыз) қолданбаларға тиісті қате туралы хабар қайтарылуы мүмкін немесе әкімші жағдайды шешкенше өңдеу тоқтатылуы мүмкін.

Сондай-ақ, транзакция журналының толып кету жағдайлары деректерді өзгерту әрекеттерін орындайтын ұзақ орындалатын транзакциялар болған кезде орын алуы мүмкін. Ондай болса да ұзақ мерзімді транзакциядерекқорға бір ғана кішігірім өзгертуді орындайды, содан кейін ол ұзақ уақыт бойы бекітілмейді, сәйкес транзакция журналы файлы белсенді болып қалады және оны қайта пайдалану мүмкін емес.

DB2 транзакциялық журналға арналған жұмыстың екі негізгі режимі бар: айналмалы журнал және мұрағаттық журнал. Айналмалы журнал жүргізу режимінде DB2 транзакциялық журнал файлдарының жасалған жиыны арқылы айналады. Мұрағатты тіркеу режимінде DB2 LOGARCHMETH1 және LOGARCHMETH2 параметрлері арқылы көрсетілген әдістерді пайдаланып, транзакция журналының файлдарын мұрағатқа көшіреді.

Дөңгелек журнал жүргізу режимі ДҚБЖ сервері бұзылған жағдайда деректер қорының тұтастығын қалпына келтіруді қамтамасыз етеді. Мұндай дерекқордың сақтық көшірмесін жасау барлық қолданбаларды өшіргеннен кейін ғана мүмкін болады (яғни, пайдаланушының кіруін тоқтата тұрумен). Деректерді қалпына келтіру сақтық көшірмерезервтік көшірме жасау кезінде дерекқорды күйге келтіру арқылы ғана мүмкін.

Мұрағатты тіркеу режимі сонымен қатар ДҚБЖ сервері бұзылған жағдайда дерекқордың тұтастығын қалпына келтіруді қамтамасыз етеді. Бұған қоса, пайдаланушының кіруін үзбей дерекқордың сақтық көшірмесін жасауға және сақтық көшірмеге белсенді журнал файлдарын (деректер тұтастығын қалпына келтіру үшін қажет) қосуға болады. Сақтық көшірмеден деректерді қалпына келтіруді сақтық көшірме жасалғаннан бері дерекқорға енгізілген өзгерістерді қолдану және дерекқорды өткен уақытта таңдалған уақытта (бірақ сақтық көшірме жасалған уақыттан ерте емес) күйге келтіру арқылы толықтыруға болады.

Мұрағат журналын жүргізу режимі мұрағаттау әрекеттерін орындау үшін қосымша ресурстарды қажет етеді, соның ішінде ұлғайтылған енгізу/шығару және қосымша дискілік сақтау орны архивтік файлдартранзакция журналы.

Мәліметтерді кэштеуді ұйымдастыру

Орындалған енгізу/шығару көлемін азайту үшін DB2 басқа заманауи реляциялық ДҚБЖ сияқты кесте кеңістігінде орындалатын оқу және жазу кэштері. Кэштеу буфер пулдары деп аталатын ЖЖҚ аумақтары арқылы жүзеге асырылады. DB2 бет өлшемі, өлшемі және автоматты өлшемді басқару жалаушасы бар бірнеше әртүрлі буфер пулдарын (CREATE BUFFERPOOL пәрмені арқылы жасалған) анықтай алады. Әрбір кесте кеңістігі белгілі бір буфер пулымен салыстырылады және бір буфер пулын бірнеше кесте кеңістігі арасында ортақ пайдалануға болады.

Оқу әрекетін орындаған кезде ол алдымен буфер пулындағы деректері бар қажетті бетті іздейді. Қажетті бет табылса, деректер буфер пулынан оқылады, әйтпесе бет дискіден буфер пулына жүктеледі. Бетке кірудің сызықтық (болжауға болатын) сипаты анықталғанда, буферлік пулға беттерді асинхронды алдын ала алу механизмі қамтамасыз етілген. Алдын ала алу механизмі көп жағдайда асинхронды режимде оқуды орындау арқылы дискіден қажетті деректерді оқу әрекеттерін күту уақытын қысқартады.

Жазу әрекеті орындалғанда, бетті реттеу буфер пулында тікелей орындалады. Бұл жағдайда бет синхронды режимде дискіге жазылмайды, ал деректердің қауіпсіздігі транзакциялық тіркеу механизмімен қамтамасыз етіледі. Кесте кеңістігінің өзгертілген беттері дискіге асинхронды түрде жазылады, фон, және ол қалыптан тыс (дұрыс емес) жабылған кезде дерекқордың күйін қалпына келтіру үшін қажет болуы мүмкін жұмыс көлемін ақылға қонымды азайтуды қамтамасыз етеді. Дерекқорды дұрыс жабу (мысалы, ДҚБЖ серверін жүйелі түрде өшіру кезінде) барлық буферлік пулдардың барлық өзгертілген беттерінің дискіге жазылуын қамтамасыз етеді.

ЖЖҚ пайдалану

DB2 сақтау үлгісі DB2 данасында, дерекқорда, қолданбада және агент деңгейлерінде әртүрлі сақтау аймақтарынан тұрады.

DB2 сақтау аумақтарының толық сипаттамасын төменде қараңыз қысқаша сипаттамасыәртүрлі салалардағы тағайындаулар.

Негізгі DB2 сақтау аумақтарының тізімі төмендегі суретте көрсетілген (бастапқыда -дан алынған).

ДҚБЖ данасы пайдаланатын жалпы жад мыналарды қамтиды:

  • Monitor Heap – операциялар мен күйді бақылауға арналған жад аймағы, өлшемі MON_HEAP_SZ параметрімен реттеледі;
  • FCM буферлері – үйлестіруші агент пен оның қосалқы агенттері арасындағы өзара әрекеттесу үшін, сондай-ақ бөлінген деректер қорларында ішкі өзара әрекеттесулерді қамтамасыз ету үшін жады аймағы;
  • Аудит буфері – аудит жазбалары аудит журналына тазартылмас бұрын орналастырылатын жад аймағы.

Мәліметтер қоры деңгейінде мыналарды ажырату әдеттегідей:

  • әр түрлі кэштеу аймақтары мен құлыптау аймағын қамтитын, көбінесе «Өнімділік жады» аймағы деп аталатын ғаламдық деректер қоры аймағы;
  • дерекқор қосылымдарына қызмет көрсететін агенттердің әртүрлі жұмыс жады аймақтарын қамтитын, жиі «Функционалды жад» деп аталатын қолданба деректер аймағы.

Жаһандық деректер қорының аймағы келесі негізгі компоненттерден тұрады:

  • Буферлік бассейндер – буферлі бассейндер, т.б. кесте кеңістігінің деректерін кэштеу аймақтары;
  • Құлыптар тізімі – өлшемі LOCKLIST параметрімен басқарылатын құлыптар туралы ақпаратты сақтауға арналған аймақ;
  • Пакет кэші – сұранысты орындау жоспарларын кэштеу аймағы, өлшемі PCKCACHESZ параметрімен реттеледі;
  • Каталог кэш – жүйелік каталогты кэштеу аймағы, ол барлық мәліметтер қоры объектілерінің сипаттамасын қамтиды, өлшемі CATALOGCACHE_SZ параметрімен реттеледі;
  • Утилита үйіндісі – дерекқорға техникалық қызмет көрсету операцияларын орындауға арналған ЖЖҚ (соның ішінде сақтық көшірме жасау және қалпына келтіру операциялары), өлшемі UTIL_HEAP_SZ параметрімен реттеледі;
  • Деректер базасының үйіндісі – дерекқор операцияларына қызмет көрсетуге арналған ЖЖҚ (соның ішінде транзакция журналының буфері және жүйелік каталогқа қол жеткізуді жылдамдату үшін кэш, сонымен қатар дерекқор деңгейіндегі аудит буфері), өлшемі DBHEAP параметрімен реттеледі.

Жаһандық дерекқор аймағының жалпы өлшемі DATABASE_MEMORY параметрімен шектеледі.

Қолданба деректер аймағы мыналарды қамтиды:

  • Қолданбаның жаһандық жады – қолданба сұрауларын өңдеу кезінде ортақ жад аймақтары, максималды сома APPL_MEMORY параметрімен реттеледі;
  • Агенттің жеке жады - қосылған қолданбаларға қызмет көрсететін жеке агенттердің жұмысы үшін пайдаланылатын жеке жад аймақтары.

Қосымша, қолданба жағында іске қосу үшін DB2 драйвері үшін бөлінген жад аумақтарын бөлуге болады. Жергілікті қолданбалар үшін (дерекқор реттеушісіне қосылу үшін желілік қатынасты емес, IPC пайдаланатындар) сіз орнатқан DB2 параметрлері ЖЖҚ қанша бөлінгенін басқарады (негізінен ASLHEAPSZ параметрі).

Сұрыптау операцияларын орындау кезінде жедел жадты басқару

ДҚБЖ операцияларының көптеген түрлері мәліметтерді сұрыптауды қажет етеді, сондықтан сұрыптау үшін қолданылатын жедел жадты басқаруға ерекше көңіл бөлінеді.

Сұрыптау аймағын толығымен жедел жадта бөлу мүмкін болмаса, сұрыптауға арналған деректер жүйелік кестенің уақытша кеңістігіне орналастырылады. Осындай үлкен сұрыптау операцияларын қажет ететін сұраулардың өнімділігі айтарлықтай нашарлауы мүмкін.

Сұрыптау үшін жедел жадтың бөлінуін басқаратын параметрлер:

  • SORTHEAP – сұрыптау операциясы үшін жад шегі;
  • SHEAPTHRES – сұрыптау операциясы үшін бөлінген агенттің жеке жадының өлшем шегі;
  • SHEAPTHRES_SHR – кез келген уақытта сұрыптау операцияларын (барлық тұтынушылар бойынша) орындау үшін пайдалануға болатын жалпы жедел жад көлемінің шегі.

DB2 сұрыптау жадын басқарудың үш негізгі үлгісін қолдайды:

  • Ортақ сұрыптау үлгісі (ортақ сұрыптау) – әдепкі бойынша пайдаланылады, SHEAPTHRES параметрін 0-ге орнатуды білдіреді. Сұрыптау үшін ЖЖҚ бөлу дерекқордың ғаламдық аймағынан жүзеге асырылады.
  • Жеке сұрыптау үлгісі (жеке сұрыптау) - SHEAPTHRES параметрі нөлге тең емес және конфигурацияланған ортақ сұрыптау жады болмаған кезде пайдаланылады. Сұрыптау үшін жедел жадты бөлу қолданбалы деректер аймағынан (дәлірек айтқанда, агенттерге жататын жеке аймақтардан) жүзеге асырылады.
  • Гибридті сұрыптау моделі (гибридті сұрыптау) - SHEAPTHRES параметрі нөлге тең емес және конфигурацияланған ортақ сұрыптау жады болғанда қолданылады. Ортақ сұрыптау жадын пайдалануды талап ететін операциялар деректер қорының ғаламдық аймағында жадты бөлумен орындалады, басқа сұрыптау операциялары агенттердің жеке аймақтарында жадты бөлумен орындалады.

Сұрыптау операцияларын орындау үшін ортақ (жаһандық) жадты пайдалану бірқатар маңызды артықшылықтарды береді:

  • жедел жадты пайдалану тиімділігін арттыруға мүмкіндік беретін сұрауларды орындау кезінде жедел жадты неғұрлым икемді басқару;
  • үйлестіру агентінің және оның бағынысты DB2 қосалқы агенттерінің сұрыптау жады аймағына бір уақытта қол жеткізуге байланысты сұрыптау алгоритмінің параллель нұсқасын пайдалану мүмкіндігі.

Сұрыптау әрекеттерін орындау кезінде ортақ жадты пайдалануды қосу үшін келесі параметрлердің бірін пайдалануға болады:

  • жалпы сұрыптау аймағы үлгісі SHEAPTHRES параметрін 0-ге орнату арқылы қосылады;
  • операцияларды орындау параллельдігі INTRA_PARALLEL параметрін ИӘ мәніне орнату арқылы қосылады;
  • DB2_WORKLOAD айнымалы мәні ANALYTICS мәніне орнатылған;
  • DB2 Connection Concentrator мүмкіндігі қосылған (әдетте DB2 for z/OS және DB2 for i дерекқорларына қатынасу кезінде пайдаланылады, осы мүмкіндіктің сипаттамасын бөлімнен қараңыз).

Жадты бөлуді автоматты түрде басқару

Қол жетімділік үлкен санЖЖҚ-ның әртүрлі аумақтары және олардың өлшемін реттейтін параметрлер DB2 серверін қолмен баптауға айтарлықтай күш салуы мүмкін. Сондықтан, 9-нұсқадан бастап, IBM DB2 өзін-өзі реттейтін жад менеджерін (STMM, Self-Tuning Memory Manager) пайдалана отырып, әртүрлі аумақтар арасында жедел жадты бөлуді автоматты басқаруды қолдайды.

Жүктеу қосылған кезде, STMM қолжетімді жад ресурстарын дерекқордағы жад тұтынушыларына динамикалық түрде бөледі. STMM өнімділікті оңтайландыру үшін жад конфигурациясының параметр мәндерін және буферлік пулдардың өлшемін реттеу арқылы жұмыс жүктемесінің сипаттамаларын өзгертуге жауап береді. STMM қосу үшін SELF_TUNING_MEM дерекқор конфигурациясының параметрін ON күйіне орнату керек.

Жадты бөлуді автоматты түрде басқару оған нақты рұқсат етілген жад аймақтары үшін жүзеге асырылады. UPDATE DBM CFG және UPDATE DB CFG пәрмендерімен конфигурация параметрінің мәнін орнату кезінде STMM пайдалану үшін АВТОМАТТЫ кілт сөзі параметр мәнінен кейін көрсетіледі. Бұл жағдайда көрсетілген параметрдің сандық мәні бастапқы мән ретінде пайдаланылады, содан кейін STMM әртүрлі тұтынушылар арасында жедел жадты қайта бөле отырып, ағымдағы жүктемені ескере отырып мәндерді мерзімді түрде реттейді.

STMM автоматты басқаруына келесі опциялар үшін қолдау көрсетіледі:

  • INSTANCE_MEMORY — DB2 данасында ЖЖҚ жалпы көлемі;
  • DATABASE_MEMORY – деректер қорының ғаламдық аймақтары;
  • DBHEAP – мәліметтер қорының операцияларына қызмет көрсету аймағы;
  • LOCKLIST – құлыптардағы деректерді сақтау аймағы;
  • MAXLOCKS – құлыптауды күшейтуге ауысу үшін бір қолданбаның құлыптары алатын жадының пайызы;
  • PCKCACHESZ – сұранысты орындау жоспарларының кэштеу аймағы;
  • SHEAPTHRES_SHR – жалпы сұрыптау аймағы;
  • SORTHEAP – бір операция үшін аумақ өлшемін сұрыптау;
  • APPL_MEMORY – функционалды жадының аймағы;
  • APPLHEAPSZ – бір агент пайдаланатын жеке жад шегі;
  • STMTHEAP – SQL және XQuery сұраныстарының компиляторы пайдаланатын аумақ өлшеміне шектеу (әр сұрау бойынша);
  • STAT_HEAP_SZ – RUNSTATS утилитасы құрылыс статистикасы үшін бөлінген және функционалды жад аймағынан бөлінген ЖЖҚ максималды мөлшері.

Мәліметтер қоры объектілерінің түрлері

Бұл бөлім DB2 дерекқор нысандарының түрлерін шолуды қамтамасыз етеді. DB2 дерекқор нысаны түрлерінің толық тізімін және әрбір нысан түрі туралы толық ақпаратты DB2 құжаттамасын қараңыз:

Схема

Схемалар дерекқор нысандарын жинауға арналған аттар кеңістігі болып табылады. Схемалар негізінен мыналар үшін қолданылады:

  • объектілерге меншік құқығын көрсетуді немесе қосымшаға сілтемелерді ұсыну;
  • байланысты объектілерді логикалық топтастыру.

Барлық DB2 дерекқор нысандарында (жалпы синонимдерден басқа) толық жарамды екі бөліктен тұратын атаулар бар; схема осындай атаудың бірінші бөлігі болып табылады:<имя_схемы>.<имя_объекта>

Толық жарамды нысан атауы бірегей болуы керек. Дерекқорға қосылсаңыз және схеманы көрсетпей нысанды жасасаңыз немесе оған қатынассаңыз, DB2 схема атауы ретінде дерекқорға қосылым жасаған пайдаланушы идентификаторын пайдаланады. Сондай-ақ, ағымдағы сеанс үшін схеманы орнату үшін SET SCHEMA операторын пайдалануға болады.

Схеманы жасауды CREATE SCHEMA мәлімдемесін шақыру арқылы анық немесе схема атауын көрсетпей нысанды жасауға бірінші әрекетте жасырын түрде жасауға болады. Соңғы жағдайда схеманы сәтті жасау үшін пайдаланушыға IMPLICIT_SCHEMA рұқсатын беру керек.

Синонимдер дерекқор нысандарының көптеген түрлері үшін жасалуы мүмкін, бұл бастапқы нысандарға басқа атпен (мүмкін басқа схемада орналастырылған) сілтеме жасауға мүмкіндік береді. Синонимдер CREATE SYNONYM / CREATE ALIAS операторы арқылы жасалады. Ол сондай-ақ белгілі бір схемаға байланбаған жалпыға ортақ синонимдермен жұмыс істеуді қолдайды. Жалпыға ортақ синонимдерге қол жеткізу сессияның белгіленген ағымдағы схемасына қарамастан, схеманы көрсетпей жүзеге асырылады. Жалпыға ортақ синонимдер ЖАУАПТЫҚ СИНОНИМ ЖАСАУ / ЖАҒДАЙЫ БІРАҚ АТ ЖАСАУ пәрмені арқылы жасалады.

кестелер

Кесте – бағандар мен жолдарда логикалық түрде ұйымдастырылған өзара байланысты деректер жиынтығы.

Әрбір кесте жолы аталған бағандардың бірдей жиынынан тұрады. Кестені құру кезінде әрбір бағанға кесте жолдарындағы рұқсат етілген баған мәндерін шектейтін деректер түрі тағайындалады (деректер базасының жазбалары) және сәйкес мәндер бойынша мүмкін болатын операциялардың семантикасын анықтайды (салыстыру, сұрыптау, есептеу операцияларын қоса).

Кесте CREATE TABLE командасымен жасалады, ал DROP TABLE командасымен жойылады. Кесте сипаттамасын ALTER TABLE пәрменімен өзгертуге қолдау көрсетіледі, соның ішінде бағандарды қосу және жою, бағандардың деректер түрлерін өзгерту. Кесте сипаттамасын өзгерту бойынша кейбір операцияларды орындағаннан кейін REORG командасын қолданып, оны қайта ұйымдастыру (оған оңтайлы қол жеткізу үшін кестенің физикалық жадын қайта құрылымдау) қажет.

Кесте бағандарын анықтау үшін пайдалануға болатын DB2 кірістірілген деректер түрлерінің жіктелуі төмендегі суретте көрсетілген.

Қолдау көрсетілетін деректер түрінің рұқсат етілген мәндерінің біріне қосымша, баған мәндері бос болуы мүмкін, яғни. бос (NULL) мән. Бағанның нөлдік мәндерді сақтау мүмкіндігі кесте жасалған кезде анықталады.

Суретте келтірілген деректер түрлерінің көпшілігінің басқа заманауи реляциялық ДҚБЖ-да тікелей сәйкестіктері бар және DB2 құжаттамасында егжей-тегжейлі сипатталған. Төменде DB2-ге тән немесе пайдалану қиын болуы мүмкін деректер түрі мүмкіндіктерінің қысқаша сипаттамасы берілген.

Жол деректерімен жұмыс істегенде, кейбір басқа ДҚБЖ түрлеріне қарағанда, DB2 бос жолды (нөлдік ұзындық жолын) және жол түрінің NULL мәнін ажыратады. Бұл мүмкіндікіздеу тәртібіне (IS NULL өрнегі орнына теңдік предикатын пайдалану) және рұқсат етілген баған мәндерінің құрамына әсер етеді (егер NULL мәндеріне тыйым салынса, бағанда бос жолды сақтауға болады).

GRAPHIC, VARGRAPHIC және DBCLOB түрлерінің жол мәндері басқа жол түрлерінен ерекшеленеді, өйткені олар әрқашан UTF-16 кодтауында сақталады. Клиенттік қолданбаның жағынан сәйкес бағандарға қол жеткізген кезде, ДҚБЖ клиент қолданбасы пайдаланатын кодтауға деректерді түрлендіруді қамтамасыз етеді.

DATE (күн) түріндегі бағандарда әдепкі бойынша уақыт белгілері жоқ. Oracle дерекқорының үйлесімділік режимінде DB2 қосымша уақыт атрибуттарын (сағаттарды, минуттарды, секундтарды) DATE бағандарында сақтауды қолдайды.

Қажет болса қамтамасыз етіңіз тиімді жұмысбөлшек бөлігін қамтитын дәл ондық сандармен (мысалы, қаржылық қолданбаларда) DECIMAL мәндерінің нақты көрінісін және FLOAT мәндерін тиімді есептеу мүмкіндігін біріктіретін DECFLOAT деректер түрін пайдалану мағынасы бар.

BLOB деректер түрі дерекқорда құрылымдалмаған екілік ақпаратты (суреттер немесе кеңсе құжаттары сияқты) сақтау мүмкіндігін береді. BLOB мәндерін басқа жазба өрістерімен бірге (егер олардың өлшемі жеткілікті жинақы болуға мүмкіндік берсе) немесе арнайы сақтау нысанында бөлек сақтауға болады. Соңғы жағдайда, жазба мәннің орнына сақталған BLOB мәніне сілтемені қамтиды. CLOB және DBCLOB түрлерінің мәндерін сақтау ұқсас түрде ұйымдастырылған.

XML деректер түрі құрылымдық иерархиялық XML құжаттарының кесте өрістерінде сақтауды қамтамасыз етеді. Сақталған XML құжаттары үшін атрибуттарға қол жеткізу операцияларына (қолданылған кезде XML құжатын талдауды қажет етпей), жеке атрибуттарды индекстеу және басқа мүмкіндіктерге қолдау көрсетіледі.

Кірістірілген деректер түрлеріне қоса, DB2 кірістірілген түрлерге негізделген пайдаланушы анықтайтын деректер түрлерін қолдайды. Пайдаланушы анықтайтын деректер түрлерімен жұмыс істеу DB2 құжаттамасында сипатталған.

Кестені құру кезінде бағандар үшін олардың мәндерін автоматты түрде толтыру ережелерін көрсетуге болады. Автотолтыру бағандарының ерекше жағдайы әрбір кірістірілген жол үшін бірегей сандық мәнді автоматты түрде жасайтын сандық бағандар болып табылатын сәйкестік бағандары болып табылады. Автоматты толтыру екі режимнің бірінде жүзеге асырылуы мүмкін:

  • ƏРҚАШАН ЖАСАЛАТЫН - мəн əрқашан DB2 серверімен орнатылады жəне оны қолданба нақты орнатуы мүмкін емес;
  • Әдепкі бойынша Жасалған - мән DB2 сервері арқылы орнатылады, егер қолданба жазба енгізілген кезде нақты тағайындау мәнін көрсетпесе.

Сондай-ақ, кесте деңгейінде атрибут мәндерінің құрамына шектеулер орнататын шектеулерді анықтауға болады. Келесі шектеу түрлеріне қолдау көрсетіледі:

  • бастапқы кілт (PRIMARY KEY) – бағандар жиынындағы бірегейлік шектеуі, негізінен бір жазбаны іздеу үшін пайдаланылады, кестеде тек бір негізгі кілт болуы мүмкін;
  • бірегейлік шектеуі (UNIQUE) – бағандар жиынындағы қосымша бірегейлік шектеуі;
  • сыртқы кілт (FOREIGN KEY) – сыртқы кілт немесе бірегей шектеу анықталған басқа кестенің бағандарының тіркесімін көрсететін баған мәндерінің жиыны түріндегі сілтеме;
  • тексеру (тексеру) – жазбадағы бір немесе бірнеше бағандардың мүмкін мәндерін бірден шектейтін логикалық шарт.

Шектеу механизмі деректердің анықтамалық тұтастығын қоса алғанда, деректер қорының тұтастығын қамтамасыз етуді және автоматты басқару құралдарын жүзеге асырады («бала» кестелерінің жазбаларының сыртқы кілттері арқылы сілтеме жасалатын жазбалардың «ата-аналық» кестесінде болуын бақылау). Шектеулерді дұрыс пайдалану деректер қорын толтырудың формальды дұрыстығына кепілдік беруге және белгілі бір дәрежеде деректерді түзету кезінде өзіңізді қолданбалы және пайдаланушы қателерінен қорғауға мүмкіндік береді.

Шектеу механизмі деректерді енгізу және жаңарту кезінде қосымша есептеу жүктемесін тудыратындықтан, кейбір жағдайларда оны пайдаланудан әдейі бас тартылып, мәліметтер базасын дұрыс жүргізу жауапкершілігін қолданбаға жүктейді. Сонымен бірге, DB2 кестелер арасындағы қарым-қатынастарды анықтау және сұрауды орындаудың ең тиімді жоспарын таңдау үшін тұтастықты шектеу сипаттамаларын пайдаланады.

Уақытша кестелер

Уақытша қолданба деректерін сақтау үшін DB2 кестелік деректермен жұмыс істеу үшін толық функционалдылықты қамтамасыз ететін, бірақ ағымдағы пайдаланушы сеансының мәтінмәнінде уақытша кесте механизмін қамтамасыз етеді.

Уақытша кестелерге қатынасу жүйелік каталогқа қатынасу қайшылықтарын азайту немесе жою арқылы және жолды құлыптауды, журналға жазуды (кесте жасау режиміне байланысты міндетті емес) және рұқсаттарды тексеруді жою арқылы өнімділікті айтарлықтай жақсартады.

Уақытша кестелер де индекстерді қолдайды, яғни уақытша кестеде кез келген стандартты индексті құруға болады. Сондай-ақ сұрауды оңтайландырушыға қажетті ақпаратты алу үшін осындай кестелер бойынша статистиканы жинауға болады (RUNSTATS пәрменін пайдалану).

Уақытша кестелер пайдаланушының уақытша кесте кеңістігінде орналасады, олар жасалғанға дейін анықталуы керек.

DB2-де уақытша кестелердің екі негізгі түрі бар:

  • жарияланған уақытша кестелер (DGTT - Declared Global Temporary Tables);
  • жаһандық уақытша кестелер жасалды (CGTT - Created Global Temporary Tables).

Жарияланған уақытша кестелер қолданба арқылы пайдаланылатын жадтағы кестелер болып табылады және ол аяқталған кезде автоматты түрде жойылады. Мұндай кестелерге оларды жасаған қолданба ғана қол жеткізе алады және олар DB2 жүйелік каталог кестелерінің ешбірінде сақталмайды.

Әрбір жарияланған уақытша кестеде SESSION схемасы бар; бұл схема оған сілтеме жасау арқылы көрсетілуі керек. Уақытша кестелерді жариялау үшін пайдаланылатын пайдаланушы идентификаторы сол кестелерде толық артықшылықтарға ие болады. Уақытша кестені жариялайтын әрбір қолданбада сол кестенің жеке көшірмесі болады.

DGTT уақытша кестені жариялауға мүмкіндік бергенімен, мұндай кестенің анықтамасын қосылымдар немесе сеанстар арқылы ортақ пайдалану мүмкін емес. Сіз сеансты бастаған сайын ЖАҢАЛЫҚ УАҚЫТТЫ КЕСТЕНІ ЖАРИЯЛАУ мәлімдемесін шығаруыңыз керек.

Жасалған жаһандық уақытша кестелерді (CGTT) пайдалану кезінде уақытша кесте анықтамасын тек бір рет жасау керек, себебі ол DB2 жүйелік каталогында сақталады. Бұл басқа қосылымдар кесте анықтамасын қайта жасаудың орнына пайдалана алатынын білдіреді.

CGTT кестесінің құрылымын бірден қолдануға болатынына қарамастан, әртүрлі қосылымдардан алынған деректер бір-бірінен тәуелсіз және байланыс жабылған кезде жоғалады.

Көрсеткіштер

Индекс – әрқайсысы кесте жолын көрсететін пернелердің реттелген жиыны. Индекстер жолдың бірегейлігін қамтамасыз етеді (яғни алдыңғы бөлімде талқыланған бірегей шектеулерді жүзеге асырады) және өнімділікті жақсартады. Төменде индекстер үшін анықтауға болатын кейбір сипаттамалар сипатталған:

  • индекстер баған мәндерінің өсу немесе кему ретімен салынуы мүмкін;
  • индекс кілттері бірегей немесе бірегей емес болуы мүмкін;
  • индекстерді бірнеше бағандарға салуға болады (мұндай индекстер біріктірілген деп аталады);
  • егер индекс пен кесте деректері бір индекс тізбегі бойынша топтастырылса, мұндай индекс кластерленген (CLUSTERED INDEX) деп аталады.

Индекс жасау CREATE INDEX мәлімдемесі арқылы, жою DROP INDEX мәлімдемесі арқылы қамтамасыз етіледі. Индексті құру кезінде оның түрі (бірегей/бірегей емес) және индексті құруға арналған бағандардың құрамы көрсетіледі.

DB2 сұрауды орындауды оңтайландыру үшін автоматтандырылған индексті таңдауды қамтамасыз ететін құралдарды қамтамасыз етеді. Бұл құралдармен жұмыс істеудің ең қолайлы жолы IBM Data Studio бағдарламасында ұйымдастырылған.

Тізбектер

Реттілік нысандары кестелерден тәуелсіз болғанымен, олар сәйкестік бағандарына ұқсас жұмыс істейді және бірегей сандық реттіліктердің генерациясын қамтамасыз етеді. Тізбектер мен сәйкестік бағандарының айырмашылығы мынада: сәйкестік бағандары бірегей сандарды қатаң түрде кестенің көрсетілген бағанында жасайды, ал реттілік нысандары логикасы қолданба арқылы анықталатын реттік сандық мәндерді генерациялау үшін пайдаланылуы мүмкін.

Тізбектерді жасау CREATE SEQUENCE пәрменімен қамтамасыз етіледі, келесі және ағымдағы қабылданған мәндерге Операторлар ҮШІН КЕЛЕСІ МӘН және АЛДЫҢҒЫ МӘН арқылы қол жеткізіледі. Oracle Database-мен үйлесімділік үшін «NEXTVAL» және «CURRVAL» жалған бағандары арқылы реттілік мәндеріне қол жеткізу синтаксисіне де қолдау көрсетіледі.

Өкілдік

Көрініс – кестелердегі мәліметтерді көрсету. Көріністерге арналған деректер бөлек сақталмайды, ол көрініс іске қосылған кезде алынады. Кірістірілген көріністерге, яғни басқа көріністерден жасалған көріністерге қолдау көрсетіледі.

Көріністер CREATE VIEW пәрменімен жасалады және DROP VIEW пәрменімен жойылады. Көріністерді жаңартуды (ауыстыруды) жеңілдету үшін жаңа көріністі жасауды (егер ол бұрыннан жоқ болса) немесе бұрыннан бар көріністі жаңа анықтамамен ауыстыруды (егер көріністі есімбұрыннан жасалған).

триггерлер

Триггер – кестеде немесе көріністе операцияны автоматты түрде орындайтын объект. Триггер анықталған нысандағы нақты әрекет триггердің іске қосылуын тудырады. Әдетте, триггер қолданба объектісі болып саналмайды; сәйкесінше, триггерлерді әдетте әзірлеушілер емес, дерекқор әкімшілері жасайды.

Сақталған процедуралар мен функциялар

Сақталған процедуралар - бұл SQL мәлімдемелері мен бизнес логикасын қамтитын дерекқор нысандары. Кейбір қолданба логикасын дерекқорда сақтау қолданба мен дерекқор арасындағы трафик көлемін азайту арқылы өнімділікті жақсартады. Сонымен қатар, сақталған процедуралар кодты сақтау үшін орталықтандырылған орынды қамтамасыз етеді, осылайша басқа қолданбалар бірдей сақталған процедураларды пайдалана алады. Сақталған процедураны шақыру үшін CALL операторы қолданылады.

Пайдаланушы анықтайтын функциялар (UDF) пайдаланушыларға SQL тілін өз логикасымен кеңейтуге мүмкіндік беретін дерекқор нысандары болып табылады. Функция әрқашан мәнді немесе мәндерді қайтарады, әдетте функцияға енгізілген бизнес логикасының нәтижесінде. Функцияны шақыру үшін оны SQL операторының бөлігі ретінде немесе VALUES операторымен бірге пайдаланыңыз.

DB2 ішінде сақталған процедуралар мен пайдаланушы анықтайтын функцияларды бірнеше бағдарламалау тілдерінде, соның ішінде PL/SQL, SQL PL, Java, C, C++, COBOL тілдерінде әзірлеуге болады.

Жүйелік каталог

ДҚБЖ негізгі ақпараттық ресурстарының бірі жүйелік каталог болып табылады, ол мәліметтер қорының құрылымы туралы ақпаратты сақтайды және оған қол жеткізуді қамтамасыз етеді, оның ішінде:

  • кестелердің, бағандардың және индекстердің сипаттамасы;
  • көріністердің, триггерлер мен сақталатын процедуралардың сипаттамасы мен мәтіні;
  • кесте кеңістігі және деректерді сақтауға арналған контейнерлер туралы ақпарат;
  • деректер қоры объектілеріне қол жеткізуге белгіленген рұқсаттар;
  • басқа дерекқордың мета ақпараты.

Жүйелік каталогқа кіру көптеген тапсырмаларды орындау үшін қажет, соның ішінде дерекқорды басқару және техникалық қызмет көрсету тапсырмаларын автоматтандыру, қолданбаларды әзірлеу және т.б.

Жүйелік каталогтың бөлігі болып табылатын ең жиі қолданылатын кестелер (шынымен, көріністер):

  • SYSCAT.SCHEMAS – мәліметтер қоры схемаларының сипаттамасы;
  • SYSCAT.TABLES – мәліметтер қоры кестелерінің сипаттамасы;
  • SYSCAT.COLUMNS – кесте бағандарының сипаттамасы;
  • SYSCAT.INDEXES – индекстердің сипаттамасы.

Жүйелік каталогтың жоғарыдағы және басқа кестелеріне арналған бағандардың толық сипаттамасы мен құрамы .

Параллельді транзакциялық өңдеуді ұйымдастыру

Мәмілелер

Мәміле (немесе жұмыс бірлігі) бір немесе бірнешеуден тұрады SQL мәлімдемелері, олар орындалған кезде жеке бірлік ретінде қарастырылады; басқаша айтқанда, бір транзакция мәлімдемесінің сәтсіздігі бүкіл транзакцияның сәтсіздікке ұшырауына әкеледі, бұл сәтсіздікке дейін орындалған барлық мәлімдемелер кері қайтарылады.

Транзакция COMMIT мәлімдемесімен аяқталады. Сондай-ақ транзакция ROLLBACK мәлімдемесімен немесе қолданбаны төтенше (қалыпты) өшірумен аяқталуы мүмкін, содан кейін дерекқорға қолданба жасаған барлық өзгертулер жойылады. Транзакцияның басталуы қолданбаның дерекқорға қосылуы ашылғаннан кейін немесе алдыңғы транзакция аяқталғаннан кейін орындалатын бірінші мәлімдеме болып табылады. Дерекқорға әрбір қолданба қосылымында ең көбі бір белсенді транзакция болуы мүмкін.

Бұрын айтылғандай, дерекқордағы өзгерістер транзакция журналында жазылады. Қайтарылатын транзакция арқылы жасалған өзгерістердің "кері қайтарылуы" мүмкін екеніне көз жеткізу үшін транзакция шекаралары транзакция журналында да жазылады. Бұл ретте тек деректерді оқу операцияларын орындайтын транзакциялар транзакциялар журналына жазылмайды. Транзакцияның басталуы туралы ақпарат транзакция журналында бірінші (берілген транзакция үшін) деректерді жазу мәлімдемесін орындау басталғанға дейін орналастырылады.

Деректерді жазатын жалғыз мәлімдемені орындау кезінде қате орын алған жағдайда, осы мәлімдеме жасаған барлық өзгертулер транзакция журналының деректері арқылы жойылады. Өтінішті орындаудан бас тарту туралы диагностикалық хабарлама алған қолданба бүкіл транзакциядан бас тарта алады (ROLLBACK мәлімдемесімен) немесе дерекқормен басқа әрекеттерді орындап, нәтижесінде енгізілген өзгерістерді растай алады (COMMIT мәлімдемесімен). ).

Қолданба транзакция ішінде қосымша кері қайтару нүктелерін анықтай алады (SAVEPOINT мәлімдемесі арқылы) және кері қайтару нүктесі жасалғаннан кейін жасалған өзгертулерді болдырмайды (ROLLBACK TO мәлімдемесін пайдалану). Кері қайтару нүктелерін пайдалану қолданбаға транзакцияда орындалған әрекеттерді таңдаулы түрде болдырмауға мүмкіндік береді, бұл деректер тұтастығы қателерін және басқа сценарийлерді өңдеу кезінде пайдалы болуы мүмкін.

Құлыптар

Параллельді пайдалану бірнеше пайдаланушылардың бір дерекқор нысандарында бір уақытта жұмыс істей алатынын білдіреді. Деректердің тұтастығы мен дәйектілігін қамтамасыз ету үшін деректерге қол жеткізу дұрыс үйлестірілуі керек.

Параллельді транзакциялардың дәйекті нәтижелерін алу үшін ортақ ресурстарды қатар пайдалануды бақылау қажет. Мұндай бақылау құлыптарды пайдалануға негізделген.

Құлыптау және параллельдік ұғымдары бір-бірімен тығыз байланысты. Құлып ағымдағы әрекет аяқталғанша қолданбалардың басқа әрекеттерді орындауын уақытша болдырмайды. Жүйеде құлыптау неғұрлым белсенді қолданылса, соғұрлым параллельдік мүмкіндіктері аз қалады. Екінші жағынан, жүйеде құлыптау неғұрлым жиі қолданылмайтын болса, соғұрлым параллельдік мүмкіндіктер көп болады.

Транзакцияны қолдау үшін қажет болған жағдайда құлып автоматты түрде алынады және мұндай транзакция тоқтатылған кезде шығарылады (COMMIT немесе ROLLBACK пәрмені арқылы). Құлыптарды үстелдерге немесе жолдарға қоюға болады.

Бұғаттаудың екі негізгі түрі бар:

  • Ортақ құлып (S) - қолданба деректерді оқығанда және басқа қолданбалардың бір жолға өзгертулер енгізуіне жол бермейтін кезде орнату.
  • Эксклюзивті құлып (X) - қолданба жолды жаңартқанда, кірістіргенде немесе жойғанда орнату.

Екі немесе одан да көп қолданбалар бір нысанда әрекетті орындау қажет болса, олардың біреуі қажетті құлыпты алу үшін күту керек. Әдепкі бойынша, қолданба шексіз күтеді. Қолданбаның құлыптау күту уақыты LOCKTIMEOUT дерекқор конфигурациясының параметрімен басқарылады. Бұл параметр үшін әдепкі мән -1 (шексіз күту).

Белгілі бір қосылымда құлыптау күту уақытын орнату үшін АҒЫМДАҒЫ ҚҰЛЫПТАУ ҮЗІЛУ КЕЗІНДЕГІ сеанс айнымалы мәнін пайдалануға болады. Әдепкі бойынша, бұл айнымалы мән LOCKTIMEOUT мәніне орнатылған. Бұл мәнді өзгерту үшін SET LOCK TIMEOUT операторын пайдалануға болады.

Бір дерекқорға қосылған екі (немесе одан да көп) қолданбалар осы ресурстарға қол жеткізудің дұрыс тізбегіне байланысты ресурстарды шексіз күткен жағдайда, тығырықтану жағдайы орын алады. Күту мерзімі аяқталмайды, себебі әрбір қолданба басқа қолданбаға қажет ресурсты сақтайды. Барлық жағдайларда тығырықтан шығу мәселесі қате қолданба құрылымына немесе логикаға байланысты.

DB2 DLCHKTIME параметрімен көрсетілген аралықтарда сәйкес тексерулерді орындау арқылы тығырықтану жағдайларын автоматты түрде анықтайды. Тұйықтың шынымен орын алғанын анықтағанда, DB2 екі транзакцияның қайсысын кері қайтару және қайсысын жалғастыру керектігін анықтау үшін ішкі алгоритмді пайдаланады.

Оқшаулау деңгейлері

Параллельдік бақылау болмаған жағдайда туындауы мүмкін мәселелердің егжей-тегжейлі талдауы DB2 құжаттамасында, сондай-ақ реляциялық ДҚБЖ жұмыс істеу теориясы бойынша әдебиеттерде берілген. Мәселелердің ықтимал түрлеріне мыналар жатады:

  • жоғалған жаңарту (бір деректер блогы әртүрлі транзакциялармен бір уақытта өзгертілсе, өзгерістердің бірі жоғалады);
  • сенімсіз оқу (транзакция арқылы қосылған немесе өзгертілген, кейін расталмайтын деректерді оқу);
  • қайталанбайтын оқу (бір транзакция шегінде қайта оқу кезінде бұрын оқылған деректер өзгертіледі);
  • фантомдық оқу (бір транзакциядағы бірдей таңдаулар басқа транзакциялар арқылы жолдарды қосуға, жоюға немесе өзгертуге байланысты әртүрлі жолдар жиынын береді).

Жоғарыда аталған мәселелерден DB2 кірістірілген қорғанысын қолданбалы басқару пайдаланылатын оқшаулау деңгейін орнату арқылы жүзеге асырылады. Оқшаулау деңгейлері таңдалған оқшаулау деңгейіне байланысты қол жеткізуге болатын блоктау саясаты ретінде қарастырылуы мүмкін. әртүрлі опцияларқолданба арқылы дерекқорды құлыптайды. Бағдарлама талап ететін оқшаулау деңгейін сеанс деңгейінде және орындалып жатқан жалғыз сұрау немесе ішкі сұрау деңгейінде орнатуға болады.

DB2 деректерді оқшаулау үшін келесі қорғау деңгейлерін қамтамасыз етеді:

  • сенімсіз оқу (Uncommitted Read, UR);
  • курсордың тұрақтылығы (Cursor Stability, CS);
  • оқу тұрақтылығы (Read Stability, RS);
  • қайталанатын оқу (Қайталанатын оқу, RR).

Шынайы емес оқу«лас» деп те атайды. Бұл параллельдіктің ең жоғары дәрежесіне мүмкіндік беретін ең төменгі оқшаулау деңгейі. Басқа қолданба кестені түсіруге немесе өзгертуге әрекеттенетін жағдайларды қоспағанда, оқу әрекеттері кезінде жолдар құлыпталмайды; жаңарту әрекеттері келесі оқшаулау деңгейін, курсор тұрақтылығы деңгейін пайдалану кезіндегідей орындалады.

Нашар оқуды оқшаулау деңгейін пайдалану келесі мәселелердің алдын алады:

  • жоғалған жаңарту.

Курсордың тұрақтылығыәдепкі оқшаулау деңгейі болып табылады. Ол блоктаудың ең аз дәрежесін қамтамасыз етеді. Бұл оқшаулау деңгейі курсордың «ағымдағы» жолын құлыптайды. Егер жол тек оқуға арналған болса, құлып өтуге дейін сақталады жаңа жолнемесе операцияның аяқталуы. Жол жаңартылса, құлып операция аяқталғанша ұсталады.

Меңзердің тұрақтылығын оқшаулау деңгейін пайдалану келесі мәселелердің алдын алады:

  • жоғалған жаңарту;
  • қате оқу.

DB2 9.7 нұсқасына дейін, Меңзердің тұрақтылығын оқшаулау деңгейін пайдаланған кезде, жазуды (ЖАҢАРТУ әрекетін) орындау сол жолға оқуға (ТАҢДАУ әрекетін) рұқсатты жапты. Логикалық негіз жазу операциясы жолға өзгерістер енгізетіндіктен, соңғы қабылданған мәнді алу үшін оқу жаңартулардың аяқталуын күтуі керек.

DB2 9.7 әдепкі бойынша жаңа дерекқорлар үшін Меңзер тұрақтылығының оқшаулану деңгейіне басқа тәсілдеме береді. Бұл жаңа тәсіл «қазіргі орындалған» (CC) семантикасын қолдану арқылы жүзеге асырылады. CC семантикасын пайдаланған кезде жазу әрекеті оқу әрекеті үшін бір жолға қатынасты жаппайды. Бұрын бұл тәсіл UR оқшаулау деңгейін пайдалану арқылы мүмкін болды; Ағымдағы тәсілден айырмашылығы - UR-мен оқу әрекеті жарамсыз мәндерді алады, ал CC семантикасымен ол қазіргі уақытта қабылданған мәндерді алады. Қазіргі уақытта қабылданған мәндер жазу әрекеті басталғанға дейін жасалған мәндер болып табылады.

Оқу тұрақтылығықолданба қабылдаған барлық жолдарға құлыптауды қамтамасыз етеді. Берілген сұрау үшін нәтижелер жиынына сәйкес келетін барлық жолдар блокталады. Сондықтан пайдалану бұл режимОқшаулау қолданбаның құлыптардың көп санын алуына себеп болуы мүмкін және орнатылған шектеулерге жетсе, құлыптарды жол деңгейінен кесте деңгейіне көтеруге болады. Дегенмен, оқу орнықтылығын оқшаулау деңгейінде DB2 сұрау оңтайландырғышы нәтиже жинағы кестедегі жазбалардың көпшілігін қамтыса да, өзі орындайтын сұраулардың орындау жоспарында кесте деңгейіндегі құлыптарды анық алмайды.

Оқу тұрақтылығын оқшаулау деңгейін пайдалану келесі мәселелердің алдын алады:

  • жоғалған жаңарту;
  • қате оқу;
  • қайталанбайтын оқу.

Қайталап оқуоқшауланудың ең жоғары деңгейі болып табылады. Ол құлыптаудың ең жоғары дәрежесін және параллельділіктің ең аз мөлшерін қамтамасыз етеді. Нәтижелер жинағын құру үшін өңделетін жолдарға құлып қойылады; басқаша айтқанда, соңғы нәтиже бумасына кірмейтін жолдар да бұғатталуы мүмкін. Басқа қолданбалар орындалып жатқан операция аяқталмайынша нәтиже жиынына әсер ететін жолдарды жаңарта, жоя немесе кірістіре алмайды. Қайталанатын оқу бір әрекетте қолданба арқылы бірнеше рет жасалған бір сұраудың әр жолы бірдей нәтижелерді шығаруын қамтамасыз етеді.

DB2 сұрауын оңтайландырушы, Қайталанатын оқуды оқшаулау деңгейін пайдаланған кезде, сәйкес сұраулар кестенің барлық жолдарын сканерлеуді қамтитын кезде, сұрауды орындау жоспарына айқын кесте деңгейіндегі құлыптау әрекеттерін қамтуы мүмкін (бұл кестенің әрбір жолын өңдеу кезінде құлыптау керек дегенді білдіреді) сұраудың орындалуы).

Оқу тұрақтылығының оқшаулау деңгейін пайдалану барлығын болдырмайды мүмкін проблемаларбәсекеге қабілетті қолжетімділік, бірақ сонымен бірге операцияларды орындаудың ықтимал параллельдігі мүмкіндігінше шектеледі.

Қорытынды

Бұл мақалада негізгісі қарастырылды функционалдық IBM DB2 LUW ДҚБЖ, дерекқор серверінің құрылымы, конфигурация параметрлері және деректерді сақтау ұйымы. Бұған қоса, DB2 серверінің негізгі принциптері, дерекқор нысандарының қолдау көрсетілетін түрлері және DB2 транзакциялық өңдеуді параллельді ұйымдастыру қарастырылады.

DB2 (орысша «dibi two» деп айтылады, ағылшын тілінен аударғанда «dibitu» калька да кең таралған) — IBM компаниясының ақпаратты басқару бағдарламалық өнімдерінің тобы. Көбінесе DB2-ге сілтеме жасай отырып, олар IBM әзірлеген және шығарған DB2 Universal Database (DB2 UDB) реляциялық дерекқорды басқару жүйесін білдіреді.

Ашық бастапқы лицензия бойынша таратылатын Linux операциялық жүйесіне қатысты қолайлы көзқарасқа қарамастан, IBM әлі DB2 дерекқорын ашуды жоспарлап отырған жоқ. Бұл туралы IBM Linux Technology орталығының директоры Джим Васко Сан-Францискода өткен Linux Foundation Collaboration Summitінің соңғы (2011 ж. сәуір) жыл сайынғы конференциясында мәлімдеді. IBM ішінде әртүрлі бөлімдердің өкілдері арасында тұрақты күрес жүріп жатыр, деп түсіндірді Васко. Кейбір жағдайларда Linux немесе Windows жүйесін таңдау бағдарламалық қамтамасыз етуден түсетін кірістердің төмендеуін, бірақ қызметтердің жоғарырақ кірістерін білдіреді, ал басқа жағдайларда бұл аппараттық құралдардың кірістері болуы мүмкін. Біз оңтайлы шешім іздеуіміз керек, деп түйіндеді ол. Бумаларды Oracle жүйесіне жіберу ашық дереккөз Sun Microsystems компаниясында әзірленген , IBM үшін кейбір проблемалар туғызды, деді Васко. Oracle тұтынушыларды өзінің Exadata серверлері мен Oracle дерекқоры үшін IBM жабдығымен сауда жасауға сендіруге тырысады. 2011 жылы Linux Foundation директоры Джим Землин IBM Watson сияқты Linux негізіндегі мамандандырылған жоғары өнімді жүйелер мен минималды конфигурацияны қажет ететін дайын құрылғылардың дамуын күтеді.

Іске асыру

Қазіргі уақытта отбасының коммерциялық өнімдеріне қоса, IBM Linux (x86, x86-64, POWER), Windows (x86, x86-64), Solaris (x86-64) үшін DB2 Express-C тегін таратуын да таратады. Mac OS X платформалары.(x86-64 бета). Тегін нұсқада ДҚБЖ үшін бір екі ядролы процессордан және 2 ГБ жедел жадты пайдалануға шектеулер бар (жүйедегі процессорлар мен жадтардың жалпы саны кез келген болуы мүмкін, бірақ көрсетілген шектеулерден асатын ресурстар пайдаланылмайды. ДҚБЖ арқылы).

2017 жыл: Деректерді бақылау үшін толықтырулар туралы хабарландыру

Db2 on Cloud

Жаңартылған Db2 on Cloud шешімі IBM Cloud жүйесінде қол жетімді толық басқарылатын қызмет болып табылады.

Технологиялық мүмкіндіктерге мыналар жатады:

  • Өнімділік пен жад параметрлерін орнатуға арналған динамикалық шкала («жүргі») - тінтуірді басу арқылы масштабты лезде өзгертуге, деректерді өңдеу өнімділігін және жедел жадтың қажетті көлемін арттыруға немесе азайтуға болады, сол сияқты жад көлемін арттыруға болады. ақпаратты сақтау жүйесі;
  • Веб консоль – тұтынушыларға қызметті жылдам меңгеруге және онымен жұмысты жылдамдатуға көмектеседі.

Тұтастай алғанда, Db2 on Cloud қосымша есептеу ресурстарын келіссөздер мен сатып алудың көп уақытты қажет ететін процесін болдырмайды және IBM Db2 Hosted нұсқасын, IBM бұлтында орналастырылған дерекқор нұсқасын толықтырады.

Cloud Benchmark бойынша Db2

DB2 Analytics Accelerator

Нұсқалар

2017: JSON және HTTP

DB2 10 бірнеше жылдардағы ДҚБЖ бірінші негізгі жаңартуын білдіреді: z/OS 10 нұсқасы 2010 жылы шығарылды, бірақ бұл шығарылым Linux, Unix және Windows жүйелеріне арналған.

Екі өнімде де жаңа функциялар бар. DB2 енді RDF (Resource Description Framework) пішімін қолдайды және InfoSphere Apache Hadoop орналастыруларымен бірге жұмыс істей алады. DB2-дегі басқа жақсартулар, басқалармен қатар, жылдамырақ сақтық көшірме жасау және енгізу/шығару процестерін қамтиды.

DB2 10 да икемді. Атап айтқанда, ДҚБЖ әкімшілері деректерді сақтауға арналған тарату құралдарын алды әртүрлі түрлерісақтау құралы: мысалы, операциялық ақпаратты жылдамырақ қатты күйдегі дискілерде сақтауға болады, ал құндылығы аз деректерді арзанырақ және баяу таспа дискілеріне сақтауға болады.

Уақытпен саяхаттау деп аталатын жаңа мүмкіндік уақыт деректерін тиімдірек басқаруға мүмкіндік береді және z/OS үшін 10 нұсқасының пайдаланушылары үшін үлкен жетістік болды. Оның көмегімен пайдаланушы немесе бағдарлама берілген кезеңдерде ДҚБЖ-да болған уақыт контекстіндегі деректерді зерттей алады. Мұндай орталарды пайдалану аналитика үшін өзекті.

DB2 10 екі процессор өзегі және 2 ГБ жады бар өндіріс ортасында пайдалану үшін тегін жүктеп алуға болады. Неғұрлым функционалды нұсқалардың құны 6180 доллардан басталады, оған жылдық техникалық қызмет көрсету құны кіреді. InfoSphere құны процессорлар санына немесе сақталған деректер көлеміне негізделеді, негізгі нұсқалар ТБ үшін шамамен $40 мың тұрады.

IBM DB2 10.5 нұсқасы

Оқиға

DB2 ұзақ тарихы бар және оны кейбіреулер SQL қолданатын алғашқы ДҚБЖ деп санайды.

1975 жылдан 1982 жылға дейін DB2 прототипі IBM-де System Relational немесе System R деген атаумен әзірленді. SQL тілі алғаш рет IBM System R жүйесінде жүзеге асырылды, бірақ бұл жүйе зерттеу сипатында болды, ал SQL қамтитын коммерциялық өнім болды. алғаш рет Oracle 1979 жылы шығарды.

DB2 өз атауын 1982 жылы VM үшін SQL/DS деп аталатын бірінші коммерциялық шығарылымымен, содан кейін DB2 деп аталатын MVS үшін шығарылымымен алды. Ұзақ уақыт бойы "DB2" -мен бірге "Database 2" нұсқасы, сонымен қатар IBM сауда белгісі қолданылды. Шамасы, бұл ескі иерархиялық IMS ДҚБЖ кейінгі екінші флагмандық IBM ДҚБЖ болуы керек еді.

DB2-нің дамуы 1970-ші жылдардың басына, IBM компаниясында жұмыс істейтін доктор Э.Ф. Кодд реляциялық дерекқор теориясын дамытқан және 1970 жылы маусымда деректерді өңдеу үлгісін жариялаған кезден басталады. Бұл модельді жүзеге асыру үшін ол реляциялық мәліметтер базасын жасап, оны Альфа деп атады. IBM одан әрі әзірлеуді доктор Коддтың бақылауынан тыс бағдарламашылар тобына беруді таңдады. Реляциялық модельдің кейбір принциптерін бұза отырып, олар оны «Structured English Query Language», қысқаша SEQUEL ретінде жүзеге асырды. SEQUEL бұрыннан тіркелген сауда белгісі болғандықтан, атау SQL – «Structured Query Language» болып қысқартылды және бүгінгі күнге дейін солай қалды.

Осылайша, тарихи түрде DB2 MVS үшін DB2 (оның ішінде DB2 for z/OS ұрпағы болып табылады) және оның қарындасы VM үшін SQL/DS (оның VSE және VM үшін DB2 сервері ұрпақ болып табылады) дамыды. Кейінірек, IBM-дегі басқа әзірлеу тобы OS/2 EE Database Manager серверін іске асырды, ол кейінірек OS/2, AIX, содан кейін Windows үшін DB2 v2, содан кейін DB2 UDB (оның ұрпағы Linux, UNIX және Windows үшін DB2) болды. . Басқа топ DB2 архитектурасын ендірілген AS/400 дерекқорымен (ұрпағы - i үшін DB2) біріктіруді аяқтады. IBM бірте-бірте осы филиалдардың барлығын біріктіруге бет алды.

Ерекшеліктер

DB2-нің ерекше белгілеріне сирек ерекшеліктерді қоспағанда, тіл құрылымдарының таза декларативті мағынасын анықтайтын SQL тілінің диалектісі және осы декларациялық құрылымдардан тиімді сұрауды орындау жоспарын құрайтын қуатты көп фазалық оңтайландырушы кіреді. Басқа SQL диалектілерінен айырмашылығы, DB2 SQL диалектісінде іс жүзінде оңтайландырушы кеңестер жоқ, сақталатын процедура тілінің дамуы аз (және ұзақ уақыт бойы) жоқ және осылайша барлығы сұрауларды жазудың декларативті стилін сақтауға бағытталған. Сонымен бірге, DB2 SQL тілі есептеу жағынан аяқталды, яғни ол бастапқы деректер мен декларативті пішіндегі нәтиже арасындағы кез келген есептелетін сәйкестіктерді анықтауға мүмкіндік береді. Бұған басқалармен қатар кесте өрнектерін, рекурсияны және басқа кеңейтілген деректерді өңдеу механизмдерін пайдалану арқылы қол жеткізіледі.

IBM реляциялық дамуға және фирманың компьютерлік индустриядағы ұстанымына байланысты DB2 SQL диалектісі ANSI/ISO SQL стандарттарына айтарлықтай әсер етеді.

Сақталған процедуралар DB2-де кеңінен қолданылмайды және дәстүрлі түрде сақталатын процедураларды жазу үшін әдеттегі жоғары деңгейлі бағдарламалау тілдері (C, Java, PL/I, COBOL және т.б.) пайдаланылады, бұл бағдарламашыға файлды оңай пішімдеуге мүмкіндік береді. клиентте немесе серверде орындау неғұрлым орынды екеніне байланысты қолданбаның бөлігі ретінде немесе сақталған процедура ретінде бірдей код. DB2 сонымен қатар қазіргі уақытта ANSI SQL/PSM стандартына сәйкес сақталған процедуралар үшін SQL процедуралық кеңейтімін жүзеге асырады.

DB2 оңтайландырғышы кестені тарату статистикасын кеңінен пайдаланады (егер деректерді жинау процесі DBA арқылы орындалса), сондықтан бірдей SQL сұрауын өңдейтін деректердің статистикалық сипаттамаларына байланысты мүлде басқа орындау жоспарларына аударуға болады.

DB2 тарихи түрде негізгі фреймдегі көп пайдаланушылық жүйелерден дамығандықтан, DB2 архитектурасы қауіпсіздікке және DB2 қолдаушылары үшін рөлдерді бөлуге көп көңіл бөлді. Атап айтқанда, көптеген басқа ДҚБЖ-дан айырмашылығы, DB2 дерекқор әкімшісі (DB2 бағдарламалық құрал құрамдастарын конфигурациялауға және оларды компьютер жүйесінде оңтайлы іске қосуға жауапты) және дерекқор әкімшісіне (белгілі бір дерекқордағы деректерді басқаруға жауапты) бөлек рөлдерге ие.

Қажет болған жағдайда бағдарламаларда статикалық SQL және пакеттер концепциясын пайдалану, басқа ДҚБЖ көпшілігінен айырмашылығы, мұндай қауіпсіздік моделін жүзеге асыруға мүмкіндік береді, егер белгілі бір операцияларды орындау құқығы қолданбалы бағдарламаларға мұндай құқықтар болмаған кезде берілуі мүмкін. осы бағдарламалармен жұмыс істейтін пайдаланушылар. Бұл жағдайда бұл пайдаланушының қолданбалы бағдарламаны айналып өтіп, деректер қорымен жұмыс істеу мүмкін еместігіне кепілдік беруге мүмкіндік береді, егер пайдаланушыда тек бағдарламаны іске қосу құқығы болса, бірақ деректерді дербес өңдеуге болмайды.

Компьютерлік жүйедегі қауіпсіздік құралдарын біріктіру деңгейін арттыру тұжырымдамасының бөлігі ретінде DB2-де пайдаланушыларды аутентификациялаудың, операциялық жүйе құралдарымен немесе арнайы қауіпсіздік серверлерімен интеграцияланудың өзіндік құралдары жоқ. DB2 ішінде жүйемен аутентификацияланған пайдаланушылар ғана рұқсат етілген.

DB2 – аппараттық/бағдарламалық құрал деңгейінде іске асырулары бар жалғыз жалпы мақсаттағы реляциялық ДҚБЖ (IBM i жүйесі; DB2 қолдауы сонымен қатар IBM System z негізгі аппараттық құралында жүзеге асырылады).

DB2 нұсқасының заманауи нұсқалары XML деректерін, соның ішінде XML құжаттарының жеке элементтеріндегі операцияларды пайдалану үшін кеңейтілген қолдауды қамтамасыз етеді.

Мақала ұнады ма? Достарыңызбен бөлісіңіз!
Бұл мақала пайдалы болды ма?
Иә
Жоқ
Пікіріңізге рахмет!
Бірдеңе дұрыс болмады және сіздің дауысыңыз есептелмеді.
Рақмет сізге. Сіздің хабарламаңыз жіберілді
Мәтіннен қате таптыңыз ба?
Оны таңдаңыз, басыңыз Ctrl+Enterжәне біз оны түзетеміз!