Wat is gridcomputing?


Gridcomputing gebruikt computerresources die over een groot gebied verdeeld zijn om een gemeenschappelijk doel te bereiken. Met andere woorden, gridcomputing wordt gekenmerkt door het gebruik van meerdere computers, vaak geografisch verspreid, die met elkaar verbonden zijn door netwerken. Al deze computers werken samen om één taak te volbrengen.

Dit rekenplatform is vooral handig voor het oplossen van zogenaamde "Grand Challenge"-problemen, zoals het vouwen van eiwitten, financiële modellen, aardbevingssimulaties en klimaat- en weermodellen. Zonder dit type berekeningen zou bijvoorbeeld de Large Hadron Collider bij CERN niet kunnen functioneren. Toepassingen zijn onder andere wetenschappelijk onderzoek, bedrijfsinformatie, data-analyse en high-performance computing (HPC).

Bare-metal servers for high performance workloads

Hoe werkt gridcomputing?

Elke “node” (computer) in het “grid” (raster) kan worden ingesteld om een andere taak uit te voeren. Hierdoor is het systeem heterogener dan conventionele high-performance computing-systemen zoals clustercomputing. Rasters worden vaak gebouwd met generieke grid-middleware softwarelibrary’s. Deze grids kunnen heel groot zijn en bestaan uit veel losjes gekoppelde computers.

Een typisch gridcomputingnetwerk bestaat uit drie typen machines: control-node/server, compute-nodes en data-nodes. De control-node is een server of een groep servers die het grid beheren. De compute-nodes zijn de computers die de berekeningen uitvoeren en de data-nodes slaan de gegevens op die door de berekeningen gebruikt en gegenereerd worden.

Het werkt door gespecialiseerde software op elke computer te laten draaien, die alle taken van het grid coördineert en beheert. In wezen verdeelt de software de hoofdtaak in subtaken en wijst de subtaken toe aan elke computer. Computers kunnen daarom gelijktijdig aan hun respectievelijke opgehaalde subtaken werken. Na voltooiing van de subtaken worden de outputs van alle computers samengevoegd om de grotere hoofdtaak te voltooien.

Wat zijn de soorten gridcomputing?

Om gridcomputing te begrijpen, loont het de moeite om het in verschillende typen te classificeren, waaronder computational grids, collaborative grid networks, data storage grid networks en modular grid computing. Elk type heeft zijn unieke toepassingen en wordt in verschillende sectoren gebruikt op basis van de specifieke vereisten van de taak in kwestie.

Computational grid computing

Computational grid computing richt zich op het benutten van de beschikbare rekenkracht van meerdere computers om grootschalige, complexe berekeningen uit te voeren.

In een computational grid wordt een grote taak verdeeld in meerdere subtaken. Elke subtaak wordt vervolgens voor uitvoering toegewezen aan een ander knooppunt (computer) in het raster. Dit proces maakt parallelle berekeningen mogelijk, waarbij meerdere bewerkingen tegelijkertijd worden uitgevoerd. Dit versnelt de totale rekentijd aanzienlijk.

Zodra alle subtaken zijn voltooid, worden de resultaten gecombineerd en wordt de uiteindelijke uitvoer geproduceerd. Rekenrasters zijn ideaal voor tijdgevoelige toepassingen en rekenintensieve problemen. Ze kunnen bijvoorbeeld worden gebruikt om binnen enkele seconden bedrijfsrapporten te genereren, voorspellingen van aandelenbeurzen realtime te wijzigen of weermodellen te maken.

Data grid computing

Data grid computing richt zich op het beheer en de distributie van grote datasets op meerdere computers of dedicated servers. Deze computers communiceren direct met elkaar om de verwerking van grote taken te coördineren, vaak verdeeld over meerdere wijd verspreide locaties.

Gegevensrasters (“data grids”) zijn geschikt voor taken die kunnen worden onderverdeeld in kleinere subtaken, zoals microservices, die vervolgens parallel kunnen worden uitgevoerd om een efficiënte verdeel-en-heers-aanpak mogelijk te maken. Ze kunnen ook worden gebruikt als basis voor private clouds, waarbij computers worden gegroepeerd en een deel van de resources van die pool via virtuele machines gewijd wordt aan diverse gebruikers.

Collaborative grid computing

