Apple gør FoundationDB til Open Source

I 2015 købte Apple NoSQL databasen FoundationDB. Kort efter forsvandt den på Github, til stor skuffelse for mange. Nu er den tilbage og Apple har nu valgt at gøre FoundationDB til Open Source.

Apple gjorde sig meget upopulære, da de i 2015 trak databasen FoundationDB væk fra Github, kort efter de havde opkøbt den. FoundationDB er en NoSQL database der er kendt for at være stabil og meget effektiv. Nu er den tilbage på Github og i et blogindlæg fremgår det at Apple har frigivet det som Open Source under en Apache 2.0 licens.

FoundationDB er en såkaldt key-value NoSQL database. At det er en key-value database betyder at alle data gemmes som et par af en unik nøgle og en værdi, hvilket er en meget enkelt måde at opbevare data på og gør det meget skalerbart.

NoSQL er i modsætning til SQL databaser med færre begrænsninger og gør det også mere skalerbart at placere data på mange servere. De bruges af blandt andet Yahoo, Google, Facebook, Amazon og altså Apple. Blandt andet menes det at være FoundationDB der er teknologien der anvendes i iMessage, iCloud og iTunes.

SQL vs NoSQL databaser

En af forskellene ved SQL og NoSQL databaser, er at SQL databaser har en nedarvet struktur i den måde data lagres på. For eksempel hvis du har en kolonne i en SQL database, er der krav til hvilke datatyper der kan opbevares i databasen. Det kan for eksempel betyde at du kun kan indtaste heltal i den kolonne. En fordel ved dette er selvfølgelig at det gør det nemmere at kombinere forskellige kolonner, for eksempel at lægge tal fra to kolonner sammen.

Her er NoSQL databaser anderledes. Her kan alle typer af data gemmes i alle poster, uanset datatype. Det giver selvfølgelig mindre restriktioner end SQL databaser.

NoSQL databaser er gode, fordi de bliver hurtigere end SQL databaser, når der ikke skal være bestemte datatyper. Det er altså for folk der prioriterer hastighed over konsistens i data. Der behøver ikke at være struktur i den data der gemmes, og du undgår de problemer der kan være ved at ændre strukturen eller schemes ved SQL databaser.

Når du skal kommunikere med SQL databaser bruger du sproget SQL. Det er nemt og en standardiseret måde at kommunikere med databaser på. Også her er NoSQL anderledes, fordi her kan der være en forskellig kommunikationsmåde fra database til database.

Skriv et svar