Documente noi - cercetari, esee, comentariu, compunere, document
Documente categorii

Suportul tehnologic al aplicatiilor erp

Suportul tehnologic al aplicatiilor ERP


Asa cum s-a vazut in Capitolul 1 elementul fundamental pentru functionarea aplicatiilor ERP il constituie sistemul de gestiune a bazelor de date. Integrarea unor tehnologii Business Intelligence avansate cu solutiile de baze de date de referinta existente pe piata a permis companiilor sa implementeze functii pentru procesarea eficienta a datelor acumulate prin solutiile de acest tip. In cele ce urmeaza vor fi prezentate principalele baze de date utilizate in prezent la scara larga in domeniul IT, precum si motivatia folosirii bazei de date Oracle ca suport de dezvolatere.


1. MySql


Marea majoritate a aplicatiilor bazate pe Web utilizeaza informatii extrase din baze de date, pe baza carora sunt generate in mod dinamic pagini HTML care sunt trimise clientilor. Suportul pentru aceste baze de date este oferit de foarte multe produse, dar cel mai popular dintre ele ramane, poate si pentru ca este distribuit gratuit, MySql.



MySQL este un produs matur, scalabil, rapid si - in general - gratuit, cu caracteristici foarte potrivite pentru multe dintre aplicatiile care folosesc suportul de baze de date pentru Web.

De asemenea, detaliile tehnice referitoare la MySQL se aplica in orice mediu de tip Unix si probabil chiar si in Windows.

MySQL opereaza in baza unui model client/server. Orice masina care doreste sa proceseze interogari asupra unei baze de date MySQL trebuie sa ruleze MySQL server (mysqld), care este responsabil de tot traficul de tip incoming/outgoing cu baza de date. Ca orice alt server, mysqld 'asculta' pe un port particular (3306) eventualele cereri de conexiune ale unui 'client' - orice aplicatie care trimite cereri catre o baza de date via mysqld. Acest client poate fi un simplu script in Perl care - gratie modulului DBI - poate trimite o cerere catre baza de date prin intermediul serverului MySQL, sau chiar clientul 'command-line' mysql. Clientul mysql este o interfata interactiva pentru trimiterea de comenzi catre server.

Pentru instalare este nevoie de o distributie MySQL, desigur. In functie de sistemul de operare, de facilitatile dorite si de gradul de maturitate cerut pentru MySQL, se alege o distributie de pe http://web.mysql.com sau de pe un mirror convenabil.

La finalul instalarii se afiseaza pe consola o cale (path) si o comanda pentru setarea parolei de acces la administrarea serverului MySQL. Se da comanda si parola dorita. Orice operatiune ulterioara de administrare se poate face prin mysqladmin. Se verifica starea de 'up & running' prin:

shell>Mysqladmin -u root -p status

sau prin

shell>Mysqladmin -u root -p ping

sau prin

shell>Mysqladmin -u root -p extended-status

shell> rpm -i MySQL-devel-3_22_27-1_i386.rpm


Modelul de securitate

Modelul folosit de MySQL se bazeaza pe username/password, hostname si privilegii si este similar celui generic folosit de sistemele Unix. Prin privilegii se inteleg in cazul MySQL operatiunile ce vor fi permise asupra bazei/bazelor de date, tabelelor sau indecsilor, cum sunt de exemplu SELECT, INSERT, UPDATE, DELETE, CREATE, DROP.


Microsoft SQL Server


In ziua de astazi organizatiile se confrunta cu numeroase provocari in ceea ce priveste datele, de exemplu necesitatea unor decizii mai rapide si mai avizate, necesitatea cresterii productivitatii si flexibilitatii personalului responsabil cu dezvoltarea si presiunea de a reduce bugetele IT generale simultan cu scalarea infrastructurii pentru a satisface cererile in continua crestere.

Microsoft SQL Server 2005 este solutia Microsoft pentru managementul si analiza datelor, care ofera securitate, scalabilitate si disponibilitate crescute pentru datele intreprinderii si aplicatiile analitice, facand crearea, implementarea si managementul acestora mai facile.

Generat avand la baza SQL Server 2000, SQL Server 2005 ofera o solutie integrata de management si analiza a datelor ,care va ajuta organizatiile sa:

