Кіріспе
Деректердің өмірлік циклы бойына сақталуын қамтамасыз ету. Деректердің тұтастығы – деректердің өмірлік циклы бойына олардың дәлдігі мен үйлесімділігін сақтау және қамтамасыз ету болып табылады. Бұл деректерді сақтайтын, өңдейтін немесе іздейтін кез келген жүйенің жобалануы, іске асырылуы және қолданылуының маңызды аспектісі. Бұл терминнің мағынасы кең және нақты жағдайға байланысты, тіпті жалпы есептеу саласында да әртүрлі болуы мүмкін. Кейде деректер сапасын бағалау үшін қолданылатын шартты ұғым ретінде пайдаланылады, ал деректерді тексеру деректердің тұтастығын қамтамасыз етудің алғы шарты болып табылады.
Data integrity is the maintenance of, and the assurance of, data accuracy and consistency over its entire life cycle. It is a critical aspect to the design, implementation, and usage of any system that stores, processes, or retrieves data. The term is broad in scope and may have widely different meanings depending on the specific context even under the same general umbrella of computing. It is at times used as a proxy term for data quality, while data validation is a prerequisite for data integrity.
Анықтама
Деректердің тұтастығы деректердің бұзылуының қарама-қарсысы болып табылады. Кез келген деректердің тұтастығын сақтау әдісінің жалпы мақсаты бір: деректердің қалатындай жазылуын қамтамасыз ету (мысалы, деректер базасы өзара қарама-қайшы мүмкіндіктерді дұрыс қабылдамауы). Сонымен қатар, кейіннен деректерді алу кезінде, олар бастапқыда жазылған күйінде екеніне көз жеткізу керек. Қысқасы, деректердің тұтастығы ақпаратқа кездейсоқ өзгерістер енгізуді болдырмауға бағытталған. Деректердің тұтастығын деректердің қауіпсіздігімен шатастыруға болмайды, ол деректерді рұқсатсыз тұлғалардан қорғау саласы. Деректерді сақтау, алу немесе өңдеу операциясының нәтижесінде туындаған кез келген күтпеген өзгерістер, оның ішінде қасақана ниет, аппараттық құралдың күтпеген істен шығуы және адамның қатесі – деректердің тұтастығының бұзылуы болып табылады. Егер өзгерістер рұқсатсыз қол жеткізудің нәтижесі болса, ол деректердің қауіпсіздігінің бұзылуы да болуы мүмкін. Бұл деректерге байланысты, суреттегі бір пикселдің бастапқыда жазылғаннан өзге түспен көрсетілуінен бастап, демалыс суреттерінің немесе бизнеске маңызды деректер базасының жоғалуына, тіпті өмірлік маңызы бар жүйеде адам өмірінің апаттық жоғалуына дейін әртүрлі түрде көрініс беруі мүмкін.
Физикалық тұтастығы
Физикалық тұтастық деректерді дұрыс сақтау және алумен байланысты кедергілермен айналысады. Физикалық тұтастыққа қатысты кедергілерге электромеханикалық ақаулар, конструкциялық кемшіліктер, материалдың тозуы, коррозия, қуаттың үзілуі, табиғи апаттар және иондаушы сәулелену, экстремалды температура, қысым және g күштері сияқты басқа да ерекше қоршаған ортаның қауіпті жағдайлары жатады. Физикалық тұтастықты қамтамасыз етуге артық аппараттық құралдар, үзіліссіз қуат көзі, RAID массивінің белгілі бір түрлері, сәулеленуге төзімді чиптер, қателерді түзету жады, кластерлік файлдық жүйені пайдалану, ZFS сияқты блок деңгейіндегі тексеру сомаларын қолданатын файлдық жүйелерді пайдалану, эксклюзивті немесе криптографиялық хэш функциясы сияқты паритеттік есептеулерді жүзеге асыратын сақтау массиві және тіпті маңызды подсистемаларда бақылау таймерін орнату кіреді. Физикалық тұтастық қателерді анықтау алгоритмдерін, белгілі қателерді түзету кодтарын кеңінен пайдаланады. Адамның қатысуынан туындаған деректердің тұтастығындағы қателер көбінесе Damm алгоритмі немесе Luhn алгоритмі сияқты қарапайым тексерулер мен алгоритмдер арқылы анықталады. Бұл деректерді бір компьютерлік жүйеден екіншісіне адам қолмен көшіргеннен кейін (мысалы, кредит картасы немесе банк шот нөмірлері) деректердің тұтастығын сақтау үшін қолданылады. Компьютердің жасаған транскрипция қателерін хэш-функциялар арқылы анықтауға болады. Өндірістік жүйелерде бұл техникалар деректердің әртүрлі деңгейдегі тұтастығын қамтамасыз ету үшін біріктіріліп қолданылады. Мысалы, компьютерлік файлдық жүйе қатеге төзімді RAID массивінде конфигурациялануы мүмкін, бірақ үнсіз деректердің бұзылуын анықтау және болдырмау үшін блок деңгейіндегі тексеру сомаларын ұсынбауы мүмкін. Тағы бір мысал ретінде, деректерді басқару жүйесі ACID қасиеттеріне сәйкес болуы мүмкін, бірақ RAID контроллері немесе қатты дискінің ішкі жазу кэші осыған сәйкес болмауы мүмкін.
Логикалық тұтастығы
Бұл тұтастық түрі белгілі бір жағдайда деректің дұрыстығына немесе логикалық сәйкестігіне қатысты. Мұнда сілтемелік тұтастық және реляциялық деректер базасындағы толықтық тұтастығы, сондай-ақ роботтық жүйелерде мүмкін емес сенсорлық деректерді дұрыс қабылдамау сияқты мәселелер қарастырылады. Бұл деректің өзінің ортасында "мағыналы" болуын қамтамасыз етуге байланысты. Мұндай қиындықтарға бағдарламалық қателер, жобалаудағы кемшіліктер және адам жасаған қателер жатады. Логикалық тұтастықты қамтамасыз етудің әдеттегі тәсілдеріне тексеру шектеулері, сыртқы кілт шектеулері, бағдарламалық талаптар және басқа да жұмыс кезіндегі логикалық тексерулер кіреді. Физикалық және логикалық тұтастық көптеген мәселелерді ортақ пайдаланады, мысалы, адам қателіктері мен жобалаудағы кемшіліктер. Екеуі де деректерді жазу және алу үшін келіп түсетін бірдей сұраныстарды тиісінше өңдеуі керек, ал соңғысы жеке тақырып болып табылады. Егер дерек секторында тек логикалық қате болса, оны жаңа деректермен жазып қайта пайдалануға болады. Физикалық қате болған жағдайда, зардап шеккен дерек секторы толығымен қолдануға жарамсыз болады.
Деректер қоры
Деректердің тұтастығы деректерді белгілі бір деректер базасында (әдетте реляциялық деректер базасында) сақтау мерзімін анықтайтын немесе кепілдендіретін деректерді сақтау бойынша нұсқауларды қамтиды. Деректердің тұтастығына қол жеткізу үшін бұл ережелер жүйеге енгізілген барлық деректерге тұрақты түрде және үнемі қолданылады, ал оларды күшпен орындаудың кез келген жеңілдетілуі деректерде қателерге әкелуі мүмкін. Деректерді енгізу көзіне мүмкіндігінше жақын жерде (мысалы, қолмен деректерді енгізу кезінде) тексеру жүргізу, жүйеге қате деректердің енуіне азайтуға көмектеседі. Деректердің тұтастығы ережелерін қатаң сақтау қателіктердің азаюына және қате деректерді іздеуге, олардың себеп болған алгоритм қателерін анықтауға жұмсалатын уақытты үнемдеуге әкеледі. Деректердің тұтастығы сондай-ақ деректердің бір бөлігінің басқа деректермен қатынасын анықтайтын ережелерді қамтиды, мысалы, клиенттік жазбаның сатып алынған өнімдермен байланысуына, бірақ корпоративтік активтер сияқты байланыссыз деректермен емес, рұқсат етілуі. Деректердің тұтастығы көбінесе белгілі бір схема немесе алдын ала анықталған ережелер жиынтығына сүйенетін жарамсыз деректерді тексеру және түзетуді қамтиды. Мысалы, күндік-уақыттық мән қажет болған жерде мәтіндік деректер енгізілуі. Деректерді туындыру ережелері де қолданылады, олар алгоритм, үлескерлер және шарттар негізінде деректердің мәні қалай туындырылатынын анықтайды. Сондай-ақ, деректердің мәнін қайта туындыру шарттары да көрсетіледі.
Мысалдар
Деректердің тұтастығын қамтамасыз ету механизміне мысал ретінде байланысты жазбалардың ата-ана мен бала қатынасын келтіруге болады. Егер ата-ана жазба бір немесе бірнеше байланысты бала жазбаға ие болса, барлық сілтемелік тұтастық процестері дерекқор жүйесімен жүзеге асырылады, ол деректердің дұрыстығы мен тұтастығын автоматты түрде қамтамасыз етеді. Осылайша, ата-ана жазбасыз (жетім жазба деп те аталады) бала жазба болуы мүмкін емес, сондай-ақ ата-ана жазбалары өз бала жазбаларын жоғалтпайды. Бұдан бөлек, ата-ана жазбасында бала жазбалар бар болғанда, оны жою мүмкін емес. Мұның бәрі дерекқор деңгейінде жүзеге асырылады және әрбір қолданбаға тұтастықты тексеру кодын енгізу қажеттілігін жояды.
Файл жүйелері
Әртүрлі зерттеу нәтижелері кең таралған файлдық жүйелердің (UFS, Ext, XFS, JFS және NTFS сияқты) және аппараттық RAID шешімдерінің деректердің бүтіндігіне қатысты мәселелерге қарсы жеткілікті қорғаныспен қамтамасыз етпейтінін көрсетеді. Кейбір файлдық жүйелер (Btrfs және ZFS сияқты) деректер мен метадеректерді тексеру механизмін ұсынады, ол үнсіз дерек бұзылуын анықтау және деректердің бүтіндігін арттыру үшін қолданылады. Егер осылайша бұзылу анықталса және осы файлдық жүйелер ұсынатын ішкі RAID механизмдері де қолданылса, онда мұндай файлдық жүйелер бұзылған деректерді автоматты түрде қалпына келтіре алады. Бұл тәсіл деректердің барлық жолдары бойынша қорғауды жақсартады, бұл әдетте деректерді бастан-аяқ қорғау деп аталады.
Деректердің тұтастығы әртүрлі салаларға қолданылған
АҚШ-тың Азық-түлік және дәрі-дәрмек басқармасы фармацевтикалық өндірушілер үшін АҚШ Федералды ережелер кодексінің 21 CFR 210–212 бөлімдеріне сәйкес келуге міндетті деректердің тұтастығы туралы нұсқаулық жобасын жасады. АҚШ-тан тыс елдерде осыған ұқсас деректердің тұтастығына қатысты нұсқауларды Ұлыбритания (2015), Швейцария (2016) және Австралия (2017) жариялады. Медициналық құрылғыларды өндіруге арналған түрлі стандарттар деректердің тұтастығын тікелей немесе жанама түрде қарастырады, оның ішінде ISO 13485, ISO 14155 және ISO 5840 стандарттары. 2017 жылдың басында Қаржы индустриясын реттеуші орган (FINRA) автоматтандырылған сауда және ақша ағынын бақылау жүйелеріндегі деректердің тұтастығы мәселелерін атап өтіп, "ұсынылған деректердің дұрыстығын бақылау үшін деректердің тұтастығын қамтамасыз ету бағдарламасын әзірлеуді" басымдыққа айналдыратынын мәлімдеді. 2018 жылдың басында FINRA деректердің тұтастығына қатысты ұстанымын фирмалардың "технологиялық өзгерістерді басқару саясаты мен процедураларына" және қазыналық құнды қағаздарды тексеруге дейін кеңейтетінін хабарлады. Тау-кен және өнім өндіру сияқты басқа да салалар байланысты автоматтандыру және өндірісті бақылау активтерінде деректердің тұтастығының маңыздылығына көбірек назар аударуда. Бұлтты сақтау провайдерлері ұзақ жылдардан бері клиенттердің деректерінің тұтастығын немесе тегін қамтамасыз ету және бұзушылықтарды анықтау бойынша елеулі қиындықтарға тап болып келеді.