Collaborative grid computing is gericht op het faciliteren en verbeteren van werk tussen individuen of groepen. Met collaborative grid computing gebruikt het systeem verschillende technologieën om samenwerken tussen individuen te ondersteunen.

Dit betekent dat individuele werknemers gemakkelijk toegang hebben tot elkaars werk, resources kunnen delen en kunnen samenwerken aan opgehaalde taken. Dit type computergebruik maakt gecoördineerde gegevensdeling voor alle gebruikers van het grid mogelijk. Dit verbetert hun onderlinge kennisoverdracht.

Een gegevensraster kan bijvoorbeeld worden gebruikt als een groot gegevensarchief, waarin elke website zijn gegevens in het grid opslaat. Hierbij maakt het raster het gecoördineerd delen van gegevens tussen alle gebruikers van het grid mogelijk. Een dergelijk grid maakt samenwerking mogelijk, samen met een grotere kennisoverdracht tussen gebruikers van het grid.

Manuscript grid computing

Manuscript grid computing is met name handig bij het beheren van grote hoeveelheden afbeeldingen en tekstblokken. Met dit type grid kunt u continu afbeeldings- en tekstblokken verzamelen, terwijl u tegelijkertijd bewerkingen uitvoert en vorige batches van deze blokken verwerkt.

Het is gefocust op het verwerken van grote hoeveelheden tekst en afbeeldingen en kan worden uitgevoerd door een eenvoudige grid computing-structuur, waarbij afbeeldingen en manuscripten parallel worden verwerkt.

Dit maakt het tot een efficiënte en effectieve oplossing voor jobs die grote hoeveelheden tekst of manuscripten en grote volumes afbeeldingen omvatten.

Modular grid computing

Bij modular grid computing worden de computerresources binnen een systeem of chassis opgesplitst. Deze resources kunnen opslag, GPU's, geheugen en netwerken omvatten.

Het breidt het concept van gridcomputing nog verder uit door de computingresources in modules op te splitsen. IT-teams kunnen deze modules vervolgens combineren om specifieke toepassingen of services te ondersteunen. Deze aanpak biedt meer flexibiliteit en mogelijkheden voor maatwerk, waardoor IT-teams serverconfiguraties kunnen afstemmen op de eisen van bepaalde applicaties.

In een modulair grid wordt bijvoorbeeld een set resources gecombineerd met software voor specifieke applicaties. CPU's en GPU-schijven kunnen in een serverrackchassis zijn geplaatst en kunnen door middel van een zeer snelle verbinding met lage latentie met elkaar worden verbonden om een server te maken.

Belangrijkste onderdelen van gridcomputing

Het grid bestaat uit computers van gebruikers die resources leveren als rekenkracht en opslag, grid-middleware om workloads in het hele systeem te coördineren en nodes, zoals een centrale controleserver die taken toewijst en resultaten aggregeert.

Samen functioneren deze componenten als een verenigde virtuele supercomputer die meer rekenkracht, opslag en efficiëntie biedt dan elke andere machine alleen zou kunnen bieden. Door complexe jobs in stukken te verdelen en ze voor parallelle verwerking naar beschikbare nodes te sturen, kunnen grids analyses, simulaties en andere gegevensintensieve workloads sneller en tegen lagere kosten voltooien dan conventionele alternatieven.

Nodes

Nodes

Een node verwijst naar een computer of server die deel uitmaakt van het gridnetwerk en daaraan zijn ongebruikte computerresources (zoals CPU, geheugen en opslag) bijdraagt. Nodes kunnen andere, niet-gerelateerde taken uitvoeren en kunnen vaak schakelen tussen rollen, afhankelijk van de behoeften van het rasternetwerk.

Er zijn drie hoofdtypen: “control”, die het netwerk en de toewijzing van resources beheert; “provider”, die zijn resources voor gridcomputing deelt; en “user”, die resources aanvraagt die door andere computers in het gridcomputingsysteem worden gedeeld.

Nodes kunnen servers of pc's bevatten, die allemaal losjes met elkaar verbonden zijn via het internet of andere netwerken en doorgaans over meerdere geografische regio's verdeeld zijn.

Netwerken

Netwerken

