Home - qdidactic.com
Didactica si proiecte didacticeBani si dezvoltarea cariereiStiinta  si proiecte tehniceIstorie si biografiiSanatate si medicinaDezvoltare personala
referate stiintaSa fii al doilea inseamna sa fii primul care pierde - Ayrton Senna





Aeronautica Comunicatii Drept Informatica Nutritie Sociologie
Tehnica mecanica

Baze de date


Qdidactic » stiinta & tehnica » informatica » baze de date
Baze de date statistice



Baze de date statistice


Baze de date statistice


O baza de date statistica este o baza de date din care se pot obtine informatii aplicand operatii agregate unor submultimi de elemente continute in ea. Prin formularea unor intrebari, unii utilizatori pot sa obtina informatii la care in mod obisnuit nu au acces. Daca un utilizator nu are acces la campul SALARIU, dar poate face suma salariilor unor submultimi de cel putin m persoane, cu m dat, pentru a afla salariul lui Ionescu el poate calcula suma tuturor salariilor si suma tuturor salariilor fara al lui Ionescu, prin scaderea acestor doua valori rezultand salariul lui Ionescu la care nu avea acces.

Pentru a preveni astfel de situatii, unele sisteme de baze de date tin o evidenta a intrebarilor puse de fiecare utilizator in parte si refuza sa raspunda in anumite conditii:



sunt implicate mai putine inregistrari decat un numar dat m;

sunt implicate mai mult de n-m inregistrari, unde n este numarul total de elemente;

sunt implicate mai mult de p inregistrari comune cu o cerere anterioara; etc.

Fie o baza de date cu n inregistrari ce au valorile v=(v1,v2,,vn) corespunzatoare unui camp care nu este cheie. O cerere liniara este o suma de forma: c1v1,c2v2,,cnvn, unde cieste un numar real oarecare pentru orice i. Daca r1,r2,,rq este un numar de q cereri liniare cu ri=ci1vi1++cinvin spunem ca baza de date este compromisa daca exista o functie f astfel incat una din valorile vi se obtine aplicand f valorilor r1,,rq – vi=f(r1,,rq).


Daca exista o functie f astfel incat vi=f(r1,,rq), atunci exista o functie liniara g cu aceeasi proprietate, deci exista d1,,dq astfel incat d1r1+d2r2++dqrq=vi.

Daca notam cu M matricea cu q linii si n coloane a coeficientilor cererilor liniare r1,,rq si cu d=d1,d2,,dq, rezulta ca baza de date este compromisa daca si numai daca exista un vector d astfel incat dM=(0,,0,1,0,,0). Pentru a nu compromite baza de date, se fac constrangeri de forma:

fiecare linie din M are cel putin m elemente nenule;

oricare doua linii au cel mult k elemente nenule pe coloane comune.

Exemplu: pentru valorile v1,v2,v3,v4,v5,v6,v7 cu cererile r1=v2+v3+v4, r2=v5+v6+v7, r3=v1+v2+v5, r4=v1+v3+v6, r5=v1+v4+v7, baza de date este compromisa deoarece v1=(r3+r4+r5-r1-r2)/3, desi s-ar purea lua m=3 si k=0. Deci, punerea conditiei m=4 sau k=0 poate duce, eventual, la o baza de date care nu este compromisa.

Daca se folosesc cereri liniare in care se folosesc cel putin m valori, doua cereri au in comun cel mult k valori si se cunosc deja p valori, pentru a calcula un nou element necunoscut sunt necesare cel putin (m-p-1)/k+1 cereri.




Contact |- ia legatura cu noi -| contact
Adauga document |- pune-ti documente online -| adauga-document
Termeni & conditii de utilizare |- politica de cookies si de confidentialitate -| termeni
Copyright © |- 2024 - Toate drepturile rezervate -| copyright