CERN, bekend van de deeltjesversneller die in Zwitserland ligt, gaat CouchDB inzetten bij een van de vier experimenten van de Large Hadron Collider, zoals de deeltjesversneller officieel heet. CouchDB wordt gebruikt bij het Compacte Muon Solenoïde (CMS) experiment. Het experiment is bedoeld om de vele aspecten van botsingen tussen protonen, subatomaire deeltjes met een positieve lading, te onderzoeken.

CouchDB is gebaseerd op documenten en niet op relationele indexen, zoals reguliere SQL-databases. Daardoor kan het prestatieniveau enorm hoog zijn, zeker voor grote hoeveelheden data die veel en vaak verandert. De database biedt incrementele replicatie en tweezijdige conflictdetectie. De software is een project van de Apache Stichting, bekend van de gelijknamige webserver, en valt te benaderen via reguliere http-dataverzoeken.

10 Petabyte aan data

Bij het onderzoek moet veel data worden verwerkt, waaronder het catalogiseren van data en het overbrengen van data tussen de ongeveer honderd datacentra. Ook wordt CouchDB gebruikt voor het verwerken van de taken in de gedistribueerde computing infrastructuur (distributed computing infrastructure) tijdens alle fases van de verwerking van de data, dus van begin tot de eindanalyse.

Ook wordt de NoSQL tool ingezet om data te simuleren zodat de wetenschappers de praktijk naast theorieën kunnen leggen, blijkt uit een case study van CouchDB. CERN heeft CouchDB een jaar lang getest en gaat de NoSQL-oplossing nog deze zomer in gebruik nemen, meldt ReadWriteWeb.

CMS zal per jaar ongeveer 10 Petabyte (PB) aan data verstouwen, dat is ongeveer gelijk aan de data die een site als Facebook per jaar verwerkt. Dit gebeurt in het Data Management en Workflow Management (DMWM) project. "DMWM had een oplossing nodig die snel om kon gaan met grote hoeveelheden data, vaak zonder de metadata, in een gedistribueerde omgeving waarin inkomende database connecties zeer vaak onmogelijk zijn", legt Simon Metson van de DMWM-groep uit aan ReadWriteWeb.

SQL-kennis is een nadeel

NoSQL-databases kunnen deze hoeveelheden data aan. CouchDB is specifiek ontworpen voor gedistribueerde omgevingen. Volgens Metson heeft CouchDB nog een aantal voordelen. Zo is het onnodig om een complexe replicatiestructuur te onderhouden. Ook werkt het goed samen met andere systemen. In het geval van CERN gaat CouchDB goed samen met Oracle. "Het is een fijne manier om met een grote database te werken in een gedistribueerde omgeving."

Metson prijst ook de vlakke leercurve van CouchDB aan. Het enige nadeel is volgens hem dat programmeurs die gewend zijn aan SQL-databases veel moeten afleren. "Hoe meer je van Oracle afweet, hoe moeilijker het is om het te leren." Het afleren SQL weegt volgens Metson wel zeer zeker op tegen de mogelijkheid snel een applicatie te bouwen zonder enorme hoeveelheden code te hoeven schrijven.