Референтен метод за цялост на бази данни на документи

Лучинин Захар Сергеевич

аспирант, катедра IVS, PSTU

424000, Република Марий Ел, Йошкар-Ола, пл. Ленин, сграда 3.

Лучинин Захар Сергеевич

аспирант, Катедра по информационни изчислителни системи, Волжски държавен технологичен университет

424000, Русия, Марий Ел, ж. Йошкар-Ола, пл. Ленина, дом 3.

документи

Предмет на това проучване са базирани на документи бази данни, които позволяват съхраняване на полуструктурирана информация, което се отнася до нерелационен подход за съхранение на данни. Изследването се основава на референтна цялост. Обяснението на концепцията за референтна цялост е дадено не само за релационни бази данни. Въз основа на анализа на релационния подход в подкрепа на референтната цялост се предлага решение на проблема за обработка на големи количества данни в разпределена среда, използвайки технологията на базирани на документи бази данни, като се вземат предвид особеностите на структурата на данните. Предложен е метод за поддържане на референтната цялост на разпределена базирана на документи база данни, базирана на преброяване на връзки между документи. Методът включва въвеждане на два вида връзки между документа, а именно силни и слаби връзки. Този тип връзки имитират стратегиите за работа с външни ключове в релационни бази данни. Обосновано е въвеждането на този метод като отделен модул от системата за управление на базата данни.
Ключови думи: целостта на базата данни, референтната цялост, нерелационните бази данни, външен ключ, документ-ориентиран модел, полуструктурирани данни, големи данни, репликация, разделяне, външен ключ

Дата на изпращане до редактора:

Предметът на това изследване е ориентирана към документи база данни, която може да съхранява полуструктурирана информация, свързана с нерелационен подход за съхранение на данни. Основата на изследването е в референтната цялост. Обяснение на концепцията за референтна цялост е дадено не само за релационни бази данни. Въз основа на анализа на релационния подход в подкрепа на референтната цялост, авторът предлага задачата да се обработват големи количества данни в разпределена среда, използвайки технологията на базирани на документи бази данни, отчитайки структурата на данните. Статията предлага метод за поддържане на референтната цялост на разпределена ориентирана към документи база данни, базирана на оценки на връзките между документи. Методът включва въвеждане на два вида връзки между документите, а именно силните и слабите връзки. Този тип връзки имитират стратегията за работа с чужди ключове в релационни бази данни. Авторът обосновава въвеждането на този метод като отделна единица от системата за управление на базата данни.

целостта на базата данни, референтна цялост, релационни бази данни, външен ключ, ориентиран към документ модел, полуструктурирани данни, големи данни, репликация, разделяне, външен ключ

Базите данни, ориентирани към документи (DOBD), свързани с подхода NoSQL [1], придобиха популярност сред разработчиците на софтуер с голямо натоварване. Гъвкавият модел на данни и добрата хоризонтална мащабируемост са ключови фактори за неговата популярност. Липсата на подкрепа за референтна цялост на данните на ниво система за управление на базата данни води до редица неудобства. На първо място, без този механизъм, отговорността за поддържане на целостта на данните пада върху програмистите, което води до появата на човешка грешка. Прилагането на механизма ще позволи да се избегнат грешки, свързани с човешкия фактор, както и да се въведат допълнителни методи за обработка на данни.

Изследването на референтната цялост е спешна задача, тъй като с увеличаването на количеството информация в софтуерните приложения става по-трудно да се проследяват връзките между връзките в базите данни. Съответно, вероятността от нарушаване на целостта се увеличава при извършване на операции с данни. Референтната цялост се основава на установяване на връзка между кортеж от релация A със специфичен кортеж от релация B. Тази връзка е отговорна за целостта на данните. Освен това винаги има възможност за извършване на две операции:

  • Определяне кой кортеж във връзка В е свързан с конкретен кортеж от връзка А;
  • Намиране на всички кортежи на релация A, които имат връзки с определен кортеж на релация B .

