Кіріспе

IBM жасаған бірлескен иерархиялық деректер қоры

IBM Ақпараттық басқару жүйесі (IMS) – транзакциялық өңдеуді қолдайтын бірлескен иерархиялық деректер қоры және ақпаратты басқару жүйесі.

Тарих

IBM компаниясы 1966 жылы Аполлон бағдарламасы үшін Роквелл және Катерпиллармен бірлесіп IMS-ді жобалады, онда ол Сатурн V Ай зымыраны мен Аполлон ғарыш аппаратының өте кең материалдық тізімін (BOM) есепке алу үшін қолданылды. Осы аралықта IMS көптеген дамуларға ұшырады, өйткені IBM System/360 технологиясы қазіргі z/OS және IBM zEnterprise System технологияларына эволюциялады. Верн Уоттс 1960 жылдардан бері үздіксіз түрде IMS-пен айналысып, көп жылдар бойы IMS-тің бас архитекторы болды. Уоттс 1956 жылы IBM компаниясына қосылды және 2009 жылдың 4 сәуірінде қайтыс болғанға дейін IBM-нің Кремний алқабындағы даму зертханаларында жұмыс істеді.

"Толық функционалды" деректер қоры

Apollo үшін бастапқыда әзірленген Data Language Interface (DL/I) деректер қорынан тікелей тараған толық функционалды деректер қорында біріншілік және екіншілік индекстер болады. Оларға қол жеткізу DL/I шақырулары арқылы жүзеге асырылады, бұл IBM Db2 немесе Oracle-қа SQL шақыруларына ұқсас. Толық функционалды деректер қорына әртүрлі тәсілдермен қол жеткізуге болады, бірақ Иерархиялық тікелей (HDAM) және Иерархиялық индекстелген тікелей (HIDAM) ең көп қолданылады. Басқа форматтарға қарапайым иерархиялық индекстелген тізбектік (SHISAM), иерархиялық тізбектік (HSAM) және иерархиялық индекстелген тізбектік (HISAM) жатады. Толық функционалды деректер қоры деректерді VSAM (z/OS жүйесіне тән қол жеткізу әдісі) немесе Overflow Sequential (OSAM) арқылы сақтайды. OSAM – бұл IMS-ке тән қол жеткізу әдісі, ол IMS қол жеткізу үлгілері үшін I/O арнасының бағдарламасын оңтайландырады. Атап айтқанда, OSAM-ның өнімділігі IMS деректер қорына тізбектік қол жеткізуден (OSAM Sequential Buffering) үлкен пайда көреді.

"Fast Path" деректер қоры

Fast Path деректер базасы өте жоғары транзакциялық жылдамдықтар үшін оптимизацияланған. Деректерді енгізу деректер базасы (DEDB) және негізгі сақтау деректер базасы (MSDB) – Fast Path деректер базасының екі түрі. DEDB-лер толық функционалды HDAM-ға ұқсас тікелей (кездейсоқ) қолжетімділік әдісін пайдаланады және IMS V12 DEDB екіншілік индекс функциясын қамтамасыз етті. MSDB-лер екіншілік индекстеуді қолдамайды. Виртуалды сақтау опциясы (VSO) DEDB-лер қазіргі IMS нұсқаларында MSDB-лерді алмастыра алады, сондықтан MSDB-лер біртіндеп қолданыстан шығып барады. DEDB-нің жоғары өнімділігі жоғары өнімділікке (Media Manager) қолжетімділік әдістерін, коммиттен кейін асинхронды жазуды және оңтайландырылған код жолдарын пайдаланудың нәтижесінде мүмкін болады. Логтау минималды болады, өйткені коммит жасалғанға дейін дискіде ешқандай дерек жаңартылмайды, сондықтан UNDO (алдындағы бейне) логтау қажет емес, сондай-ақ кері қайтару функциясы да қажет емес. Құрылмай қалған өзгерістерді жай ғана жоюға болады. IMS 11 нұсқасынан бастап DEDB-лер деректер базасы буферлері үшін z/OS 64 биттік жадын пайдалана алады. DEDB архитектурасы Жұмыс бірлігі (UOW) тұжырымдамасын қамтиды, бұл тиімді онлайн қайта ұйымдастыру құралын іске асыруды жеңілдетті. Бұл функция базалық өнімге кіреді.