In gridcomputing zijn netwerken de ruggengraat die meerdere computers, vaak geografisch wijd verspreid, met elkaar verbindt om gezamenlijke taken uit te voeren. Deze netwerken maken het delen, selecteren en aggregeren mogelijk van resources die over meerdere beheerdomeinen zijn verdeeld, op basis van hun beschikbaarheid, capaciteit, prestaties, kosten en de servicekwaliteit die gebruikers nodig hebben.

Gridcomputingnetwerken kunnen homogeen zijn, bestaande uit machines met vergelijkbare platforms die hetzelfde besturingssysteem gebruiken, of heterogeen, met machines die op verschillende besturingssystemen draaien.

Software

Software

Controlesoftware speelt een cruciale rol bij het beheer en de coördinatie van taken in het hele grid. Deze software, ook wel grid-middleware genoemd, is een gespecialiseerde applicatie die computingresources door middel van het grid verbindt met applicaties op een hoger niveau. Het draait op elke computer die betrokken is bij het gridnetwerk.

De primaire functie van de controlesoftware is om de hoofdtaak op te splitsen in subtaken en deze subtaken toe te wijzen aan elke computer in het raster. Hierdoor kunnen alle computers tegelijkertijd aan hun respectievelijke subtaken werken, wat de efficiëntie van het rekenproces verhoogt. Zodra de subtaken zijn voltooid, aggregeert de controlesoftware de uitvoer van alle hardware om de grotere hoofdtaak te voltooien.

Naast het beheer van taken verwerkt de besturingssoftware ook verzoeken voor extra rekenkracht vanuit het gridcomputingsysteem. Het regelt het delen van beschikbare resources door gebruikers om overbelasting van de rasterhardware te voorkomen. Bovendien biedt de controlesoftware beveiliging om misbruik te voorkomen.

Protocollen

Protocollen

Gridcomputingnetwerken maken gebruik van een reeks standaarden en protocollen om communicatie tussen uiteenlopende, geografisch wijd verspreide systemen mogelijk te maken. Deze protocollen zijn van cruciaal belang voor het implementeren van services die het gecoördineerd delen van resources tussen verschillende organisaties vergemakkelijken. Gridprotocollen kunnen in verschillende categorieën worden ingedeeld op basis van de activiteiten die ze verwerken:

  • Protocollen voor netwerkcommunicatie en gegevensoverdracht: Verwerken de communicatie en gegevensoverdracht tussen verschillende knooppunten in het raster. Ze zorgen ervoor dat gegevens correct worden verzonden en ontvangen via het netwerk.
     
  • Protocollen voor informatiebeveiliging: Verantwoordelijk voor het handhaven van de beveiliging van het grid. Ze behandelen taken als authenticatie, autorisatie en encryptie om data en hulpbronnen te beschermen tegen ongeoorloofde toegang.
     
  • Protocollen voor resources-informatie: Deze beheren de informatie over de beschikbare resources in het grid. Ze houden de status bij en helpen bij toewijzing en planning.
     
  • Managementprotocollen: Deze protocollen houden toezicht op de algemene werking van het grid. Ze behandelen taken zoals het indienen van taken, het bewaken ervan en het afhandelen van fouten.
     
  • Interfaceprotocollen: Bieden een gebruikersinterface voor interactie met het grid. Hiermee kunnen gebruikers taken indienen, de status ervan controleren en resultaten ophalen.

Voorbeelden van specifieke gridprotocollen zijn de Open Grid Services Architecture (OGSA) en het Simple Grid Protocol. OGSA biedt een raamwerk voor het delen van gegevens en het beheer van resources, terwijl het Simple Grid Protocol een opensourcepakket is dat het protocol en de softwaretools bevat voor het opzetten van een computational grid.

Voordelen van gridcomputing

Gridcomputing, een gedistribueerd rekenmodel, biedt diverse voordelen op belangrijke gebieden als schaalbaarheid, flexibiliteit en optimalisering van resources.

Schaalbaarheid

Het biedt aanzienlijke voordelen qua schaalbaarheid. Het systeem kan resources dynamisch toevoegen of verwijderen op basis van de vraag, waardoor het variërende workloads effectief kan verwerken. Deze schaalbaarheid is cruciaal voor omgevingen waar de werklast fluctueert, omdat de gridomgeving dynamisch kan opschalen door waar nodig resources toe te voegen of te verwijderen.

Flexibiliteit