Най-известните реализации на ориентирани към документи СУБД, като MongoDB, CouchDB, RavenDB, съхраняват и представляват данни в JSON/BSON или XML формат. Такава база данни съдържа документи, които са аналогични на низовете в релационни бази данни и колекции от документи. Това и така нареченият "Безсхемен формат". Описанията на документи в JSON и XML формат позволяват да се прилагат сложни йерархични структури не само за колекция от данни, но и за всеки документ поотделно. По този начин няма начин да се предопредели броят на външните връзки в определен документ. В резултат на това са необходими допълнителни системни ресурси за анализиране на всеки документ, за да се идентифицират външни връзки при добавяне, редактиране и изтриване на документ.

Основната идея за изграждане на DOBD модел на данни е групирането на данни в един документ. Моделът на данни DOBD се основава на заявките, които трябва да бъдат направени, а не на връзките между обектите и концепциите за нормализиране. Но за да се избегне високо ниво на излишък на данни, отделни обекти се разпределят в нови колекции [1] .

Чрез съхраняване на свързани данни в един документ времето за извличане на данните се намалява, тъй като се прави една заявка вместо няколко [3]. Натоварването на СУБД също е намалено поради отсъствието на операцията по свързване на таблици, тоест изборът се извършва само от една колекция. Но поради излишък на данни, документите в една колекция могат да се свързват с няколко други документа в различни колекции. Няма начин еднозначно да се определи предварително количеството, местоположението и вида на посочените данни. Тези фактори налагат допълнителни изисквания към модула за целостта на данните по време на хоризонтално разделяне и при синхронизиране на множество копия на колекции [4] .

Новозеландският учен Харша Раджа [2], който има изследователски статии за референтната цялост на нерелационните бази данни, предлага да се добавят метаданни, съхраняващи ограничения на целостта към всеки запис от базата данни. Този метод ви позволява да получите информация за ограниченията за вземане на проби от данни. Основният недостатък на този подход е голямата излишък на сервизна информация, чийто обем може да надвишава обема на основните данни.

Всеки документ в базата данни има два броя връзки: слаб брой връзки и силен брой връзки. Когато връзката към документ е унищожена, броячът на този обект се намалява, а когато връзката е създадена, броячът се увеличава. Въз основа на това можем да направим заключение относно връзките между документите.

За да се поддържа референтна цялост, е необходимо да се опишат взаимоотношения на ниво модел на данни, но контролът на целостта пада върху системата за управление на базата данни. За подобряване на производителността и безопасността на данните се използват репликация на база данни и рязкост. Броят на връзките се отчита на главния сървър. Когато добавяте или редактирате данни, заявката се анализира. Открояват се много документи, към които е насочена заявката. Ако се окаже, че операцията ще доведе до появата на „счупени“ връзки, тогава заявката не се изпълнява и в отговора се връща грешка. Чрез отчитане на операции, извършени върху целия набор от данни на един сървър, е възможно да се поддържа референтна цялост на разпределени бази данни на няколко сървъра, т.е. по време на репликация и разделяне.

Този метод е реализиран като допълнителен референтен модул за цялост, инсталиран пред системата за управление на базата данни (СУБД) и апроксимира потребителските заявки, след като вземе предвид връзките между документите. Използването на такъв модул налага допълнителни разходи за времето за разбор на заявката и времето за трансфер на данни от модула към СУБД. Предимството на предложения подход е възможността за интегриране в съществуваща СУБД, без да се намесва в изходния код. Също така, внедряването на референтния метод за цялост е възможно на нивото на СУБД, вградена в нейната архитектура.

Референтната цялост е в основата на релационния модел, което е един от параметрите на популярността на този модел. Внедряването на референтна цялост в модела на документа ви позволява да поддържате връзки между обекти на ниво база данни, без да се жертва производителността при разпределяне на базата данни между множество сървъри.