Når SQL ikke er nok: Kontrol til store nye datacentre

Forfatter: Judy Howell
Oprettelsesdato: 3 Juli 2021
Opdateringsdato: 1 Juli 2024
Anonim
Når SQL ikke er nok: Kontrol til store nye datacentre - Teknologi
Når SQL ikke er nok: Kontrol til store nye datacentre - Teknologi

Indhold



Tag væk:

Udviklere og ingeniører er nødt til løbende at arbejde for at fremskynde og forbedre tjenester over platforme, der er vokset langt ud over deres klassiske arketyper fra 1990'erne.

Med al den brummer om enorme NSA-datacentre, der holder gazillioner af databits om vores private liv, er der en ting, der ikke er blevet talt meget om, i det mindste på CNN. Det involverer et teknisk problem, der er opstået sammen med skyteknologi, big data og de imponerende fysiske datalagringscentre, der nu bygges over hele verden. Så hvad er det? Uanset hvem der administrerer et af de enorme IT-systemer, der kører disse faciliteter, er der et behov for softwaresystemer, der hjælper alle disse data med at komme ind og ud af pipeline hurtigt. Dette behov repræsenterer et af de mest interessante it-spørgsmål eller puslespil, som fagfolk står overfor i dag.

Som mange eksperter påpeger, går dagens ekstreme efterspørgsel efter databehandling langt ud over de traditionelle tilgange. Kort sagt, ved hjælp af enkle databasestrukturer og værktøjer som SQL-forespørgselsgrænseflade vil det ikke give tilstrækkelig behandlingskraft eller funktionalitet til dem, som de proprietære systemer, der har udviklet sig i løbet af de sidste par år. Arkiverne i dagens store tech-virksomheder har brug for ekstrem skalerbar teknologi. De har brug for databehandlingsværktøjer, der kan input og output resulterer i meget højere lydstyrke end hvad en enkelt server kan lette. De har brug for løsninger, der hurtigt kan forbedres til vækst, løsninger, der inkluderer komplekse niveauer af kunstig intelligens, løsninger, der er designet til let styring af en it-afdeling.


Spørgsmålet er, hvordan erobrer virksomheder og offentlige agenturer begrænsningerne i den traditionelle datahåndteringsvej? Her skal du godt se på en meget lovende mulighed: Software, der håndterer big data og administration af flere datacentre.

Google Filsystem: En stor casestudie

Den proprietære teknologi, som Google bruger til at få adgang til sine datacentre, er et af de bedste eksempler på almindelige modeller til håndtering af big data og administration af flere datacentre. Google File System (GFS), der blev udviklet i 2003, er designet til at understøtte den enorme mængde højhastighedsændringer til datasystemer, der er en del af at få så meget ny information ind og ud af en enkelt platform, når millioner af brugere klikker væk på den samme tid. Eksperter omtaler dette som et distribueret filsystem og bruger udtrykket "dataobjektlagring" til at beskrive disse meget komplekse teknikker. I virkeligheden skraber disse udtryk dog ikke engang overfladen i termer, der beskriver, hvad der er der fungerer.


Individuelt er de funktioner og komponenter, der udgør et system som GFS, muligvis ikke længere banebrydende, men de er komplekse. Mange af dem er blevet dækket på dette websted som relativt nye innovationer, der er en del af grundlaget for et nyt, altid tilsluttet, altid tilsluttet globalt it-system. Samlet set er et system som GFS meget mere end summen af ​​dets dele: det er et stort set usynligt, men enormt komplekst netværk, der vrimler af, at individuelle datastykker bliver smidt på denne måde, og at det i en proces, der, hvis det er fuldt ud visuelt modelleret, ville se ud som kaos. At forstå, hvor alle dataene kører, kræver en masse energi og engagement, da de, der bemander kampstationerne i disse systemer, let vil indrømme.

"Der er for mange detaljer, der har en dybtgående indflydelse på anvendelighedsområder - inklusive ekstern og intern fragmentering, logbaseret vs. stedet-opdateringer og niveauer af transaktionskonsistens - for at opsummere den måde, det fungerer i en enkelt kort sætning , "siger Momchil Michailov, administrerende direktør og medstifter af Sanbolic.