Dezvolte, implementeze si administreze aplicatii la nivel de intreprindere mai sigure, scalabile si fiabile

Maximizeze productivitatea IT prin reducerea complexitatii crearii, implementarii si administrarii aplicatiilor pentru baze de date.

Partajeze date pe mai multe platforme, aplicatii si dispozitive pentru a facilita conectarea sistemelor interne si externe.

Controleze costurile fara a sacrifica performanta, disponibilitatea, scalabilitatea sau securitatea.


Pivire generala asupra Microsoft SQL server 2005

SQL Server este o solutie de management a datelor, usor de inteles, care ofera reale privilegii utilizatorilor printr-o platforma sigura, de incredere si productiva pentru enterprise data si aplicatiile BI. SQL Server ofera unelte puternice reducand complexitatea de creare, deploy, management si prin folosirea  de enterprise data si aplicatii analitice pe platforme variind de la device-uri mobile la sisteme enterprise data.

Platforma SQL Server 2005 include urmatoarele unelte:

Baze de date relationale: motor de relationare a bazei de date sigur, de incredere si scalabil, cu performante imbunatatite si suport pentru date structurate si nestrucurate (XML).

Serviciu de replicare: replicarea datelor pentru aplicatii de procesare a datelor distribuite sau mobile, disponibilitate marita a sistemului, concurenta scalabila cu spatiu de pastrare redundant pentru solutii enterprise reporting, si integrarea cu sistemele heterogene, inclusiv baze de date Oracle.



Serviciu de notificare: capabilitati avansate de notificare pentru dezvoltare si deploiment al aplicatiilor scalabile care pot sa ofere updateuri personalizate pentru o varietate de device-uri mobile conectate.

Serviciu de integrare: capacitatea de a extreage, incarca si transforma pentru depozitele de date.

Serviciu de analiz: capacitate de procesare analitica online (OLAP) pentru analiza rapida si sofisticata a seturilor de date mari si complexe folosind gazduire multidimensionala.

Serviciu de rapoarte: o solutie inteligenta pentru creearea, managementul si livrarea atat a rapoartelor traditionale orientate pe suport de hartie cat si rapoarte interactive bazate pe internet.

Unelte de management: SQL Server include unelte integrate de management pentru ajustarea si un management avansat al bazei de date, cat si o integrare stransa cu unelte cum ar fi Microsoft Operation Management (MOM) si Microsoft Sistem Management Server (SMS). Protocoalele de acces standard, reduc drastic din timpul necesar integrarii datelor in SQL Server. In plus, in SQL Server a fost conceput suport nativ de serviciu Web, pentru a asigura interoperabilitatea cu alte aplicatii si platforme.

Unelte de dezvoltare: SQL Server ofera uneltre de dezvoltare integrate pentru nucleul bazei de date, extragerea de date, transformare si incarcare (ELT),  data mining, OLAP, si rapoarte care sunt bine integrate in Microsoft Visual StudioŽ pentru a oferi capacitati de dezvoltare a aplicatiilor end-to-end. Fiecare subsitem important al SQL Server este insotit cu propriul sau model obiect si set de API-uri pentru a extinde sistemul de date in orice directie unica a afacerii.

Productivitate sporita: SQL Server ofera utilizatorilor informatii de busines critice ajustate pentru cerintele lor specifice, prin intermediul capabilitatilor inteligente de BI, si prin integrarea cu unelte familiare cum ar fi Microsoft Office System. Scopul este sa se extinda BI catre toti utilizatorii si astfel sa ofere acestora posibilitatea de a lua decizii bazate pe business mai bune.

Complexitate redusa: SQL Server simplifica dezvoltarea, deploymentul si managementul aplicatiilor analitice si strict din domeniul business prin oferirea un mediu flexibil de dezvoltare  pentru programatori si unelte integrate si automatizate de management pentru administratorii bazei de date.

Un cost total de detinere scazut: abordarea integrata si concentrarea asupra pricipiului ca baza de date sa fie  usor de utilizat ofera un cost de mentenanta scazut.


3. Oracle


