Sunday, January 4, 2015

                               Бази на податоци

Oрганизација на базите на податоци 


 Ако се користи систем на датотеки, програмерите кои пишуваат апликативни програми за работа со датотеките, мораат да ја знаат физичката локација и описот на записите користени во апликативните програми. Така на пример, ако еден апликативен програм треба да направи извештај со користење на полиња од повеќе датотеки, мора да ја знае локацијата на секоја датотека и описот на секое поле во тие датотеки. Со користење на базите на податоци овој проблем се надминува, бидејки системите за управување со базите на податоци обезбедуваат поврзување помеѓу физички складираните податоци и апликативните програми на корисниците.Корисниците се одговорни само за логичките барања на апликативните програми, а системот за управување со бази на податоци ги прифаќа иинтерпретира логичките барања на програмите, потоа ги селектира бараните податоци од нивните физички локации од базата на податоци, за да на крај ги презентира кон корисниците на системот. На тој начин, системите за управување со базите на податоци го контролираат пристапот кон податоците,пребарувањата и ажурирањата без корисникот да референцира како и каде податоците се физички складирани. Тие ги прикриваат деталите за физичкото складирање на податоците, така што корисниците можат потполно да се сконцентрираат на логичките релации помеѓу податоците. Па така секој корисник добива впечаток дека податоците физички се складирани токму на начин на кој тој логички ги гледа врските помеѓу нив.Се разликуваат два вида на погледи кон податоците: логички и физички.Логичкиот поглед ги претставува корисниците кои концептуално ги гледаат,организираат и разбираат податоците и релациите помеѓу нив, додека физичкиот поглед се однесува на тоа како и каде податоците се физички сместени и складирани во мемориските единици.На пример, еден менаџер може да ги замисли податоците за купувачите во форма на една табела(логички поглед), иако можеби тие се складирани во форма на индексносеквенцијална датотека (физички поглед). Корисниците можат да го променат логичкиот поглед на податоците без да се јави потреба од промена на физичкиот поглед на податоците. Податоците во една компанија претставуваат една од највредните ставки од неговиот имот. Ефикасното складирање и менаџментот на податоците е една од најкритичните функции на информациските системи. Поголемиот дел од компаниите користат системи на бази на податоци (база на податоци, систем за управување со базата на податоци, апликативен софтвер, хардвер и персонал) за организирање и управување со податоците и информациите потребни за извршување на деловните активности. Поради тоа, крајните корисници мораат да ги познаваат основните концепти за управување и работа со системите на бази на податоци.


Модели на бази на податоци според организацијата

Целта на користењето на базите на податоци е интегрирање на индивидуалните единици на податоци, т.е. трансформирање на изолиранит ефакти во корисни информации. Дали базата е физички или логички структурирана ќе зависат и можностите на нејзино користење. Постојат три основни модели за логичко структурирање на базите на податоци: хиерархиски,мрежен и релациони. Дополнителни модели кои произлегуваат од основните се: мултидимензионален, објективно ориентиран и хипермедијски.               


 -Хиерархиските бази на податоци


Како што самото име имплицира дефинираат хиерархиска структура на податоците. Најинтуитивниот начин на визуелизација на овој тип релација е со дрво на податоци поставено „од горе надолу“. Во овој тип база на податоци,полињата и записите се структурирани во темиња. Темињата се точки поврзани со гранки на едно „од горе надоле(top-down)“ хиерархиско дрво. Од едно теме може да почнуваат повеќе гранки, а секоја гранка завршува со теме од пониско ниво. Може да се заклучи дека секое теме има само едно родителско теме (од кое потекнува),. Проблем кај хиерархиската организација може да се јави ако се избрише едно теме.Во тој случај значи дека се избришани и сите негови темиња.Предност е што овозможува лесно одржување на интегритетот на податоците.



-Мрежни бази на податоци




Мрежниот модел на податоци бил дизајниран за да реши дел од сериозните проблеми кои ги имал хиерархискиот модел. Така, мрежниот модел го решавал проблемот на редуданција со претставување на релациите во облик на множества, наместо во форма на хиерархија.Мрежниот модел всушност е многу сличен на хиерархискиот, со други зборови хиерархискиот модел претставува подмножество на мрежниот модел.Визуелно, мрежната база на податоци личи на повеќе дрва кои делат исти гранки, меѓутоа наместо користење на единствен родител за секое теме дете,мрежниот модел ја користи теоријата на множества за да обезбеди хиерархија слична на дрво. Ова всушност му овозможува на на мрежниот модел да поддржи многу наспроти многу релации. Предност му е ефикасноста при обработка, а голем недостаток е потребата за однапред дефинирање на сите врски иименици.




