Pentru a înțelege extragerea datelor, este important să înțelegem natura bazelor de date, colectarea datelor și organizarea datelor. Acest lucru este fundamental pentru disciplina mineritului de date și va avea un impact direct asupra calității și fiabilității tuturor activităților de minerit de date. În această secțiune, vom examina diferențele dintre bazele de date, depozitele de date și seturile de date. Vom examina, de asemenea, unele dintre variațiile terminologiei folosite pentru a descrie atributele datelor.
Deși vom examina diferențele dintre baze de date, depozite de date și seturi de date, vom începe prin a discuta ce au acestea în comun. În Figura 2-1, vedem unele date organizate în rânduri (afișate aici ca A, B etc.) și coloane (afișate aici ca 1, 2 etc.). În diferite medii de date, acestea pot fi denumite prin nume diferite. Într-o bază de date, rândurile ar fi denumite tupluri sau înregistrări, în timp ce coloanele ar fi denumite câmpuri.
Figura 2-1: Date aranjate în coloane și rânduri.
În depozitele de date și seturile de date, rândurile sunt uneori denumite observații, exemple sau cazuri, iar coloanele sunt uneori numite variabile sau atribute. Din motive de coerență în acest ghid, vom folosi terminologia observații pentru rânduri și atribute pentru coloane. Este important să rețineți că RapidMiner va folosi termenul exemple pentru rândurile de date, așa că rețineți acest lucru în restul textului.
O bază de date este o grupare organizată de informații într-o anumită structură. Containerele bazei de date, cum ar fi cel din figura 2-2, sunt numite tabele într-un mediu de bază de date. Majoritatea bazelor de date utilizate astăzi sunt baze de date relaționale — sunt concepute folosind multe tabele care se relaționează între ele într-un mod logic. Bazele de date relaționale conțin în general zeci sau chiar sute de tabele, în funcție de dimensiunea organizației.
Figura 2-2: O bază de date simplă cu o relație între două tabele.
Figura 2-2 ilustrează un mediu de bază de date relaționale cu două tabele. Primul tabel conține informații despre proprietarii de animale de companie; al doilea, informații despre animalele de companie. Tabelele sunt asociate prin o singură coloană pe care o au în comun: Owner_ID. Prin corelarea tabelelor între ele, putem reduce redundanța datelor și îmbunătăți performanța bazei de date. Procesul de separare a tabelelor și, prin urmare, de reducere a redundanței datelor se numește normalizare.
Majoritatea bazelor de date relaționale care sunt concepute pentru a gestiona un număr mare de citiri și scrieri (actualizări și extrageri de informații) sunt denumite sisteme OLTP (online transaction processing – procesare online a tranzacțiilor). Sistemele OLTP sunt foarte eficiente pentru activități de volum mare, cum ar fi casieria, unde multe articole sunt înregistrate prin scanere de coduri de bare într-o perioadă foarte scurtă de timp. Cu toate acestea, utilizarea bazelor de date OLTP pentru analiză nu este, în general, foarte eficientă, deoarece pentru a prelua date din mai multe tabele în același timp, trebuie scrisă o interogare care să conțină îmbinări. O interogare este o metodă simplă de preluare a datelor din tabelele bazei de date pentru vizualizare. Interogările sunt de obicei scrise într-un limbaj numit SQL (Structured Query Language). Deoarece nu este foarte util să interogăm doar numele de animale de companie sau numele proprietarilor, de exemplu, trebuie să unim două sau mai multe tabele împreună pentru a prelua atât animalele de companie, cât și proprietarii în același timp. Alăturarea necesită ca la computer să se potrivească coloana Owner_ID din tabelul Owners cu coloana Owner_ID din tabelul Pets. Când tabelele conțin mii sau chiar milioane de rânduri de date, acest proces de potrivire poate fi foarte intens și consuma mult timp chiar și pe cele mai robuste computere.
Pentru a menține bazele noastre de date tranzacționale să funcționeze rapid și fără probleme, este posibil să dorim să creăm un depozit de date. Un depozit de date este un tip de bază de date mare care a fost denormalizată și arhivată. Denormalizarea este procesul de combinare intenționată a unor tabele într-un singur tabel, în ciuda faptului că aceasta poate introduce date duplicate în unele coloane (sau, cu alte cuvinte, atribute).
Figura 2-3: O combinație de tabele într-un singur set de date.
Figura 2-3 ilustrează cum ar putea arăta datele noastre de exemplu simplu dacă ar fi într-un depozit de date. Atunci când proiectăm baze de date în acest fel, reducem numărul de asocieri necesare pentru a interoga datele conexe, accelerând astfel procesul de analiză a datelor noastre. Bazele de date concepute în acest mod sunt denumite sisteme OLAP (online analytical processing – prelucrare analitică online).
Sistemele tranzacționale și sistemele analitice au scopuri conflictuale când vine vorba de viteza și performanța bazei de date. Din acest motiv, este dificil să proiectați un singur sistem care să servească ambele scopuri. Acesta este motivul pentru care depozitele de date conțin în general date arhivate. Datele arhivate sunt date care au fost copiate dintr-o bază de date tranzacțională. Denormalizarea are loc de obicei în momentul în care datele sunt copiate din sistemul tranzacțional. Este important să rețineți că, dacă o copie a datelor este făcută în depozitul de date, datele pot deveni nesincronizate. Acest lucru se întâmplă când se face o copie în depozitul de date și apoi, ulterior, se face o modificare a înregistrării inițiale (observarea) în baza de date sursă. Activitățile de extragere a datelor efectuate pe observații nesincronizate pot fi inutile sau, mai rău, înșelătoare. O metodă alternativă de arhivare ar fi să mutați datele din sistemul tranzacțional. Acest lucru asigură că datele nu vor fi desincronizate, cu toate acestea, face ca datele să nu fie disponibile în cazul în care un utilizator al sistemului tranzacțional trebuie să le vizeze sau să le actualizeze.
Un set de date este un subset al unei baze de date sau al unui depozit de date. De obicei, este denormalizat, astfel încât este utilizat doar un singur tabel. Crearea unui set de date poate conține mai mulți pași, inclusiv adăugarea sau combinarea tabelelor din tabelele bazei de date sursă sau simplificarea unor expresii de date. Un exemplu în acest sens poate fi schimbarea unui format de dată/oră de la „10-DEC-2002 12:21:56” la „12/10/02”. Dacă acest din urmă format de dată este adecvat pentru tipul de extragere de date efectuată, ar fi logic să simplificăm atributul care conține datele și orele când ne creăm setul de date. Seturile de date pot fi alcătuite dintr-un eșantion reprezentativ al u nui set mai mare de date sau pot conține toate observațiile relevante pentru un anumit grup. Vom discuta metodele și practicile de eșantionare în Capitolul 3.
Sursa: Dr. Matthew North, Data Mining for the Masses, licența CC BY 3.0. Traducere și adaptare de Nicolae Sfetcu
© 2022 MultiMedia Publishing, Mineritul de date
Lasă un răspuns