Gridcomputing biedt flexibiliteit voor wat betreft het delen van resources en samenwerken. Verschillende organisaties of entiteiten kunnen hierdoor een virtuele organisatie vormen voor collaborative computing. Deelnemers dragen hun resources bij en delen deze op transparante wijze over het hele grid. Gridcomputing is niet beperkt tot een specifiek gebouw of een specifieke locatie, waardoor een netwerk kan worden opgezet dat meerdere regio's beslaat.

Optimalisatie van resources

Gridcomputing optimaliseert het gebruik van beschikbare resources door het delen van niet-gebruikte of onderbenutte rekenkracht. Het verbetert de efficiëntie door workloads efficiënt te verdelen, wat leidt tot een beter gebruik van beschikbare rekenkracht en het minimaliseert inactiviteit. Bovendien werkt gridcomputing met bestaande hardware. Dit betekent dat u bestaande hardware kunt hergebruiken, kosten kunt besparen en toch uw overtollige computingresources kunt benutten.

Toepassingen en use cases van gridcomputing

Deze vorm van computergebruik wordt in verschillende sectoren gebruikt om grote rekentaken uit te voeren die te veel resources of tijd vergen voor één computer. Dit zijn enkele belangrijke toepassingen en use cases van gridcomputing:

  • Wetenschappelijk onderzoek: Gridcomputing wordt veel gebruikt in wetenschappelijk onderzoek om grote hoeveelheden data te evalueren en op te slaan. Het stelt wetenschappers wereldwijd in staat om samen te werken en computerresources te delen. Hierdoor gaan onderzoeksprocessen sneller en kunnen complexe wetenschappelijke problemen gemakkelijker worden opgelost.
     
  • Engineering: Voor ingenieurs heeft gridcomputing de kosten van resource-intensieve engineeringapplicaties aanzienlijk verlaagd. Sectoren zoals de automobiel- en ruimtevaartsector, die intensieve testfaciliteiten en gezamenlijke ontwerpinspanningen vereisen, hebben gridcomputing ingevoerd om tijdrovende procedures te versnellen.
     
  • Data-analyse: Met de explosieve groei van gegevens uit verschillende bronnen, zoals IoT-apparaten, wetenschappelijke instrumenten en slimme gadgets, speelt gridcomputing een cruciale rol bij het verzamelen, opslaan en analyseren van gegevens. Het helpt bij het interpreteren van de data en het observeren van patronen om kennis te genereren.
     
  • Weersverwachting: Meteorologen gebruiken gridcomputing om grote hoeveelheden data uit verschillende locaties te verzamelen en weersvoorspellingen te berekenen. Deze technologie maakt een efficiënte verwerking van zulke grote datasets mogelijk en helpt bij het maken van nauwkeurige weersvoorspellingen.
     
  • Gezondheidszorg: In de gezondheidszorg wordt gridcomputing gebruikt om enorme hoeveelheden patiëntengegevens op te slaan en te analyseren. Dit helpt bij medisch onderzoek en ontwikkeling.

Gridcomputing versus cloudcomputing

Cloudcomputing en gridcomputing zijn allebei typen gedistribueerde computersystemen die diensten aan gebruikers leveren. Cloudcomputing is gebaseerd op een client-serverarchitectuur, waar resources centraal gemanaged worden. Dit maakt het uitermate toegankelijk en schaalbaar.

Gebruikers hebben toegang tot services via standaard webprotocollen en betalen voor de resources die ze gebruiken. Het is flexibel, maakt snel opschalen mogelijk op basis van de vraag en is meestal eigendom van en wordt beheerd door serviceproviders.

Aan de andere kant verloopt gridcomputing volgens een gedistribueerde computerarchitectuur die gezamenlijk wordt beheerd. Dit maakt het minder toegankelijk en schaalbaar in vergelijking met cloudcomputing.

Gridcomputing-services zijn toegankelijk via grid-middleware. De infrastructuur is gewoonlijk eigendom van en wordt beheerd door de organisatie die er gebruik van maakt. Hierdoor is het potentieel kosteneffectiever voor bedrijven met consistente workloads.

Implementatie van gridcomputing