-Релациони бази на податоци


 Во осумдесеттите години, релациониот модел на податоци бил најмодерен начин на организирање на податоците. Моделот е изработен врз математички концепти од страна на математичарот Е.Ф.Код. Во јадрото нарелациониот модел е концептот на табела, исто така позната и под иметорелација во која се складирале податоците.Секоја табела е составена од записи, хоризонтални линии познати под името ентитет и од полиња,вертикални колони познати како атрибути. Овој концепт е сосема различен од првите два каде што корисникот мора да има познавања за тоа како сеструктурирани податоците, во рамките на базата на податоци, за да пристапи,вметне, ажурира или избрише запис од базата.



-Објектно ориентирани, мултимедијални и хипермедијски бази наподатоци


Во објектно ориентираните модели на податоци основните составни блокови се објектите. Објектот претставува сегмент кој ги содржи податоците,како и програмскиот код кој ги опишува податочните елементи и инструкциите како се манипулира со нив. Објектите можат да претставуваат физички ентитети како автомобили, луѓе, студенти или настани, или, пак, апстрактниентитети како банкарски сметки и друго.Еве една делумна шема за објектно ориентирана база на податоци прикажана на слика 1




Слика 1. Објектно ориентирана база на податоци

Овој тип на модел е хиперархиски, при што секое хиерархиско ниво освен најдолното се состои од класи на објекти. Класа на објекти претставув ашаблон, т.е. рамка во која се дефинирани методите и атрибутите кои треба да бидат вклучени во одреден тип на објект.Објектно ориентираните бази на податоци покрај едноставни типови на податочни елементи можат да претставуваат и комплексни мултимедијални типови на податоци, како што се мапи, слики и звук. Овој модел се применува и во веб работното окружување. Недостаток на објектно ориентираните бази на податоци е бавната работа. Па поради тоа, не се користат за складирање накласични трансакциски податоци, туку честопати се комбинираат со релационите бази на податоци.

Мултимедијалните бази на податоци  управуваат со податоци кои можат да бидат во различни формати, покрај стандардните текстуални и нумерички формати. Овие формати опфаќаат слики, дигитализирани фотографии, графика и сл. На тој начин се овозможува во компјутерите на организациите да бидат складирани документи, мапи, фотографии, слики и видео снимки.


Хипермедијскиот модел  на базите на податоци ги складира информациите во облик на темиња, кои се поврзани со врски креирани од страна на корисникот. Темињата можат да содржат текст, слики, звук, видео или компјутерски програми. Пронаоѓањето на информациите не мора да ја следи однапред одредената организациска шема, бидејки корисниците можат да ги поврзат информациите со било кој а врска преку гранење.


Складишта со податоци

Складиштата со податоци се уште една верзија на базите на податоци која е наменета за подршка на системите на одлучување, на извршните информациски системи, на онлајн аналитиката обработка на податоци (OLAP)и на другите активности на крајниот корисник за создавање на извештаи и прашални пребарувања. Карактеристично за овој тип на база на податоци е што обезбедува вкупен поглед на податоците на корисникот, кој може да комбинира различни податоци од оперативни системи и некомпатибилни бази на податоци.
      Складиштата со податоци содржат повеќегодишни историски податоци потребни за проширување на прогнозирачките можности на системите за одлучување. Станува збор за огромни структури кои се до милион пати поголеми од класичната база на податоци. Изворот на податоци за едно складиште е секогаш активна база на податоци. Тогаш кога определен податок не е веќе „актуелен“ тој се пренесува од базата на податоци во складиштето од каде никогаш не се брише. Поради ваквата структура при создавањето наскладишта, потребно е да се користат специјализирани методологии за моделирање на податоците.



Системи за управување со бази на податоци

Програмата која ги контролира и управува податоците и врските помеѓу нив апликативните програми се вика систем (програм) за управување со базата на податоци. Комбинацијата на база на податоци, систем за управување со базата на податоци и апликативни програми за пристап кон базата на податоци во организациите се вика систем на база на податоци.Луѓето одговорни за системите на бази на податоци во компаниите се викаат администратори на базите на податоци.
Многу од овие системи нудат дополнителни алатки за создавање на апликации наменети за крајните корисници кои што интерактираат со податоците сочувани во базата. Системот за управување со бази на податоци(СУБП) може да биде лоциран на еден персонален компјутер или пак на повеќе големи компјутери кои се поврзани меѓу себе. Базите не се наменети само за складирање на зборови и броеви, туку и за складирање на звучни сигнали,цртежи и видео материјали. Постојат многу специјализирани бази на податоци,кои зависат од типот и форматот на складираните податоци. Така на пример,базата на податоци со географски информации може да содржи податоци за локации кои се поклопуваат со мапите. Со користење на овие податоци корисникот може просторно да ја види локацијата. Базите на знаење можат да ги чуваат правилата за донесување на одлуки, а мултимедијалните бази на податоци ги чуваат податоците во различни медијски форми: звук, видео,слики, графички анимации и текст.
    Некои програми за управување со базите на податоци се дизајнирани за микрокомпјутери (како на пример MS Access), додека други се дизајнирани за мини и големи компјутери (на пример Oracle).Во последно време, како последица на зголемената моќ на сите типови компјутери и глобалното поврзување во компјутерски мрежи, изгубена е класичната граница помеѓу програмите за управување со бази на податоци за микро компјутери или миникомпјутери и големи компјутери.
      Системите за управување со релациони бази на податоци спаѓаат во две главни категории според тоа дали за основа имаат датотека или сервер .
