Кіріспе

GT. M – транзакцияларды өңдеуге бағытталған, жоғары өнімділікке ие кілт-мәнді деректер базасының қозғалтқышы. (Бұл «схемасыз», «схеманы қажет етпейтін» немесе «NoSQL» деп те аталатын тип.) GT. M сонымен қатар қосымшаларды әзірлеу платформасы және ISO стандартындағы M тіліне арналған компилятор, ол MUMPS деп те белгілі. GT. M, Greystone Technology M деген атаудың қысқартылған түрі, 1980 жылдары Greystone Technology Corp. компаниясымен әзірленген. Бұл AIX және Linux жүйелері үшін ANSI стандартындағы M-нің іске асырылуы болып табылады. М тілінің дәстүрлі мүмкіндіктерін сақтап қана қоймай, GT. M орындалу кезінде ішкі интерпретаторларды қажет етпейтін объектілік кодты құратын оптимизациялық компиляторды ұсынады. 2000 жылы ашық код ретінде жарияланған деректер базасының қозғалтқышын FIS компаниясы қолдап тұрады. GT. M олардың FIS Profile банктік қосымшасының артқы бөлігі ретінде пайдаланылады және Испания, Франция, Италия, Нидерланды, Румыния және Үндістан елдеріндегі банктерге, АҚШ-тағы Capital One 360-қа, Канададағы Tangerine (Scotiabank) компаниясына, Atom Bank, Tandem Bank, Sainsbury's Bank, Ұлыбританиядағы Scottish Widows және Barclays Direct компанияларына қуат береді. Бұдан өзге, ол WorldVistA электрондық денсаулық сақтау жүйесінің және Medsphere OpenVista сияқты басқа да ашық кодты ЭДЖ жүйелерінің ашық кодты артқы бөлігі ретінде қолданылады. Red Hat компаниясының ашық кодты денсаулық сақтау шешімдерінің серіктесі ретінде тізімделген. Бүгінгі таңда ол шамамен 2 миллион код жолынан тұрады.

Техникалық шолу

GT. M тілдік жүйе, деректер базасы жүйесі және қосымша бағдарламалардан құралады. Тілдік жүйе мен деректер базасы жүйесі тығыз байланысты, бірақ олардың әрқайсысы екінсіз де қолданылуы мүмкін. Тілдік және деректер базасы жүйелері ортақ дерек ұйымдастыру және типтеуді пайдаланады.

Тілдік кіші жүйе

Деректер қорында жаһандық айнымалы түйіндер деректер қоры блогының ішіне сыйып отыруы керек болса, жергілікті айнымалы тізбектері 1 МБ-қа дейін өсе алады. GT.M жұмыс уақыты қоқыс жинаумен бірге динамикалық жадты бөлуді қамтамасыз етеді. Жергілікті айнымалылардың саны және жергілікті айнымалылардағы түйіндердің саны тек процеске қолжетімді жад көлемімен шектеледі. Жергілікті айнымалының әдепкі ауқымы – процесс өмір сүру мерзімі. New командасын пайдаланып процедуралар ішінде құрылған жергілікті айнымалылардың ауқымы шектеулі. GT.M процедуралары әр процестің адрестік кеңістігінде орындалу үшін динамикалық түрде компиляцияланып, байланыстырылады. GT.M-нің x86 Linux платформасы үшін 32 биттік нұсқасынан басқа, объектілік модульдерді стандартты ld командасымен ортақ кітапханаларға орналастыруға болады, мұндайда пайдаланылған жад ортақ болады. Бұл маңызды, себебі VistA сияқты қосымшада 20 000-нан астам процедура бар, олардың компиляцияланған объектілік коды 200 МБ-тан асады. VistA-ны іске асыратын үлкен ауруханада бір уақытта мыңдаған пайдаланушы процестері жұмыс істеуі мүмкін. Шағын ерекшеліктерден басқа, GT.M ISO стандартының M (тарихи себептермен MUMPS деп те аталады) дерлік толыққанды жүзеге асырылуын қамтиды. GT.M-де M коды C кодына (немесе C-мен үйлесімді интерфейсі бар басқа тілдердегі кодқа) еркін шақыруға болады, ал C коды M кодына еркін шақыруға болады (осылайша жоғарғы деңгейдегі бағдарлама C main болуы мүмкін). Мысалы, CPAN-дегі GT.M модулі, Python-нан кіру үшін m python немесе Erlang үшін EGTM байланысы бар. GT.M-де жазылған веб-қызметтерін inetd немесе xinetd сияқты интернет-суперсерверде орналастыруға болады. Веб-қосымшалар EWD немесе CFMumps сияқты қабатталған бағдарламалық жасақтаманы пайдалана алады.

Лицензиялау

Linux-та x86 64 & IA 32 (x86) және OpenVMS жүйесінде Alpha/AXP процессорларында GT.M бағдарламалық жасақтамасы GNU Affero General Public License, 3-ші нұсқасының шарттарымен ашық кодты (FOSS) бағдарламалық қамтамасыз ету ретінде таратылады. Басқа платформаларда ол коммерциялық лицензиялар бойынша қолжетімді.

Жалпы қолданылу

GT. M көбінесе денсаулық сақтау және қаржы қызметтері салаларында қолданылады. GT. M-нің өндірісте алғашқы қолданылуы 1986 жылы Теннесси штатының Мемфис қаласындағы Элвис Пресли еске алу травматологиялық орталығында тіркелді. FIS Profile арқылы ол АҚШ, Канада, Испания, Франция және Италиядағы банктерді қамтамасыз етеді. GT. M дерекқорына SQL және ODBC арқылы қол жеткізу жеке коммерциялық өнімдер ретінде қол жетімді.