"Et distribueret filsystem er enten en distribueret aggregator af lokale navnerum og frie rum af deltagende noder, eller et lokalt filsystem, der kører på flere noder, der får adgang til delt lagring ved hjælp af en distribueret låsemanagerkomponent," sagde han.

Kerry Lebel er senior produktchef hos Automic, et firma kendt for sine skalerbare automatiseringsplatforme. Lebel siger, at selvom det er nøjagtigt at beskrive et DFS som et system, der blot tildeler arbejdsbelastning til servere, der er knyttet til lave omkostningsstykker hardware, fortæller det ikke rigtig hele historien.

Ingen fejl, ingen stress - Din trinvis vejledning til oprettelse af livsændrende software uden at ødelægge dit liv

Du kan ikke forbedre dine programmeringsevner, når ingen er interesseret i softwarekvalitet.

”Det, du ender med at mangle, er den seje faktor hvordan de gør, hvad de gør, ”sagde Lebel.

Når du går væk fra de tekniske detaljer og bare tænker på den grundlæggende idé bag det distribuerede filsystem, er den "seje faktor", som Lebel taler om, åbenlyst. Disse store datahåndteringssystemer erstatter gamle fil- / mappesystemer med strukturer, der ikke kun involverer flere leveringssystemer, men en "objektorienteret" tilgang, hvor et stort antal enheder skoddes her og der for at forhindre flaskehalse.

Tænk f.eks. På et avanceret motorvejssystem, hvor hundreder af tusinder af biler ikke bare er tragtet ned ad en multilane lige, men skubbet op i pæne små kløverblad- eller oxbue-sideelver, som er spundet rundt og sendt mod deres destinationer på en række omveje. Fra himlen ser alt så koreograferet ud som et schweizisk ur. Det er den slags visuelle model, som ingeniører ser på, når de drømmer om nye måder at rute information omkring begrænsninger ved at "sparke" den til forskellige niveauer i et flerlagsskema med dataindeslutning. Ved at lægge specifikationerne til side er dette det øverste mål for et håndteringssystem: at holde disse selvstændige objekter med deres indlejrede metadata bevæge sig i tophastighed til det sted, hvor de har behov for, at nå konsistensmål, tilfredsstille en slutbruger eller endda for at informere en observation eller analyse på topniveau.

Et kig på kerneteknologien

En artikel af Sean Gallagher, der blev vist på Ars Technica, deler GFS-designet ned i noget mere håndterbare dele og antyder, hvad der er under arket hos Google.

GFS starter med en redundant og fejletolerant model til datalæsning og skrivning. Ideen her er, at i stedet for at skrive en bestemt opdatering til et enkelt drev, skriver nye systemer bunker med data til flere destinationer. På den måde, hvis en skrivning mislykkes, forbliver andre. For at imødekomme dette uddeler en primær netværkskomponent datahåndtering til andre underordnede enheder, og aggregerer dataene igen, når en klient "opfordrer" til dem. Alt dette gøres muligt ved hjælp af en metadataprotokol, der hjælper med at identificere, hvor visse opdateringer og transmissionsresultater er inden for det større system.

Et andet meget vigtigt aspekt af dette er, hvordan disse duplikat-tunge systemer håndhæver datakonsistensen. Som Gallagher bemærker, ofrer GFS-designet en vis konsistens, mens de stadig "håndhæver atomicitet" eller beskytter princippet om, hvordan data opdateres på tværs af flere lagringsenheder, så de matcher over tid. Googles "afslappede konsistensmodel" ser ud til at følge den essentielle teori for BASE-modellen, der giver mere fleksibilitet til gengæld for en længere tidsramme for konsistenshåndhævelse.

Hvordan opnår andre store systemer dette?

"Når der opnås tilstrækkelig stor skala, bliver uoverensstemmelser eller korrupte data uundgåelige," siger Michailov. "Derfor bør et primært mål med distribuerede filsystemer være muligheden for at udføre så mange operationer som muligt i nærvær af korruption, samtidig med at der leveres effektive metoder til at håndtere korruptionen samtidig." Michailov nævner også behovet for at bevare ydeevnen gennem omhyggelig implementering af redundans.

