Моделът на релационните данни: основни понятия, елементи, характеристики. Модели на база данни

Anonim

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

От историята на идеите за "бази данни"

Идеите са отделени от авторите. Колкото по-бързо това се случи, толкова по-уместни са идеите. Те минават покрай хора, когато вече съществуват, а последният само им отваря очите и забелязват нещо. В програмирането има много събития, факти и автори, които са били приписани на нещо или самите те са казали какво правят. Тогава се оказа, че това, което е направено, изобщо не е или не е било така.

Информацията и програмирането, подобно на вселената и атома, но последната все още не се стреми да стане основа за развитието на информацията, се задоволява само с едно малко: с формално отношение към бизнеса - с формализиране.

Бази данни човек винаги е създавал. Той се нарича знания и умения. Във видимото въплъщение това е (всичко, което е създадено от човешкия ум): инструменти, рисунки, текстове, документи, обичаи, норми на писаното право, библиотеки, сгради, технически продукти и много други.

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

От историята на моделите на базата данни

Взаимоотношенията са толкова познати, че са невидими за невъоръжено око. Правоъгълните форми на таблици са катастрофа, която още от първия момент, когато се появи първата електронна таблица, все още присъства дори в най-известната система за управление на бази данни.

Равенството на данните е очевидно. Не е необходимо да се доказва, че фамилните имена са равностойни, а имената също са. Ако вземете две групи ученици, тогава и двете ще бъдат имена и фамилии. Ако вземете поток, ще получите йерархия. Първо, отгоре - потокът, след това групата, после всеки отделен ученик.

Доста сложни аргументи водят до това, че релационният модел на базата данни не е уникален, има и:

  • йерархична;
  • мрежи;
  • файл;
  • обектно ориентирани.

Има много по-смесени идеи и още по-голям брой приложения, които не са намерили своето приложение. Във всеки случай има връзка на равенство или йерархия. Невъзможно е да се мисли за нещо друго. Във всяка система отношенията могат да бъдат само на едно ниво: нагоре (обобщение) и надолу (изясняване).

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

Базовите модели са системи. Никой няма да спори с това. Ако е така, тогава има само три вида отношения:

  • хоризонтално, равенство;
  • вертикална - йерархия;
  • времето е история.

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

Основни концепции за бази данни

Разпределена база данни или локален файл с данни. Клъстер, облак или виртуален контейнер. Всичко това са хардуерни или софтуерни решения. Как се намира тялото (съдържанието на базата данни) и функционалността е организирана (програмни модули, контролни компютри и т.н.) не е база данни, а технически решения.

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

В допълнение (към посочените технически решения):

  • съвременният хардуер работи надеждно и перфектно;
  • има квалифициран персонал, който може да изгради произволно сложен и високо организиран дизайн на хардуерна и софтуерна мрежа (фирмена инфраструктура или споделен център за данни);
  • Има разработчици, които имат брилянтни познания за внедряване на приложения и технологии за достъп до данни.

Всичко това към модела на базата данни има спомагателна, макар и съществена връзка.

Най-популярната концепция: базата данни е наречена колекция от структурирана информация, свързана с тематичната област. Има още една подобна концепция: ядрото на всяка база данни е модел, който отразява, на първо място, структурата.

Често мрежовият и релационният модел на данни не само се разделят като нещо коренно различно, но и се разглеждат като децентрализирана или централизирана система, която има възли, нива, връзки, към които се присъединяват крайните потребители.

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

Елементи и характеристики на базата данни

Най-ценният елемент е таблицата. Винаги правоъгълни. В таблицата има полета и записи. Обикновено всяка таблица се поставя в свой собствен файл, но често всички таблици в една база данни се поставят в един голям файл. Започна тази идея (един файл за една база данни) и идеята за използване на няколко компютъра за една обемиста СУБД.

По традиция колоната в полето има:

  • име;
  • тип;
  • описание на типа;
  • вградена проверка на типа за стойност;
  • коментирате;
  • задействане или вградена процедура.

Няма много възможности за описание на полета, но най-важната му характеристика е нейният тип. Ако желаете, винаги можете да промените името, коментарът няма значение, но промяната на типа е трудна, особено при валидна база данни.

Много често специфичните концепции на релационния модел на данни се наричат ​​от специфични разработчици по свой собствен начин. Наскоро модно да използваме термините:

  • същността;
  • доктрина;
  • информационен обект;
  • необходим състав;
  • връзки с данни (едно към едно, едно към много, на всички).

Анализирайки терминологията за описание на конкретни приложения на базата данни, може да се каже, че тя се основава или на опита на екип от разработчици, или на конкретна тематична област. Обикновено е възможно да се разбере какво е вградено, например, в думата “същност” или “доктрина”, само в конкретно приложение. Относно общото, признато от всички критерии, е изключено.

По-специално никой няма да твърди, че Oracle е признат лидер. Никой няма да каже нещо лошо за MySQL, но не е мнението на техните създатели, че управлява тези основи, а разбирането на “апликатори”: специфични програмисти, използващи определен продукт, “измислят” елементите и характеристиките на базата данни, която създават.

Преди да започнете да моделирате

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

Има само две възможности за развитие на събития:

  • проектиран класически модел;
  • Създава се обектно-ориентиран модел (OOM).

