sql >> Database teknologi >  >> RDS >> Database

DBA's rolle i NoSQL

Hvad er databaseadministratorens (DBA) rolle i den hastigt udviklende verden af ​​NoSQL? Et flertal af den tidlige NoSQL-adoption er i den hurtigt voksende verden af ​​små og mellemstore virksomheder baseret på offentlige skyer. I de fleste af disse virksomheder eksisterer DBA-rollen ikke, hvilket har fået mange mennesker til at proklamere afslutningen på DBA. Er DBA på vej ned af dinosaurens vej? Jeg synes, svaret er mere nuanceret end som så. Lad os først undersøge nogle få tendenser, vi ser på markedet, som vil have en stor nedstrømsindvirkning på teknologiarbejdspladsen.

  1. Devops

    Team i dag er mindre og mere agile. Der er meget få teams, der bruger en årelang vandfaldsmodel med en måned i slutningen til produktionsimplementering og konfiguration - teams fungerer bare ikke sådan længere. De er for det meste udviklerdrevne og itererer hurtigt med et meget lille eller ikke-eksisterende driftsteam. Alle arbejdsgange, inklusive databaseimplementering og -styring, er automatiseret af udviklerne. I modsætning til traditionelle relationelle databaser er al koden med NoSQL i applikationsserveren – ingen lagrede procedurer eller triggere til at implementere og teste på databaseserveren. Dette gør hele implementeringsprocessen renere, automatiseret og let testbar.

  2. Offentlige og private skyer

    Skyer betyder mange ting – men en af ​​skyens vigtigste påvirkninger er "IT-automatisering". I skyverdenen er alt, der har med maskiner, netværk og lagring at gøre, automatiseret. Der er lidt plads til en it-administrator, der klikker på knapper og implementerer servere og lager on-demand. Selvbetjeningskonsoller vil blive mere og mere udbredte, hvilket gør det muligt for brugere at implementere infrastruktur on-demand og blive faktureret for det.

  3. Database-as-a-Service (DBaaS)

    Database-as-a-service er i øjeblikket mest populært i den offentlige sky. Det betyder i bund og grund, at alle aspekter af DB-klargøringen og -administrationen (tilgængelighed, backup,  skalering, komprimering osv.) alle varetages af softwaren . Du kan begynde at bruge databasen ved at skulle bekymre dig om maskiner eller enhver anden infrastruktur. Som organisation, når du først går til DBaaS, er der ingen vej tilbage. Fordelene er så store! Efterhånden som private skyer bliver mere udbredt, vil DBaaS-modellen også blive mere og mere udbredt for on-premise.

  4. Polyglot persistens

    Databaser er mere specialiserede nu, og du ser typisk mere end én databasetype, der bruges i en enkelt applikation. For eksempel kan du bruge MongoDB som din applikationsbutik, men brug ElasticSearch til din søgning og analyse. Det er nu vigtigt for DBA'er at være eksperter i flere databaser, og hvordan de interagerer med hinanden.

I øjeblikket bruger DBA'er meget tid på at opsætte databasen, overvåge databasen, opsætte scripts til sikkerhedskopier, så videre og så videre. De dage er stort set færdige. Hvis du er en knap-klikker, er dit job toast. Med fremkomsten af ​​skyen og DBaaS vil alle de verdslige databaseopgaver blive automatiseret lige ud af porten. Hvor forlader det DBA? DBA'en skal genopbygge og flytte højere op i databasestakken. Der er stadig flere databaserelaterede opgaver, der er svære at automatisere og kræver menneskelige færdigheder og intuition, såsom præstationsanalyse, forespørgselsanalyse osv.

Så for endelig at komme til mit svar – hvad ser jeg som fremtiden for DBA? I de mindre teams vil DBA være en udvikler, der "specialiserer sig" i databasen og bruger en DBaaS. I en større organisation ser jeg DBA som en "konsulent", der bliver en ressource til at hjælpe teams med at vælge, opbygge og administrere deres databaser. Uanset hvad, vil det være betydeligt anderledes end den måde, det var før i dag.

Dharshan er grundlæggeren af ScaleGrid og en meget erfaren MongoDB ekspert. Kontakt Dharshan på @dharshanrg for at lære mere om optimering af din databasestyring.


  1. "Forespørgsel ikke tilladt i Waitfor" Fejl 101 i SQL Server

  2. Hvad er det maksimale antal tegn for NVARCHAR(MAX)?

  3. Hvordan tilføjer jeg indekser til MySQL-tabeller?

  4. Tre bord joins med andre joins end INNER JOIN