OpenStack

Swift. Trabajo con Objetos

Alberto Molina Coballes / @alberto_molina y José Domingo Muñoz Rodríguez / @Pledin_JD

Theme by reveal.js

Conceptos previos

OpenStack Swift (I)

  • Swift es un almacén de objetos distribuido y altamente escalable. Se utiliza para almacenar grandes cantidades de datos de forma segura y económica.
  • La diferencia fundamental entre el almacenamiento de objetos y un sistema de ficheros tradicional es que los objetos no pueden anidarse y no se puede asignar a cada objeto permisos y propietarios de forma individual.

OpenStack Swift (II)

  • El almacenamiento de objetos es ideal para almacenar grandes ficheros multimedia o archivos grandes como copias de seguridad.
  • La comunicación con OpenStack Swift se hace mediante una sencilla API RESTful. Es posible utilizar una API compatible con Amazon S3 si se desea.

Terminología

  • Contenedor: Equivalente a un directorio en un sistema de ficheros, sirve para organizar objetos, pero tiene una diferencia fundamental con el directorio: No se pueden anidar contenedores
  • Objeto: Elemento que se almacena, suele estar relacionado con un fichero o archivo, pero además incluye una serie de metadatos.
  • ACL: Utilizada para gestionar los permisos que otros usuarios pueden tener sobre cada contenedor, no sobre cada objeto.