Разликите между думите „проектирани” и „създадени” са, че в първия случай всичко върви по стандартен план, който е приет от програмната общност и се разбира от класическия клиент. Има работа, а не творчество. Резултатът: надежден, безопасен и напълно работещ модел. Но няма да има динамика, самоадаптация и развитие.

Задачата ще бъде поставена в контекста на формализирането на тематичната област и формирането на таблици, взаимоотношения, заявки и обслужваща функционалност. При създаването на обектно-ориентирана база данни задачата ще изглежда така: всички елементи на релационния модел на данни са обекти.

Ако работата е необходима е просто или трябва да се направи изключително бързо, се избира първата опция. Създаването на обектно-ориентирана база данни може да се разглежда само ако има време и възможност за творчески процес. И дори тогава трябва внимателно да претегляте всичко. Във всеки случай изпълнителят и клиентът трябва да стигнат до съгласувано решение за приключване на работата - това е основното условие за успешното приключване на работата.

Основа на проектиране: проста

Релационният модел на данни може да бъде създаден с помощта на съществуващи инструменти, например MySQL има Workbench. Производителят на всяка популярна база данни предлага свои собствени инструменти, има десетки предложения от разработчици от трети страни. Дали да се гради върху такива инструменти е въпрос на вкус и способност за работа с тях. Ако няма опит, по-добре е да не мислите дори. Ако има допълнителен месец или два, можете да се консултирате с колеги и да вземете решение.

Въпросът за моделиране и дизайн е хартия, молив и компютър, например с PHP интерпретатор, MySQL сървър и Apache хостинг. За Oracle или MS SQL Server проблемът се решава по същия начин, но хартията и моливът са надеждна класика на процеса.

Процесът на моделиране и проектиране

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

  • един към един;
  • един към много;
  • много за мнозина.

Няма абсолютно никаква нужда да се мисли за молби: кой и кога, на кого ще се присъединят, ще седят - отляво или отдясно?

От историята на идеите на „човешките“ бази данни е известно: той ги създава през цялото време и той го нарича познания и умения. Това не е присъединяване, а не „колко на колко”. В класическия дизайн, можете да започнете да моделирате от страна на заявката (това е изход) или от страна на таблицата (това е въвеждане). Всъщност базата данни е система от таблици.

Думата "систематизация" се отнася за всяка таблица по-специално и за всички таблици в съвкупност. Клавишите се използват за установяване на връзки между тях, но това не е опция за това колко за колко. Това е значимо свързване на една структура от данни с друга. С този подход семантиката ще бъде по-ясна, а резултатът - по-практичен.

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

  • хоризонтално, равенство;
  • вертикална - йерархия;
  • времето е история.

Получената формалност е само първите две. Ако можете да разберете как да използвате времевата скала, върнете събития и запазете историята на събития - добре. Но съмнително е, че естествената информация в пълната му форма трябва да бъде формализирана в класическия дизайн.

OOM: точкова и точкова система

Съвременното ниво на знания и умения не позволява да се определят приоритетите. Откъде да започнем: от точка или от система от точки? Това е като в концептуалния философски въпрос: “Какво беше преди - пилето или яйцето”? И в двата случая се изисква спомагателно условие. Най-вероятно проблемният домейн ще помогне за определяне на приоритета.

Често релационният модел на данни може да бъде по-ефективно моделиран и създаден точно от една точка, тъй като системата включва подсистеми и създава необходимата йерархия на отношенията, като осигурява равни отношения на всяко ниво. Въпреки това, има много задачи, при които системите могат да възникнат едновременно и на няколко нива наведнъж, и след това да се подредят в обща система. Например, уеб ресурс за разбор на информация с натрупване за всеки посетител.

При такава задача създаването на една система за всички посетители е неразумно. Не е известно колко от тях ще бъдат и на какво ниво на йерархия ще бъдат в един или друг момент. Общата характеристика на релационния модел на данни тук непрекъснато ще се променя. За да се вземе общо решение, ще е необходимо данните да се обединят в обща система, която ще преразпределя отговорите към съответно формираните нива, а броят им също ще се променя динамично.

OOM: създаване

За да създадете обектно-ориентирана база данни, достатъчно е една единствена таблица. Първоначално обектно-ориентираната активност. Следователно базата данни тук е мястото за съхранение. Но този подход няма да даде желаната производителност, тъй като съхраняването на цялата база данни в оперативната памет не е много обещаващо при сегашното ниво на технологично развитие.

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

  • хоризонтално, равенство;
  • вертикална - йерархия;
  • времето е история.

Въпроси за това какви връзки ще бъдат и кой ще се присъедини, в които присъединяването ще загубят всяко значение. Разработчикът създава система от обекти, които сами по себе си реализират своите знания и умения с други обекти. Тук основното правило: обектът е истински елемент от информация от определена тематична област, която му дава необходимите знания и умения.

Проблеми и перспективи

Трудно е да се приложи идеята за OOM, както се вижда от динамичното развитие на лидерите в индустрията, които непрекъснато актуализират своя „парк” на правоъгълни инструменти, т.е. разработване на класически системи за управление на релационни бази данни. Но естествената информация не се вписва в правоъгълни маси!

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