Oracle consta dintr-un set complet de constructori de aplicatii si produse pentru utilizatori, cautand sa asigure solutii complete in tehnologia informatiei.

Aplicatiile Oracle sunt portabile peste un numar mare de statii de lucru si sisteme de operare, de la calculatoare personale la procesoare paralele.

Oracle este inzestrat cu un flexibil Sistem de Management al Bazelor de Date(DBMS) - Serverul Oracle - pentru stocarea si managementul informatiei utilizate de aplicatii.


Serverul Oracle cuprinde un DBMS care controleaza:

Stocarea de date in sfera bazelor de date dedicate;

Recuperarea de date pentru aplicatii utilizand tehnici de optimizare adecvate;

Securitatea bazelor de date si a taskurilor permise pentru anumiti utilizatori;

Consistenta si protectia datelor, incluzand arhivarea taskurilor si mecanisme de cautare

Comunicarea si integritatea informatiilor, cand bazele de date sunt distribuite intr-o retea.

Aplicatiile Oracle trebuie rulate pe acelasi computer ca si Serverul Oracle.

Alternativ, aplicatiile si utilitarele utilizate de ele pot sa fie rulate pe un sistem local pentru utilizator (sistemul 'client'), in timp ce Oracle DBMS ruleaza pe un altul (sistemul 'server').

In acest mediu 'client-server', un numar mare de resurse de calcul pot fi rulate.




Produsele Oracle contin:

Oracle TextRetrieval - tehnologie care adauga capabilitati de refacere completa a textului intr-o baza de date Oracle.

Pro*Oracle - serie de precompilatoare care permit accesul bazelor de date Oracle la limbajele de programare C, Cobol,Fortran,PL/1,Pascal si Ada.

Oracle Card - interfata utilizator pentru producerea aplicatiilor cu baze de date usor de folosit ce incorporeaza grafice si facilitati multimedia.

Oracle CASE - familie de instrumente care ajuta la analiza , designul si generarea aplicatiilor Oracle.

SQL*Plus - un instrument care permite o utilizare directa si interactiva a limbajului SQL pentru a accesa serverul Oracle, utilizand comenzi ad-hoc sau prin rularea fisierelor de comanda.


Mediul de dezvoltare auxiliar (CDE)

Instrumentul de dezvoltare a aplicatiilor principale formeaza un set inchis integrat numit 'Mediul de Dezvoltare Auxiliar'. Elementele de baza ale CDE includ limbajul procedural al lui Oracle, PL/SQL, facilitati grafice si comunicare intre produse.


Principalele instrumente CDE sunt:

Oracle Forms - permite ca aplicatii sofisticate bazate pe utilizarea ecranului sa fie construite repede si usor si permite utilizatorului sa ceara si sa manipuleze date intr-o structura cu forma convenabila ,la fel de bine ca afisarea imaginilor vizuale, si facilitati de accesare prevazute de alte produse CDE.

Oracle Reports - un puternic instrument pentru constructia si executia rapoartelor sofisticate cu fonturi de text si imagini multiple.

Oracle Graphics - permite construirea si afisarea aplicatiilor vizuale, incluzand harti, grafice, imagini si desene.

Oracle Book - prevede abilitatea de a crea si vizualiza documente care includ hipertexte, sunete digitale si videoclipuri.




PRODUESELE ORACLE


SQL, SQL*PLUS si PL/SQL


SQL

este limbajul utilizat pentru a accesa o baza de date relationala, inclusiv Oracle.

poate fi utilizat de fiecare instrument Oracle, cand accesul la baza de date este necesar.


PL/SQL

este limbajul Procedural al lui Oracle pentru scrierea aplicatiilor si pentru manipularea datelor in afara bazei de date.

poate include un subset al comenzilor SQL, cand accesul la baza de date este cerut.

este accesibil in fiecare din produsele CDE, de asemenea in insusi serverul Oracle (daca optiunea procedurala este instalata).


SQL*Plus

este un produs Oracle in care limbajele SQL si PL/SQL pot fi utilizate.

de asemenea are propriul limbaj de comanda pentru controlul comportarii produsului si pentru formatarea rezultatelor interogarilor SQL.


