Кіріспе
Oracle TimesTen In Memory Database – тұрақтылығы және жоғары қолжетімділігі бар жадтағы реляциялық деректерді басқару жүйесі. Бастапқыда Калифорния штатының Пало-Альто қаласындағы Hewlett Packard зертханаларында жобаланған және іске асырылған TimesTen 1996 жылы жеке стартапқа айналды, ал 2005 жылы Oracle корпорациясы сатып алды. TimesTen деректер қоры тұрақты және жоғары деңгейде қолжетімді болуы мүмкін. Жадындағы деректер қоры болғандықтан, ол өте төмен жауап уақытын және жоғары өнімділікті қамтамасыз етеді. Ол SQL және PL/SQL тілдері сияқты стандартты реляциялық деректер қоры API-лері мен интерфейстерін ұсынады. Қолданбалар TimesTen-ге ODBC және JDBC сияқты стандартты деректер қоры API-лері арқылы қол жеткізеді. TimesTen дербес деректер қоры ретінде пайдаланылуы мүмкін, сондай-ақ Oracle Database сияқты басқа реляциялық деректер қорының алдында кэш ретінде жиі қолданылады. Ол көбінесе алдын ала төленген телекоммуникациялық есептеулер мен қаржылық сауда сияқты жоғары көлемді OLTP қолданбаларында қолданылады. Ол сондай-ақ өте үлкен веб-сайттар мен геолокациялық қызметтер сияқты көп оқылатын қолданбалар үшін де қолданылады. TimesTen бір машинадағы жедел жадтан әлдеқайда үлкен деректер қорын қолдайтын, кеңейтілген өткізу қабілетін және жоғары қолжетімділікті қамтамасыз ететін ортақ ресурстарсыз кластерленген жүйе (TimesTen Scaleout) ретінде конфигурациялануы мүмкін. Сондай-ақ, ол жоғары қолжетімділік пен микросекундтық жауап уақытын қамтамасыз ететін деректер қорының жұмыс істейтін/күшінде тұрған жұптарында (TimesTen Classic) көшіріле алады. TimesTen Linux, Solaris және AIX жүйелерінде жұмыс істейді, сондай-ақ Windows және macOS жүйелерінде жұмыс істейтін клиенттік бағдарламаларды қолдайды.
Технология
TimesTen – деректерге өте жылдам қол жеткізуді қамтамасыз ететін жадта сақталатын деректер базасы. Ол деректердің барлығының жұмыс істеу кезінде физикалық жадыда (RAM) орналасуын қамтамасыз етеді. Бұл оның ішкі іздеу және деректерді басқару алгоритмдерін жеңілдетуге мүмкіндік береді, нәтижесінде тіпті қарапайым аппараттық құралдарда да өте төмен жауап беру уақыты қамтамасыз етіледі. TimesTen хост-машинадағы terabyte көлеміне дейінгі қолжетімді RAM-ды пайдалана алады; TimesTen Scaleout-ты пайдалану арқылы бір машинаның RAM-ынан әлдеқайда үлкен деректер базаларын қолдауға болады.
Деректер қорының тұжырымдамалары
TimesTen стандартты реляциялық деректер қоры түсініктерін қолдайды. Кестелер қатарлардан тұрады; қатарлар нақты дерек түрлерінің бағандарынан тұрады. Деректер SQL арқылы өңделеді. Транзакциялар деректерді тиісті атомдық және оқшаулау деңгейлерімен өңдеуге мүмкіндік береді; TimesTen реляциялық деректер қорынан күтілетін барлық стандартты ACID қасиеттерін қолдайды. TimesTen қолдайтын дерек түрлері, әдетте, Oracle деректер қоры қолдайтын дерек түрлерінің ішкі жиынтығы болып табылады, NUMBER, VARCHAR және LOBs-ті қоса алғанда; TimesTen-ге тән дерек түрлері, мысалы, екілік бүтін сандар да қолдау көрсетіледі. Қолданбалар TimesTen деректер қорына ODBC, JDBC, OCI және ODPI C сияқты стандартты реляциялық API-лерді пайдаланып қол жеткізеді. Бұл көптеген бағдарламалау тілдері мен орталарда қолданбаларды жазуға мүмкіндік береді. Қолданбалар стандартты SQL-ді пайдаланып деректерге қол жеткізу және оларды өңдеу үшін осы API-лерді қолданады. Сақталған процедураларды PL/SQL арқылы жүзеге асыру және орындау мүмкін.
Тұрақтылық
In-memory деректер қоры болғанымен, TimesTen деректер қоры тұрақты және жоғары деңгейде қолжетімді болуы мүмкін. Орындалу кезінде TimesTen деректерінің барлығы RAM-да сақталады, бірақ TimesTen деректер қорының тұрақтылығын және деректерді қалпына келтіруді қамтамасыз ету үшін ұдайы сақтау құралдарын пайдаланады. TimesTen деректер қорының көшірмелерін, бақылау нүктелері файлдарын жергілікті файлдық жүйеде сақтайды. Сонымен қатар, деректер қорына енгізілген барлық өзгерістер транзакциялық журналдарда тіркеледі. Бақылау нүктелері файлдары мен транзакциялық журналдардың біріктірілуі TimesTen-ге жүйелік қателіктер болған жағдайда деректер қорын қалпына келтіруге мүмкіндік береді. Бұдан өзге, TimesTen деректер қоры жоғары қолжетімділік пен апатты жағдайлардан қалпына келтіруді қамтамасыз ету үшін бірнеше машинаға көшіріле алады.
Қосылу әдістері
Қолданбалар TimesTen деректер қорына дәстүрлі клиент/сервер тәсілімен, негізгі тасымалдау ретінде TCP/IP пайдалана отырып, немесе тікелей режимде қосыла алады. Тікелей режим деректер қорымен бір машинада жұмыс істейтін қолданбаларға желілік стек пен контекст ауыстыруға байланысты қосымша шығындарды болдырмауға мүмкіндік береді. Орындалу кезінде TimesTen деректер қорындағы деректер ортақ жадта сақталады, бұл қолданба процестеріне деректер қоры жадына тікелей қосылуға және IPC немесе контексттік ауыстырудың қосымша шығындары болмай, деректерге кіруге мүмкіндік береді. Екі режимде де бірдей API және мүмкіндіктер қолжетімді.
Кэштеу
TimesTen деректер базалары тұрақты болғандықтан және жоғары қолжетімділікті қамтамасыз ете алатындықтан, оларды көптеген шешімдерде жалғыз деректер базасы ретінде пайдалануға болады. Дегенмен, TimesTen деректер базалары көбінесе Oracle Database сияқты басқа деректер базаларымен бірге қолданылады, мұнда TimesTen деректер базасы дәстүрлі деректер базасындағы (мүмкін, үлкен) деректердің ішінара жиынтығы үшін кэш ретінде қызмет етеді. TimesTen Oracle Database дереккөзінен деректерді кэшке сақтау мүмкіндігін ұсынады. Oracle Database кэшін пайдалану үшін кэш топтары деп аталатын бір немесе бірнеше SQL объектілері анықталады. Кэш тобы – бір немесе бірнеше байланысты деректер базасы кестелерінің жиынтығы және оның қатарлары мен/немесе бағандарының ішінара жиынтығын қамтиды. Кэш тобындағы деректер базасы кестелерінің әрқайсысы анықталған бірінші кілтқа немесе нөлдік емес бағандар жиынтығында жарияланған бірегей индекске ие болуы керек, сондай-ақ олар негізгі кілт-шеткі кілт шектеулері арқылы ата-бала іерархиясында байланысты болуы тиіс. Қай деректерді кэшке сақтау керектігін басқару үшін SQL предикаттарын қолдануға болады. Кэш тобы анықталғаннан кейін, оны "жүктеуге" болады, бұл Oracle Database деректерін TimesTen кэшіне сақтауға мүмкіндік береді. Бағдарламалар кэш топтарынан оқи алады және жаза алады, ал барлық деректер өзгерістері сәйкес Oracle Database кестелерімен синхрондалады. TimesTen және басқа деректер базалары арасында деректерді синхрондау үшін Oracle Golden Gate сияқты басқа шешімдерді де пайдалануға болады, бұл TimesTen-ді басқа деректер базаларының алдында өте жылдам кэш ретінде пайдалануға мүмкіндік береді.
Қолдану тәсілдері
TimesTen екі түрде конфигурациялануы мүмкін, олар TimesTen Classic және TimesTen Scaleout деп аталады.
TimesTen классикалық
TimesTen Classic жадында бір машинада іске асырылған деректер базасын іске асырады, бірақ жоғары қолжетімділік үшін басқа машиналарға көшіріле алады. TimesTen Classic ұсынған деректер базалары өте төмен жауап беру уақытын қамтамасыз етеді, себебі сұраулар желілік I/O қажет етпейді және барлық деректер жергілікті түрде сақталады. TimesTen Classic көшіру механизмі екі немесе одан көп хост арасында деректер базасын жаңартуды жіберу арқылы жоғары қолжетімді жүйені қамтамасыз етеді. Ең жоғары қолжетімділік үшін әдетте белсенді-қосалқы жұп деректер базасы қолданылады. Белсенді және қосалқы деректер базаларынан басқа, бірнеше абоненттік деректер базаларын апатты жағдайларда сақтық көшірме ретінде немесе тек оқуға арналған серверлер жиыны ретінде конфигурациялауға болады.
10 есе көлемді масштабтау
TimesTen масштабтау бір TimesTen дерекқорын көптеген машиналарға таратуға мүмкіндік береді. Деректерді көптеген машиналардағы бірнеше TimesTen мысалына тарату үшін бөлісілмеген архитектура қолданылады. Барлық машиналар дерекқордағы барлық деректерді сұрап, өзгерте алады және барлық ACID қасиеттері толыққанды қолдауға ие. Жоғары қолжетімділікті қамтамасыз ету үшін деректердің бірнеше көшірмесі сақталады. TimesTen масштабтау арқылы ұсынылатын дерекқорлар бір машинадағы RAM көлемінен асып түсуі мүмкін, ал дерекқортың өнімділігі машиналар саны артқан сайын артады.
Тарих
TimesTen компаниясы Мари Энн Неймат, Шерри Листгартен, Курт Шоенс және Кевин Уилкерсон тарапынан HP зертханасында "Smallbase" деген атпен құрылды. HP-де Жан Рене Бувье Smallbase-ті HP OpenCall-ға енгізуге шешім қабылдады, бұл өнімді 1995 жылы алғаш рет коммерциялық түрде пайдалануға мүмкіндік берді. 1996 жылы өнім, бас директор Джим Гроффтың басшылығымен, Калифорния штатының Маунтин-Вью қаласындағы жеке венчурлық капиталмен қаржыландырылатын стартап компанияға айналдырылды. Өнім телекоммуникациялық жабдықтар үшін танымал болды, себебі пакеттік коммутация сияқты қолданбалар үшін миллисекундтар немесе тіпті микросекундтарда жауап беру уақыты қажет болды. Компанияда 90 қызметкер жұмыс істеді және 2005 жылы Oracle Corporation сатып алған кезде пайдалы болды. Сатып алынғаннан кейін, PL/SQL қолдауы және Oracle SQL Developer мен Oracle Enterprise Manager-мен интеграция сияқты Oracle дерекқорының көптеген мүмкіндіктері TimesTen-ге қосылды. TimesTen Scaleout 2018 жылы енгізілді.