Aceste date sunt proaste și de ce DBA-urile sunt mai importante decât oricând.

Aceste date sunt proaste și de ce DBA-urile sunt mai importante decât oricând.

"Bazele de date specializate, tehnologiile cloud și DevOps nu elimină rolul administratorilor, ci își extind funcțiile. Poate că nu sunt doar mesele. Dar rolul administratorului DB este încă important, chiar dacă această profesie nu are un nume. " Sin Galagher







În mintea celor dintre noi care au de lucru prea mult timp în domeniul tehnologiei informației, poziția „DBA“ ( „DBA“) dă naștere la un mod destul de specific. Reprezentăm pe cineva care își rupe parul din cauza problemelor legate de copierea de rezervă, erorile cu instantanee ale sistemului de fișiere, scheme de ieșire de sub control, planuri deraiate de creștere a capacității datorită cerințelor noi de aplicare, solicitări lente și acordarea perpetuă a performanțelor.

Toate aceste funcții ale administratorilor de bătrâni sunt încă aici și acolo, în special în întreprinderile mari, unde clusterele de baze de date gigant continuă să dețină centre de date. Dar virtualizarea, depozitul de date în cloud, serviciile micro, abordarea DevOps pentru dezvoltarea și rularea aplicațiilor și o serie de alți factori au schimbat în mod semnificativ modul în care organizațiile își păstrează datele și o gestionează. Multe roluri DBA tradiționale par controversate în noua lume fericită care ne promite o nouă generație de baze de date.

Bazele de date NoSQL nu necesită o schemă de date predefinită și multe replici sunt construite în mod implicit. Pregătirea serverelor noi pentru operare poate fi redusă la apăsarea mai multor comutatoare (butoane radio) și la bifarea paginii web. Echipele de dezvoltare selectează pur și simplu un punct din spațiul de stocare în cloud, cum ar fi Amazon Web Services Simple Storage Service (S3), și continuați o rolă. Și chiar dezvoltatorii de baze de date relaționale, cum ar fi Oracle, Microsoft și IBM, împing clienții spre modele de date-a-serviciu (DaaS), simplificând dramatic disponibilitatea și gestionarea echipamentelor.

S-ar putea să vă gândiți că acest lucru face munca administratorilor DB mai ușoară. În nici un caz.

"Cred că sarcinile administratorului [bazei de date] au devenit mult mai complexe", a declarat Chris Lalonde, vicepreședinte și director general al operațiunilor de date la Rackspace. - Până când nu vom avea cu siguranță mai multe echipamente și instrumente tehnologice, multe noi tehnologii vor fi mai puțin mature și vor trebui să fie îngrijite și prețuite (necesită mai multă grijă și hrănire). Vreau să spun că multe dintre sarcinile tradiționale ale administratorilor DB încă mai există sau ar trebui să existe ".

De fapt, toate aceste tehnologii magnifice noi subliniază datele profesionale, indiferent dacă este vorba despre un administrator de baze de date, un arhitect de date, un inginer de date sau chiar, în unele cazuri, un cercetător de date. "Astăzi, datele sunt și mai importante", a declarat Kenny Gorman, veteran de baze de date și co-fondator al Eventador (un serviciu de transmisie de date în timp real). - Companiile sunt obișnuiți să se bazeze pe baze de date pentru a "suna", pentru a lucra fără probleme și a da o responsabilitate bună. Dar astăzi datele vă fac într-adevăr mai competitive și există mai multe profesii diferite legate de date și mai multe tehnologii care le folosesc. Și o bază de date profesională este în centru. "

Un pas înainte.

Platformele non-relaționale au promis să reducă povara administratorilor bazei de date. Într-un fel, au făcut-o cu adevărat. Ravi Meyurem, vicepreședinte senior, Couchbase Inc. pe produse și evoluții, a comparat schimbarea sarcinilor DBA cu schimbarea conducerii unei mașini (de mulți ani): cu mult timp în urmă "pentru a conduce o mașină, trebuia să fii în esență un inginer; și când sa întâmplat ceva, a trebuit să opriți drumul și să urcați sub capotă. Acum lucrurile se ocupă de ele însele, dar nu le pot rezolva ".