In concluzie, SQL si PL/SQL sunt limbaje care sunt utilizate intr-un numar de produse Oracle. SQL*Plus este unul din produsele pe care acestea se afla.

Oracle este un exemplu pentru principiile de baza ale bazelor de date relationale prezentate in continuare.


Principiile de baza ale bazelor de date relationale

Principiile modelului relational au fost pentru prima data expuse de Dr. E. F.Codd, care in iunie 1970 a publicat un articol numit 'Un model relational de date pentru marile banci de date'. In acest articol Dr. Codd a propus modelul 'relational' pentru sistemele de baze de date.



Baza de date relationala este perceputa de utilizatorii sai ca o colectie de tabele bidimensionale care sunt usor de inteles. Sunt doar patru concepte de baza:

tabele

coloane

randuri

campuri

Modelul relational imita procesele unei ramuri a algebrei cunoscuta sub numele de 'Algebra relationala'. Aceste procese implica:

o colectie de obiecte cunoscute sub numele de RELATII;

o multime de operatori ce actioneza asupra relatiilor pentru a produce noi relatii.

O Relatie poate fi inteleasa ca o Tabela. Modificarea datelor este realizata prin operatiile relationale aplicate asupra tabelelor.


Operatori relationali :

Restrictia - este o operatie care preia si afiseaza datele din relatie. Este posibil sa se afiseze toate randurile sau doar randurile care indeplinesc o conditie sau mai multe conditii. Aceasta este de multe ori numita 'submultime orizontala'

Proiectia - este operatia care afiseaza anumite coloane din relatie si de aceea este numita 'submultime verticala'.

Produs - este rezultatul obtinut cand randurile a doua multimi de date sunt concatenate conform conditiilor specificate.

Join - este rezultatul obtinut cand randurile a doua multimi de date sunt concatenate conform conditiilor specificate.

Reuniunea - afiseaza toate randurile care apar in una, in cealalta sau in ambele din cele doua relatii.

Intersectia - afiseaza toate randurile care apar in ambele din cele doua relatii.

Diferenta - afiseaza randurile care apar numai intr-o singura relatie (SQL utilizeaza operatorul minus).


Proprietati ale bazelor de date relationale:

O baza de date relationala apare ca o colectie de relatii (tabele) catre utilizator.

Formatul coloanei/randului este familiar si usor pentru vizualizarea datelor .

Exista o multime de operatori pentru partitionarea si combinarea relatiilor (selectia, proiectia, produsul, joinul, uniunea, intersectia, diferenta).

Nu sunt pointeri expliciti; conexiunile sunt facute numai pe baza datelor.

Limbajul utilizat pentru interogarea bazei de date este non-procedural si similar limbii engleze.

Utilizatorul nu specifica calea de acces si nu are nevoie sa stie cum este informatia aranjata fizic.

Comenzile pentru refacerea datelor si acelea pentru realizarea schimbarilor in baza de date sunt incluse intr-un singur limbaj SQL.

Exista o independenta totala a datelor.


Proprietatile relatiilor tabelare

O singura tabela are urmatoarele proprietati:

Nu exista randuri duplicate ;

Nu exista nume de coloana duplicate ;

Ordinea randurilor este neimportanta ;

Ordinea coloanalor este neimportanta ;

Valorile sunt atomice (nedecompozabile).


4. Motivatia folosirii bazei de date ORACLE


In cadrul aplicatiei dezvolate in acest proiect cerintele clientului nu ar justifica folosirea unei baze de date atat de puternice, sau a instrumentelor de dezvoltare a aplicatiilor continute in Oracle Developer. Motivul alegerii facute se regaseste in dorinta de a urma o cariera profesionala in domeniul designului bazelor de date a dezvoltarii de aplicatii bazate pe baze de date si in particular pe suport Oracle, recunoscut ca lider in acest domeniu. Totusi aceasta justificare subiectiva are in spate un calcul obiectiv al avantajele oferite de baza de date Oracle si anume:

Securitatea

Integritatea datelor

Facilitatea de back-up

Managementul resurselor

Portabilitate

Dezvoltare ulterioara (modularitate)

, avantaje despre care voi discuta in detaliu in capitolul urmator.