"For eksempel oprettelse af metadata (data om dataene) på hver disk gør det muligt for disken at genopbygge sin rigtige datastruktur, hvis dens spejlkopi er beskadiget," sagde Michailov. "Derudover kan RAID-niveauer bruges til at bekæmpe lagringsfejl på enten filsystemaggregatoren eller de delte niveauer for styringsstyring."

Ved at diskutere en anden konsistensmodel fokuserer Lebel på et system kaldet et Hadoop distribueret filsystem (HDFS), som han kalder en "industri de-facto standard".

I HDFS, siger Lebel, replikeres hver datablok tre gange på forskellige noder og på to forskellige stativer. Data kontrolleres fra ende til anden. Fejl rapporteres til NameNode, en datahåndterer, der slipper for korrupte blokke og opretter nye.

Alt dette understøtter den slags "rene data", der er så vigtige for integriteten af ​​et af disse massedatasystemer.

Vedligeholdelse af en DFS

Et andet meget anderledes blik på GFS kommer fra en oktober 2012-artikel af den kabelførte forfatter Steven Levy. Det er meget kortere at karakterisere softwaretilgangen til Googles kollektive top-down netværkshåndtering.

"I årenes løb," skriver Levy, "har Google også opbygget et softwaresystem, der giver det mulighed for at styre sine utallige servere, som om de var en kæmpe enhed. Dets interne udviklere kan fungere som marionetmastere og sende tusinder af computere til at udføre opgaver så let som at køre en enkelt maskine. "

At gøre dette involverer også masser af cyberbaseret og miljømæssig vedligeholdelse, fra dedikerede testhold, der forsøger at "bryde" serversystemer, til omhyggeligt kontrollerede temperaturer i hallen på datakrypten.

Levy nævner også supplerende teknologier til GFS, som MapReduce, et cloud-applikationsværktøj, og Hadoop, en analysemotor, der deler nogle designprincipper med GFS. Disse værktøjer har deres egen indflydelse på, hvordan store datacenterhåndteringssystemer bliver designet, og hvad der sandsynligvis vil fremgå i fremtiden. (Lær mere om disse teknologier i The Evolution of Big Data.)

Michailov mener, at MapReduce har potentialet til at understøtte stadig større datacentersystemer, og taler om en "enkelt implementering" af delte og aggregerede filsystemer, der kunne "beholde navneknudepunkterne på et aggregeret filsystem i en delt klynge med SSD'er til opbevaring ."

På sin side ser Lebel en bevægelse væk fra batchbehandling (den Hadoop-understøttede metode) til strømningsbehandling, hvilket vil bringe disse datafunktioner tættere på realtid.

"Jo hurtigere vi kan behandle dataene og gøre dem tilgængelige for forretningsmæssige beslutningstagere eller for vores kunder, jo mere en konkurrencefordel vil der være," siger Lebel, der også foreslår at erstatte ovennævnte behandlingsterminologi med termer, der fokuserer på slutbruger. Ved at tænke på "synkrone" aktiviteter eller aktiviteter synkroniseret med slutbrugerhandlinger og "asynkrone" aktiviteter, der er mere fleksible med hensyn til implementering, siger Lebel, at virksomheder kan bruge SLA'er og andre ressourcer til at definere, hvordan et givet servicesystem fungerer .

Hvad alt dette koger ned til på en måde er, at udviklere og ingeniører kontinuerligt skal arbejde for at fremskynde og forbedre tjenester over platforme, der er vokset langt ud over deres klassiske arketyper fra 1990'erne. Det betyder, at man kritisk ser på datamaskinens maskiner og bryder flaskehalser på måder, der ikke kun understøtter en voksende befolkning, men at eksponentiel ændring sker ved brudhalshastighed, som pundits kalder "den næste industrielle revolution." Det er sandsynligt, at de, der bryder mest muligt på disse fronter, ender med at dominere i fremtidens markeder og økonomier.