In principe biedt gridcomputing een architectuur voor het maken van een virtuele supercomputer die bestaat uit gedistribueerde computerknooppunten en die vaak in veel landen en continenten wordt ingezet. Enkele strategieën voor implementatie en uitrollen van gridcomputing zijn:

  • Investeer in dedicated hardware: Voor de initiële implementatie van grid-technologie wordt aanbevolen om te investeren in een dedicated netwerk waar de samenstellende nodes homogeen zijn. Dit maakt de inspanning eenvoudiger en minimaliseert de mate waarin applicaties geoptimaliseerd hoeven te worden om efficiënt op het grid te werken.
     
  • Zorg voor systeemhomogeniteit: Alle systemen en de daarop geïnstalleerde software in het grid moeten identiek zijn om samen te kunnen werken. Dit is essentieel om optimale prestaties en beschikbaarheid te behouden.
     
  • Gebruik middleware: Middleware kan worden gebruikt om onderdelen van een programma te verdelen over verschillende computers. Dit is een belangrijke strategie in gridcomputing.
     
  • Implementeer load balancing: Load balancing is een belangrijke strategie om ervoor te zorgen dat de rekenlast gelijkmatig wordt verdeeld over alle nodes in het raster. Dit maximaliseert efficiëntie en minimaliseert de responstijd.
     

Het implementeren van beveiligingsbeleid op een groot aantal systemen is een uitdaging in gridcomputing. Adequate beveiligingsoplossingen, met name authenticatie- en autorisatietechnieken, zijn essentieel voor de succesvolle implementatie van gridcomputing-systemen.

high-performance-computing
highgrade-scale-dedicated-servers

Aan de slag met gridcomputing

Het starten van een gridcomputing-project in een organisatie omvat verschillende stappen. Hier is een algemeen overzicht van het proces:

  • Identificeer de behoefte: Identificeer de taken of problemen in uw organisatie die van gridcomputing kunnen profiteren. Dit kunnen grootschalige gegevensanalyse, wetenschappelijke berekeningen of andere taken zijn waarvoor aanzienlijke computerbronnen nodig zijn.
     
  • Plan de infrastructuur: Plan de gridcomputing-infrastructuur op basis van de behoeften van uw organisatie. Dit omvat het bepalen van het type grid, de topologie en de onderdelen die nodig zijn voor gegevensbeheer.
     
  • Kies de juiste tools: Kies de juiste tools voor uw gridcomputing-project. Opensourceapplicaties zoals Tomcat en Axis kunnen worden gebruikt om een eenvoudige gridcomputing-omgeving op te zetten. Andere tools zoals het 'parallel'-pakket in R kunnen worden gebruikt voor grootschalige data-analysetaken.
     
  • Implementeer het grid: Implementeer de gridcomputing-omgeving in uw organisatie. Dit omvat het installeren van de gekozen software op de computers in het grid, het creëren van een veilige en schaalbare infrastructuur en het waarborgen van machine-onafhankelijkheid.

Meer lezen

idc infobrief hero image cloud database campaign

Wat is edge computing?

Bij edge computing worden rekenkracht en gegevensopslag dichtbij de bron geplaatst waar gegevens worden gegenereerd. Dit betekent dat er minder processen in de cloud hoeven plaats te vinden, wat problemen met datacommunicatie over lange afstand en latency voorkomt. De grootste voordelen zijn betere beschikbaarheid en kortere tijden voor gegevensoverdracht.

Edge computing is anders dan het traditionele rekenmodel voor het verwerken en analyseren van gegevens in een gecentraliseerd datacenter — in de cloud of op een eigen locatie van een bedrijf — omdat de gegevens worden verwerkt aan de “rand” van het netwerk.

AI and machine learning dedicated servers OVHcloud

Wat is quantumcomputing?

Quantumcomputing in een paar woorden: Quantumcomputing (of kwantumcomputing) is een opkomende technologie die quantummechanica gebruikt om vraagstukken op te lossen die niet door een gewone computer kunnen worden uitgerekend.

Quantumcomputing werd voor het eerst bedacht in de vroege jaren 80 door onderzoekers als Paul Benioff, Richard Feynman en Yuri Manin. Het heeft als doel het quantumgedrag van quantumobjecten (waaronder fotonen, die niet atomair zijn, of subatomaire deeltjes) te gebruiken om bepaalde problemen sneller en gemakkelijker op te lossen dan klassieke computers of zelfs supercomputers, en met minder vermogen.