Modelul de componente al sistemului este prezentat in Figura 2 de mai jos. O componenta reprezinta o entitate software sau hardware care oferă o anumita funcționalitate in cadrul sistemului. Diagrama din Figura 2 prezinta componentele sistemului si relațiile logice dintre ele. Sunt reprezentate atat componentele noi ale sistemului, cat si componentele existente in cadrul institutiei cu care acestea interactioneaza, pentru a oferi o imagine de ansamblu asupra modelului.
Figura 2 - Modelul de componente al sistemului
Componentele Baza de date interogari si Baza de date raportare au rolul de a stoca intr-un mod structurat datele ce vor fi replicate din baza de date sursa (Baza de date operationala). Componenta Baza de date interogari va fi implementata astfel incat sa functioneze cu aplicatiile Portal existente si cu Serviciul web interogari utilizat in prezent de sisteme externe pentru accesarea informatiilor, cu modificari minime ale acestora. In cazul in care sunt necesare modificari la nivelul aplicatiilor existente acestea intra in responsabilitatea ofertantului. Ofertantul va prezenta in oferta cum raspunde solutia ofertata din perspectiva integrarii dintre aplicatiile Portal existente / Serviciul web interogari si baza de date propusa a fi implementata.
Principalele functionalitati pe care cele doua componente vor trebui sa le ofere sunt:
-
Sa fie un sistem de gestiune a bazelor de date de tip relaţional;
-
Sa utilizeze limbaj standard SQL pentru manipularea datelor (cel puțin SELECT, UPDATE, DELETE)
-
Sa utilizeze limbaj standard pentru definire (cel puțin CREATE, ALTER, DROP, RENAME)
-
Sa permita View-uri / View-uri materializate pentru tabele sau mecanisme similare
-
Sa permita diverse tipuri de date printre care cel puțin: întregi, boolean, șir de caractere de mărime fixă și de mărime variabilă, numere în virgulă flotantă, date binare de mărime fixă și de mărime variabilă, JSON sau similar, dată și timp;
-
Sa permita minim 250 coloane într-un tabel;
-
Sa permita funcții tip fereastră (cel puțin RANK, DENSE_RANK, LEAD, ROW_NUMBER)
-
Sa permita indecși de tip primar, coloană unică și multi-coloană;
-
Sa permita partiționare pentru date și indecși
-
Sa permita importul şi exportul de date în formate de date general acceptate;
-
Sa permita minimizarea conflictelor de acces la date;
-
Sa ofere suport pentru proceduri stocate şi triggeri;
-
Sa ofere suport pentru tranzacţii autonome;
-
Sa permita partiţionare logică a tabelelor mari în scopul reducerii timpului de acces la date după diverse criterii de partiţionare (list, range, hash);
-
-
Sa ofere suport pentru Unicode UTF-8;
-
Sa ofere suport de replicare bidirecţională a datelor între două instanţe ale bazei de date;
-
Sa ofere mecanisme de control şi blocare la nivel de înregistrare şi mecanisme de asigurare a consistenţei la citire, pentru a permite accesul în mod concurent al utilizatorilor la date;
-
Sa permita restricţionarea accesului la nivelul obiectelor bazei de date;
-
Sa permita instalarea unei singure baze de date pe mai multe noduri (arhitectură de tip cluster activ-activ) pentru a asigura toleranţă la defecte hardware sau nefuncţionare planificată, scalabilitate şi disponibilitate crescută a sistemului;
-
Componenta va trebui sa fie disponibila şi 100% funcţionala pentru utilizatori în cazul apariţiei unei defecţiuni hardware de orice fel la oricare din serverele cluster-ului pe care ruleaza;
-
Va oferi un utilitar grafic pentru administrarea si monitorizarea SGBDR;
-
Baza de date relaţională va avea componente pentru optimizarea interogărilor;
-
Va exista posibilitatea de a cripta tot traficul de reţea dinspre şi către baza de date;
-
Va permite oprirea temporară a unui nod pentru mentenanţă, suport, upgrade sistemul în acest timp să rămână disponibil;
-
Stocare criptată a datelor în baza de date în mod transparent faţă de aplicaţie, fără a fi necesară scrierea de cod în aplicaţie pentru a se cripta şi decripta datele stocate în baza de date;
3.6.6.2Replicare date
Replicarea datelor intre Baza de date operationala existenta (baza de date de productie a sistemelor RC, RL si BPI) si Baza de date interogari portal, respectiv Baza de date raportare se va realiza prin intemediul componentei Replicare date. Rolul acestei componente este de a capta modificările aparute in baza de date sursa si de a le transfera catre componenta de Transformare date, in vederea modificarii structurilor de date si/sau a campurilor si aplicarii acestora in baza de date destinatie.
Componenta Replicare Date va oferi suport tranzactional astfel incat sa nu se inregistreze in bazele de date destinatie tranzactii incomplete, in cazul aparitiei unei erori in baza de date sursa.
Captarea datelor modificate in baza de date sursa se va face prin mecanisme care nu au impact asupra performanta acesteia. Se accepta mecanisme de captare a modificărilor bazate pe log-ul tranzacțional al bazei de date. Nu se accepta mecanisme ce presupun definirea de trigger-i pe tabelele bazei de date.
Funcționalitățile majore pe care trebuie sa le asigure componenta Replicare date sunt:
-
posibilitatea de replicare din baze de date Oracle catre diverse tipuri de baze de date (minim Oracle,MS SQL, baza de date ofertata) sau catre data warehouse-ul Big Data;
-
replicarea se va baza pe mecanisme ce nu impacteaza performanta bazelor de date, cum ar fi log-ul tranzactional al bazei de date;
-
posibilitatea de replicare bi-directionala intre baze de date Oracle;
-
Soluția trebuie să permită replicare de tabele, secvente oracle, precum și comenzi DDL.
-
Soluția trebuie să permită replicarea întregii baze de date, sau a unui set de tabele, sau chiar a unei singure tabele. De asemenea să permită doar replicarea unui subset din coloanele, sau rândurile tabelei. Această funcționalitate este esențială având în vedere specificul replicărilor necesare în cadrul proiectului, unde se vor replica doar acele înregistrări necesare analizelor efectuate de platforma Big Data ca ajutor pentru procesul investigativ.
-
Soluția trebuie să funcționeze cu variantele de bază de date Oracle din sistemul informatic integrat existent;
-
Soluția trebuie să aplice în timp real modificările în baza de date destinație, întârzierea între sursă și destinație să fie minimă.
-
Soluția trebuie să fie capabilă să replice baze de date configurate atât în mod arhivare cât și baze de date aflate în NONARCHIVE mode.
-
Soluția trebuie să păstreze bazele de date destinație deschise astfel încât poată fi utilizate pentru operațiunile curente specifice aplicațiilor care rulează pe aceste baze de date.
Dostları ilə paylaş: |