Жоғары қол жетімділіктегі ірі деректер қоры (HALDB)

IMS V7 HALDB-ді енгізді, бұл IMS толық функционалды деректер қорының кеңейтілген нұсқасы болып табылады. Ол деректерге жақсы қолжетімділікті, өте үлкен дерек көлемдерін тиімді өңдеуді қамтамасыз етеді және IMS V9 нұсқасымен үздіксіз қолжетімділікті қолдау үшін онлайн қайта ұйымдастыру мүмкіндігін ұсынады. (IMS V9 нұсқасына дейін онлайн қайта ұйымдастыруды тек үшінші тарап құралдары ғана жүзеге асыратын болды.) HALDB 40 терабайттан астам дерек сақтай алады.

Транзакция менеджері

IMS – VTAM немесе TCP/IP арқылы қосылған (оның ішінде 3270 және веб-пайдаланушы интерфейстері) немесе басқа қолданба арқылы қосылған соңғы пайдаланушымен өзара әрекеттесетін транзакция менеджері (IMS TM, сондай-ақ IMS DC деп те аталады). Ол бизнес-функцияны (мысалы, банк шотынан қаражат алу) өңдей алады және процестің барлық кезеңінде күйін сақтайды, жүйе бизнес-функцияны деректерді сақтауға дұрыс жазатынын қамтамасыз етеді. IMS TM хабарламалар мен кезекке қою үлгісін қолданады. IMS басқару бағдарламасы терминалдан (немесе веб-браузерден немесе басқа қолданбадан) енгізілген транзакцияны қабылдайды, содан кейін транзакцияны хабарлама кезегінде (жадта немесе деректер жиынтығында) сақтайды. Содан кейін IMS хабар өңдеу аймағында бизнес-қолданба бағдарламасын іске қосу үшін кезекте тұрған транзакция бойынша жоспарлаушыны шақырады. Хабар өңдеу аймағы транзакцияны IMS хабарлама кезегінен алады және оны өңдейді, IMS және/немесе Db2 дерекқорларын оқиды және жаңартады, сондай-ақ транзакцияның дұрыс тіркелуін қамтамасыз етеді. Содан кейін, қажет болған жағдайда, IMS жауап хабарламасын IMS хабарлама кезегіне қайтарады. Шығыс хабарламасы толыққаннан және қолжетімді болғаннан кейін, IMS басқару бағдарламасы оны бастапқы терминалға қайтарады. IMS TM бұл процесті секундына мыңдаған (немесе тіпті он мыңдаған) рет орындай алады. 2013 жылы IBM IMS 13 нұсқасы бойынша сынақ нәтижесін аяқтады, ол бір IMS жүйесінде секундына 100 000 транзакцияны өңдеу мүмкіндігін көрсетті.

Қолдану

IMS транзакцияларды орындау үшін стандартты ортаны ұсынады. 2000 жылдардың соңына қарай бірнеше қытай банктері елдегі қарқынды дамитын қаржы индустриясын қолдау үшін IMS жүйесін сатып алды. IMS 1982 жылы ұсынылған IBM Db2 реляциялық деректер базасы жүйесіне толықтыру жасауға мүмкіндік береді. IMS әдеттегі тапсырмаларды Db2-ден жылдам орындайды, бірақ негізгі емес міндеттерді жобалау және күту үшін көбірек бағдарламалау күші қажет болуы мүмкін. IMS деректер базасын толықтыру үшін реляциялық деректер қоймасын пайдалануға болады. Мысалы, IMS банкоматтар арқылы негізгі операцияларды жүзеге асыруға мүмкіндік береді, себебі ол осы сияқты нақты міндетті тиімді орындайды.