Базите на податоци базирани на датотека се чуваат во една датотека (на пример Microsoft Access), лесно се дистрибуираат, но немаат премногу добри перформанси. Од друга страна базите на податоци базирани на серверски модел (на пример Microsoft SQL Server) имаат подобрени перформанси, можат да подржат повеќе истовремени корисници, но се покомплицирани за одржување како и за дистрибуција во други средини. При одлуката за креирање на база на податоци може да се одбере некој од следниве системи за управување.



Microsoft Acccess е веројатно најдостапниот и најдистрибуираниот производ кој што доаѓа како дел Microsoft Office.Се работи за одличен производ кој треба да создаде бази на податоци за мали и средни претпријатија со просечен проток на информации. Исто така се користи и во тест околини за поголеми проекти, кога буџетот не дозволува по комплицирани начини на пристап.
 

Microsoft SQL Server е претставен како најсодржаниот производ на бази на податоци што постои на пазарот. Лесен е за имплементација и користење, а воедно е стабилен, пренослив и доверлив. Овој корпоративен производ содржи импресивни алатки и е целосно оспособен за веб интеракција. Главните недостатоци се високата цена и ограниченоста на Windows работната околина. 


My SQL е најпопуларниот систем за управување со релациони бази на податоци кој има отворен код. Не ги содржи додатоците на другите системи, но за тие кои што имаат ограничен буџет,My SQL е вистинско решение. Може да се дистрибуира во различни околини со различни оперативни системи и е добра алтернатива на Microsoft Acccess, а понекогаш и на Microsoft SQL Server.Недостатоците се сложените процедури за инсталација и конфигурација и потребното техничко знаење за да се користи системот.Oracle е најсовремениот и најсодржајниот систем на управување со релациони бази на податоци. Лесно ги надминува своите конкуренти во однос на повеќе карактеристики поврзани со перформансите, безбедноста и стабилноста. Ова моќно решение може да распредели огромни бази на податоци низ повеќе компјутери со различни оперативни системи. Но сето ова сепак доаѓа со прилично висока цена, не само за лиценците за користење на софтверот туку и за најмувањето на Oracle администратор.
 

SQL Системите за управување со релациони бази на податоци користат специјален јазик за комуникација со базата на податоци наречен SQL. Тој овозможува да се извршат сложени пребарувања со релативно едноставни барања. Припаѓа на групата прашални јазици.SQL јазикот се состои од четири компоненти: јазик за дефинирање на податоци, јазик за манипулација соподатоци, јазик за поставување прашања и јазик за контрола на податоците.           -Јазикот за дефинирање на податоци се користи за да се определи содржината и структурата на базата на податоци. Основната задача која ј аизвршува е воспоставување на врска помеѓу логичкиот и физичкиот поглед на податоците.
     -Јазикот за дефинирање на податоците ги дефинира физичките карактеристики на секој запис, полињата кои го сочинуваат записот,како и основните карактеристики на полињата: логичкото име (преку кое се референцираат), типот на податокот (алфанумерички датум, време и тн.) и должина на полето (максимална должина на карактери).                                              -Јазикот за манипулација со податоците претставува јазик од трета или четврта генерација. Јазикот содржи наредби кои им овозможуваат на крајните корисници и програмери да ги селектираат податоците и да ги користат во различни апликации.  Јазикот за поставување прашања се користи за добивање на специфични информации од базата на податоци. Наредбите од овој подјазик ги прегледуваат податоци од различни табели и ги спојуваат согласно условите наведени во структурираното прашање. Самите податоци и објекти на базата на податоци не се менуваат, туку се читаат и толкуваат.
 - Јазикот за контрола на податоците се употребува за дефинирање на различни нивоа на кориснички привилегии при комуникацијата со базата на податоци. Со овие наредби на специфичен корисник може да му се дозволи,ограничи или целосно забрани пристапот кон одредени елементи од базата на податоци
.