Astfel de baze de date ca MongoDB și CouchBase, deși nu sunt relaționale, suportă interogări SQL. Ele au și alte aspecte care favorizează favorizarea DBA-urilor cu experiență. Dar ele oferă, de asemenea, "capacități de implementare dinamice care nu sunt disponibile pentru sistemele relaționale", susține Mayur. "Și adăugarea de noi structuri de date necesită, de obicei, o schimbare a schemei și duce la perioade de nefuncționare."

Datele ca un anumit serviciu au fost date "pentru achiziționarea de companii", consideră Meyurem. "Majoritatea companiilor nu păstrează informații critice în nor."

În timp ce un sistem vast de gestionare a bazelor de date relaționale necesită o înțelegere a întregului hardware și software, "următoarea generație de DBA-uri vor fi implicate în acest lucru mult mai puțin", explică Mayur. "Administratorul DB va fi necesar, de exemplu, pentru a: înțelege în mod cuprinzător bazele de date, dar nu numai" să se concentreze asupra sarcinilor cum ar fi planificarea capacităților. DBA-ul viitorului va trebui să știe când să furnizeze un număr mare de servere și când să le elimine din circulație.

Acest tip de scalabilitate dinamică a dus la alegerea serviciilor de date cloud bazate pe baze de date specializate și "Scheme de date-pe-service" (găzduite de ei înșiși sau pe un site extern de găzduire). În orice caz, serviciile de furnizare pot avea grijă de configurarea hardware-ului, a rețelei și a spațiului de stocare. Teoretic, DBA ar trebui să se concentreze asupra determinării când aplicația va avea nevoie de mai multe capabilități (volume mari) de baze de date. "Acesta este un exemplu al funcției DevOps, iar tratarea dinamică a provizioanelor este un profil ușor diferit", spune Mayur. "Ei nu au nevoie de atâtea abilități DBA pentru a fi mai eficienți, ar trebui mai degrabă să-și poată planifica capacitățile și să înțeleagă mai bine dezvoltarea".

Pentru cei care nu știu, DevOps este o practică care este folosită pe scară largă în prezent pe Web și în dezvoltarea serviciilor. Ea descrie modul în care echipele de dezvoltare a aplicațiilor lucrează împreună cu oamenii IT pentru a îmbunătăți continuu productivitatea, automatizarea și scalabilitatea software-ului și a sistemelor. Abordarea DevOps a devenit motorul principal al tranziției către baza de date NoSQL și alte tehnologii și interogări non-tradiționale de stocare. DevOps a dus la dezvoltarea serviciului Data-as-a-Service - în principal din cauza necesității de a automatiza scalarea capacităților bazei de date. Dar chiar și într-o lume strict relațională, trecerea la convertirea bazelor de date în serviciile cloud minimizează nevoia (și chiar și posibilitatea) de a controla modulul mic al configurației hardware din partea DBA.







Până în prezent, datele ca un anumit serviciu au fost date "la mila companiilor", consideră Meyurem. "Majoritatea companiilor nu păstrează informații critice în nor." Pionieri, a spus el, a folosit o abordare hibridă cu crearea platformei DAAS interne bazate pe platforme de cloud computing în propriile centre de date. Dar restul companiilor părăsesc în mare parte sistemele lor de relații critice așa cum este, iar tehnologiile cloud sunt folosite pentru proiecte noi. „Ei încă mai conțin administratori de baze de date, care sunt preocupați de programele existente, dar, de asemenea, au echipe DevOps de a disloca baze de date în mikroservisov mediu - servicii care nu ar trebui să fie un sistem relațional“, - a explicat Meyurem.

Dar, cu companiile de reținere a bazelor de date relaționale și se simt tot mai mult nevoia de reducerea decalajului dintre vechi și nou, situația este mai complicată decât simpla. Și chiar și atunci când organizația dată pe deplin la cererile de externalizare, având, de regulă, cele mai mari cerințe privind admini baza de date, ei încă mai au nevoie de un profesionist pentru a lucra cu datele pentru a intelege ceea ce au primit angajat.

