Programmering

Hvad er objektlagring?

Ved udgangen af ​​2012 blev 1,3 billioner objekter gemt i Amazon S3, verdens største og mest kendte objektlagringssystem. På det tidspunkt voksede antallet hurtigere end 1 milliard objekter om dagen, så markeringen på 2 billioner er lige rundt om hjørnet.

Objektlagring er langt mere skalerbar end traditionel filsystemlagring, fordi det er meget enklere. I stedet for at organisere filer i et kataloghierarki gemmer objektlagringssystemer filer i en flad organisation af containere (kaldet "spande" i Amazon S3) og bruger unikke ID'er (kaldet "nøgler" i S3) for at hente dem. Resultatet er, at objektlagringssystemer kræver mindre metadata end filsystemer for at gemme og få adgang til filer, og de reducerer omkostningerne ved administration af filmetadata ved at gemme metadataene med objektet. Dette betyder, at objektlagring kan skaleres næsten uendeligt ved at tilføje noder.

Pålidelighed opnås på almindelig hardware og diskdrev ved at replikere objekter på tværs af flere servere og placeringer. Hvis du konfigurerer din egen løsning, f.eks. Med OpenStack Swift, kan du konfigurere antallet af lagerzoner og replikaer, der passer til dine behov. (OpenStack anbefaler mindst fem noder til et produktionssystem.) Amazon lover ni 9'ere med "holdbarhed" til standard Amazon S3, hvilket svarer til tabet af en fil i 100 mia. Hvis dine databeskyttelsesbehov ikke er så ekstreme, kan du gemme et par øre med indstillingen Reduceret redundanslagring (to 9s holdbarhed).

De funktioner, du får i et objektlagringssystem, er typisk minimale. Du kan gemme, hente, kopiere og slette filer samt kontrollere, hvilke brugere der kan gøre hvilke, og det handler om det. Hvis du vil have søgning eller et centralt lager af objektmetadata, som andre applikationer kan trække på, skal du generelt implementere det selv. Amazon S3 og andre objektlagringssystemer leverer REST API'er, der giver programmerere mulighed for at arbejde med containerne og objekterne. SoftLayer er den sjældne offentlige sky, der giver søgning efter objektlagring til brugere.

Endelig giver HTTP-interface til objektlagringssystemer hurtig og nem adgang til filer for brugere overalt i verden. (For eksempel har hver fil i Amazon S3 en unik URL baseret på Amazon-placeringen, navnet på skovlen og navnet på filen: //s3-us-west-1.amazonaws.com/objectstorage1/object_storage. rtf.) Du venter selvfølgelig længere, end du ville få adgang til en fil fra NAS, men du kan ikke slå bekvemmeligheden.

Ud over den betydeligt langsommere gennemstrømning sammenlignet med et traditionelt filsystem er den anden store ulempe ved objektlagring, at datakonsistens kun opnås i sidste ende. Hver gang du opdaterer en fil, skal du muligvis vente, indtil ændringen udbredes til alle replikerne, før anmodninger returnerer den nyeste version. Dette gør objektlagring uegnet til data, der ændres ofte. Men det passer godt til alle de data, der ikke ændrer sig meget, f.eks. Sikkerhedskopier, arkiver, video- og lydfiler og virtuelle maskinbilleder.