Креирање на бази на податоци

  За да се креира една база на податоци, дизајнерот мора да создаде концептуален и физички проект. Концептуалниот проект е апстрактен модел на базата на податоци од гледна точка на корисникот и деловното работење.Физичкиот дизајн ги прикажува податоците како што ќе бидат сместени на физичката мемориска средина, најчесто диск . Концептуалниот проект го опишува начинот на кој се групирани податоците. Во оваа фаза треба да се идентификуваат врските помеѓу елементите на податоците и начинот на кој треба да се групираат од аспект на најефикасно задоволување на корисничките барања. Процесот треба да ги идентификува редундантните елементи на податоците. За да се постигнат овие цели, се применуваат техниките на моделирање и нормализација на податоците и нивните врски.

Моделирање на податоците и нивните врски                              Концептуалниот модел на податоци најчесто се прикажува со дијаграм на ентитетски врски, односно ER (Entity Relationship) дијаграмите. ER дијаграмот се состои од ентитети, атрубути и врски. Ентитетите обично се претставуваат со правоаголници, атрибутите со елипси, а врските со ромбови.





Слика 2. Релација 1 према многу помеѓу ентитетите Студент и Професор 


На сликата е прикажан пример на два ентитети, со неколку атрибути и врска помеѓу нив. Врската е од типот 1 према многу (1:N) што значи еден студент слуша повеќе предмет(N).Релацијата може да биде од типот( М:N),што би значело дека еден студент може даима повеќе предмети (N) кај повеќепрофесори, но и еден професор да има повеќе студенти (М)



Нормализација на релациони бази на податоци

 За да ефикасно се искористат релационите бази на податоци и елиминираат редундантните елементи на податоците, неопходно е комплетно групирање на податоците. Процесот на креирање на мали и стабилни структури на податоци од сложени групи на податоци се вика нормализација.                           Нормализација е метод за анализирање на релациската база на податоци во нејзината наједноставна форма со минималан редунданса,максимален интегритет на податоци и најдобри карактеристики од аспект на обработката на податоци. Целите на процесот на нормализација се:
   
1. Елиминирање на редундансата предизвикана со повторувањ еполињата во рамките на датотеките, на полињата на полињата кои директно него опишуваат ентитетот и на полињата кои можат да бидат изведени од други полиња;
  2. Избегнување на аномалиите при ревизија на базата, како што се грешките при внесот, бришењето и модифицирање на записите;
  3.Точно претставување на елементите кои се моделирани;
  4.Едноставно одржување и преглед на информации.Постојат неколку нивоа на нормализација . Тие се надградуваат една на друга. Клучни концепти при процес на нормализација се функционални зависности на полињата и клучните полиња. Функционална зависност е врска помеѓу атрибутите, при што дадена вредност на еден атрибут доведува до вредност на друг атрибут.
Базите на податоци можат да бидат мали, големи, со слободен пристап или пак со ограничен пристап, сместени на физичка локација или пак на неколку. Според овие критериуми, во практиката можат да се сретнат индивидуални, заеднички, дистрибуирани, јавни и клиент/сервер бази на податоци. Аналитичката обработка на податоците се појавила како последица за потребата за пребарување на трансакциските податоци и создавање на корисни информации, потоа за овозможување на поголема иницијатива на корисниците кои не ги познаваат јазиците како што е SQL, како и барањата за автоматизација на традиционалната аналитичка работа на деловните луѓе.                            
    За поуспешна аналитичка обработка, на корисниците им е потребен вкупен и брз поглед на податоците и информациите. Тоа е основната причина за создавањето на складиштата со податоци, чија основна примена е можност за користење на трансакциски податоци, историски податоци и податоци од други системи. Практиката покажала дека кога се работи со голема количина на податоци, ефикасноста на SQL и сродните јазици се намалува.
Складиштата со податоци се надградуваат со OLAP и трагање низ податоците.



OLAP (On Line Analytical Processing)претставува софтверска технологија која овозможува на аналитичарите и на менаџерите брз,интерактивен, конзистентен и разноврстен пристап кон податоците иинформациите. Складиште со податоци е концепт за складирање на агрегирани и филтрирани податоци кои овозможуваат слоевит, односно мултидимензионален пристап кон податоците, каков што е потребен за донесување на одлуки од највисоко стратешко ниво.

Трагањето низ податоците (Data Mining) пак, се однесува на автоматското откривање на експлицитни законитости, правила и индиректни  содржини во големи бази на податоци на современите информациски системи.Трагањето низ податоците треба да ги вклучи елементите на базата на знаење кои се користат во експертските системи и да ги анализира податоците со цел и дентификација на врските помеѓу на изглед „неповрзаните податоци“. Од овие причини изразот Data Mining се сретнува и под името откривање на знаење во базите на податоци, односно Knowledge Discovery in Databases (KDD).

No comments:

Post a Comment