Mai jos este schema bazei de date pentru platforma MediaWiki utilizată de Wikipedia. Unele baze de date specializate nu necesită explicit schemele, însă schema trăiește diferit, iar înțelegerea structurilor de date rămâne importantă.

Aceste date sunt proaste și de ce DBA-urile sunt mai importante decât oricând.

Zvonurile despre moarte sunt mult exagerate

"Înțelesul acestei declarații este că DBA este încă important", a declarat Gorman recent lui Ars. Ca de mult timp Oracle DBA și arhitect date în companiile care lucrează cu PayPal și eBay, Gorman a găsit el însuși cufundat în MongoDB pe Shutterfly, dar încă adept NoSQL. Într-un articol el a scris, ca arhitect principal al furnizorului de date ObjectRocket-as-a-service, Gorman a spus: „Cei mai mulți dintre clienții noștri nu au în stare de administratorul bazei de date“ Dar aceasta nu înseamnă că nu mai este nici o treabă pentru ei.

„Pe măsură ce trece la nor, - explică Gorman - cu servicii de date, precum și toate mikroservisami“ trafic serverless“(servicii, cum ar fi Amazon Web Services' Lambda și Google Cloud Funcții), datele de prelucrare mondială continuă să evolueze. El a schimbat și rolul administratorului bazei de date - acest lucru nu este tipul care ruleaza serverul Oracle în centrul de date pentru o anumită companie. Acum există tehnologii de stocare a datelor care există în întreaga cloud în diverse forme pe care trebuie să le gestioneze.

În ciuda faptului că multe dintre aceste noi tehnologii baze de date automatizează o mare parte din ceea ce au făcut de obicei DBA-urile, acest lucru nu înseamnă că a existat o scădere a sarcinii administratorilor DB. "Cred ca automatizarea a redus nevoia de Ops traditionale deoarece acestea ajuta la scara de hardware si, in consecinta, volumul de cereri", a spus Lalonde. "Dar nu există atât de multe instrumente care să vă ajute să găsiți și să remediați solicitările lente și, de asemenea, să alegeți cea mai bună cheie de shard", a explicat el. "Sunt sigur că automatizarea vă va permite să lucrați pe scară largă cu resurse mai puțin, dar în cele din urmă aveți nevoie de un expert care să înțeleagă toate acestea".

Gorman consideră că complexitatea noului mediu de prelucrare a datelor face mai ușor pentru locuri de muncă administratorii de baze de date nu, și chiar mai dificilă decât înainte. Acest lucru se datorează, în parte, faptului că administratorii DB nu mai pot fi la fel de specializați pe cât erau. „Odată ce am fugit serverele de baze de date pentru PayPal si eBay pentru o zi - explică el - și am avut una sau două tehnologii, mai degrabă decât 50. Dacă ai ști Oracle, ai putea face, eventual, cu Microsoft SQL Server - aceste tehnologii se completează reciproc ". Acum totul este diferit, spune Gorman. Astăzi, trebuie să înțeleagă diferența dintre Elasticsearch, Hadoop, [Apache] Kafka și Oracle - cum se deosebesc și de ce, în cazul în care unul dintre ei este mai bun decât celălalt ".

Datorită ritmului schimbării tehnologiilor de stocare și a interogărilor, nu este clar nici ce este baza de date. Și multe tehnologii transmise profesioniștilor din domeniul prelucrării datelor nu sunt foarte asemănătoare (în ciuda numelor lor) cu tot ce au lucrat anterior.

"Profesia noastră a evoluat treptat, lăsând în urmă un sistem de management și stocare a datelor în genul bazei de date", a spus Gorman. Oracle a fost clar o bază de date. Dar în zilele noastre, însăși noțiunea de bază de date, sa schimbat. De exemplu, Hadoop este o bază de date? "În ObjectRocket, Gorman a construit serviciile de date în jurul MongoDB. „Este destul de evident că această bază de date, - a spus el - dar noul nostru de pornire bazat pe [Apache] Kafka - și această bază de date» (Kafka - un server numit un broker care oferă aplicații pentru fluxuri de date în timp real de la „abonamente "Interogări" "Ei bine, da, are proprietățile bazei de date. Asta înseamnă că datele se amestecă în timp real. Deci, aceasta este o evoluție nebună, în care nici măcar nu știm dacă produsul sau infrastructura de date este o bază de date. Apa este foarte tulbure. Acum, acesta este un sistem real de prelucrare a datelor și fiecare dintre ele are propriile nuanțe și componente. "

Dar ceva nu sa schimbat chiar odată cu apariția noilor tehnologii. "Optimizarea cererilor și a datelor în mișcare nu a dispărut, și nici nu este necesară monitorizarea și întreținerea acestor baze de date", a spus Lalonde. - Și aceste baze de date "beschem", așa cum se dovedește, în realitate există și scheme - ele sunt pur și simplu mai bine definite ".

Ca urmare, Lalonde a rezumat, administratorii DB "ar trebui să aibă aceleași abilități pe care le-au avut întotdeauna. Desigur, administratorii moderni ar trebui să fie mai flexibili, să înțeleagă întreaga gamă de tehnologii și, de asemenea, să se simtă bine într-o metodologie flexibilă de dezvoltare (agilă). În general, ne așteptăm pe cineva care înțelege cu adevărat elementele de bază ale teoriei bazelor de date, deoarece înțelegerea acestor elemente fundamentale este tradusă frumos prin tehnologii diferite ".

Și totuși, cine este ABD?

Schimbarea în tehnologia informației (tehnologiile de procesare a datelor) și modul în care acestea sunt implementate nu numai că au adăugat sarcini administratorului DB - el a determinat, de asemenea, cine este DBA.
Odată cu proliferarea sarcinilor operaționale legate de bazele de date și prin gravitația spre partea de operare a "DevOps", rolul ADB este mult mai strâns legat de dezvoltarea aplicațiilor. Iar abilitățile atribuite în mod tradițional DBA-urilor sunt acum mult mai importante pentru echipele de dezvoltare și companiile care operează.

„Eu cred că automatizare a redus nevoia de Ops'ah tradiționale, deoarece acestea contribuie la scară hardware-ul și, prin urmare, volumul de cereri ... Eu cred că automatizare va permite să lucreze la o scară mare, cu mai puține resurse, dar în tot sfârșitul anului ai nevoie de un expert care să înțeleagă toate astea. "

„Cred că rolul datelor dezvoltator DevOp'a si specialist - acest lucru poate fi un inginer de date, DBA, sau om de știință de date - trebuie să facă față cu mai multe tehnologii noi, - spune Gorman. Fiecare dintre aceste tehnologii are propriul spectru de maturitate, funcții și capabilități. " Și asta înseamnă că fiecare dintre aceste roluri necesită acum cel puțin unele abilități DBA.

Oricine devine în cele din urmă administratorul bazei de date pentru aceste sisteme, nu numai că ar trebui să aibă o idee generală despre ei - el are nevoie de o înțelegere mult mai subtilă a ceea ce se întâmplă în interiorul sistemelor lor decât atunci când avea nevoie de ceva pentru baze de date relaționale. La fel ca și comportamentul de interogări SQL poate fi configurat suficient pentru orice bază de date relațională pentru a obține performanța maximă cele mai noi sisteme non-relaționale necesită înțelegerea DBA de exploatari lor interioare.

Acesta este nivelul de conștientizare care a fost odată prerogativa celor mai experimentați administratori de baze de date și programatori. Dar, pe măsură ce datele devin din ce în ce mai descentralizate, cerințele privind rolul DBA-urilor în organizația IT se extind și ele. Ținând cont de faptul cât de mult timp de mulți oameni petrec pe gestionarea propriei lor matrice de date structurate și nestructurate, putem deveni toate bune DBA din acest punct de vedere.







Articole similare

Trimiteți-le prietenilor: