Distribuert og parallell databehandling er to paradigmer for å utføre beregninger som kan brytes ned i mindre, uavhengige oppgaver. Begge paradigmene utnytter tilgjengeligheten til flere prosessorer for å oppnå høyere ytelse enn det som ville vært mulig med en enkelt prosessor. Det er imidlertid noen viktige forskjeller mellom de to paradigmene.
Distribuert databehandling innebærer å distribuere oppgavene til en beregning på tvers av et nettverk av datamaskiner, som hver har sitt eget minne og prosesseringsenhet. Datamaskinene i et distribuert system kan være plassert hvor som helst i verden, og de kan være av forskjellige typer og størrelser. Distribuert databehandling brukes ofte til storskala beregninger som krever prosessorkraften til flere datamaskiner, for eksempel værvarsling, klimamodellering og økonomiske simuleringer.
Parallell databehandling innebærer å utføre flere oppgaver samtidig på en enkelt datamaskin som har flere prosessorer. Prosessorene i en parallell datamaskin kan være plassert på en enkelt brikke, eller de kan fordeles over flere brikker. Parallell databehandling brukes ofte til beregningsintensive oppgaver som kan brytes ned i uavhengige deloppgaver, for eksempel videoredigering, bildebehandling og vitenskapelige simuleringer.
Hovedforskjellen mellom distribuert og parallell databehandling er plasseringen av prosessorene som brukes til å utføre beregningene. Ved distribuert databehandling er prosessorene plassert på forskjellige datamaskiner, mens ved parallell databehandling er prosessorene plassert på samme datamaskin. Denne forskjellen har flere implikasjoner for måten distribuerte og parallelle beregninger er strukturert og utført på.
Kommunikasjonsoverhead er en viktig faktor i distribuert databehandling, da prosessorene må kommunisere med hverandre over et nettverk. Denne kommunikasjonen kan introdusere betydelige latenser, noe som kan bremse utregningen. Ved parallell databehandling er kommunikasjonsoverhead vanligvis mye lavere, da prosessorene kan kommunisere med hverandre direkte gjennom delt minne.
Feiltoleranse er en annen viktig faktor i distribuert databehandling, siden datamaskinene i et distribuert system kan svikte uavhengig av hverandre. Dette betyr at distribuerte beregninger må utformes for å tolerere feil og fortsette å kjøre selv om noen av datamaskinene i systemet svikter. Ved parallell databehandling er feiltoleranse vanligvis mindre av bekymring, ettersom prosessorene i en parallell datamaskin vanligvis er tett koblet og neppe svikter uavhengig av hverandre.
Skalerbarhet er en viktig faktor for både distribuert og parallell databehandling. Distribuerte beregninger kan skaleres opp ved å legge til flere datamaskiner til systemet, mens parallelle beregninger kan skaleres opp ved å legge til flere prosessorer til datamaskinen. Det er imidlertid grenser for skalerbarheten til både distribuerte og parallelle beregninger. I distribuert databehandling er skalerbarheten begrenset av nettverkets båndbredde og kommunikasjonsoverhead. Ved parallell databehandling er skalerbarheten begrenset av antall prosessorer som effektivt kan brukes på en enkelt datamaskin.
Generelt er distribuert databehandling bedre egnet for storskala beregninger som kan distribueres over et nettverk av datamaskiner, mens parallell databehandling er bedre egnet for beregningsintensive oppgaver som kan brytes ned i uavhengige deloppgaver og utføres samtidig på en enkelt datamaskin.