
Object Storage tiene, con mucho, la interfaz más simple del mercado sin controladores SCSI complicados, controladores HBA, herramientas de múltiples rutas o administradores de volumen integrados en su sistema operativo. Todo lo que tiene que hacer es apuntar su aplicación a un punto final HTTP y usar un conjunto simple de verbos para describir lo que desea hacer con un elemento de datos.
¿Quieres guardarlo en algún lugar para guardarlo? ¿Quieres OBTENERlo para poder trabajar con este dato? ¿O quieres enumerar el contenido de tu balde?
Quizás estos tres verbos son una representación simplista de lo que es posible con el almacenamiento de objetos, pero aquí es donde, en términos generales, comenzó el almacenamiento de objetos en la nube. Fue una iniciativa para hacer que el almacenamiento sea más económico al eliminar las tecnologías patentadas y crear una solución de almacenamiento simple y escalable sin las complejidades de las tecnologías heredadas.
Usos del almacenamiento de objetos
En primer lugar, cuando crea una nueva aplicación, debe crearla teniendo en cuenta el almacenamiento de objetos. En lugar de depender de sistemas de archivos y dispositivos de quórum con reconocimiento de clústeres, la aplicación debe manejar la conmutación por error y la consistencia de los datos por sí misma para permanecer disponible en caso de falla del hardware. Alternativamente, muchas aplicaciones estándar ahora tienen modelos de implementación nativos para trabajar con infraestructura nativa de la nube y especialmente con almacenamiento de objetos. Cuando su aplicación termina de procesar o crear un elemento de datos, se puede escribir en un almacén de objetos para su custodia y acceder fácilmente cuando sea necesario.
Incluso podemos usar depósitos de almacenamiento de objetos para generar eventos. Imagine el escenario en el que tiene una aplicación móvil que carga fotos o videos y luego procesa algo antes de publicar. Una vez que se carga una foto o un video en una tienda de artículos, se activa un evento para notificar a su aplicación que se debe procesar un nuevo artículo. Y una vez que se haya procesado ese objeto, la salida podría escribirse en un depósito que desencadenaría otro trabajo para enviarlo a su red de distribución de contenido (CDN).
¿Dónde puedo almacenar objetos?
Hay muchas opciones disponibles, todas las nubes públicas tienen ofertas de almacenamiento de objetos. Los más conocidos incluyen Azure Blob Storage, GCP Cloud Storage y Amazon AWS S3. Cada una de estas ofertas tiene sus propias API, pero la más común es la API de AWS S3.
La API S3 se ha implementado en otras soluciones de almacenamiento como Ceph y parcialmente OpenStack Swift. Sin embargo, la implementación de Swift no es tan completa como la de Ceph y carece de algunas características en torno a la gestión del ciclo de vida de los objetos y las notificaciones.
Por supuesto, los grandes proveedores de almacenamiento como Dell EMC y NetApp también tienen soluciones que están estandarizadas en gran medida para la API S3, pero siguen siendo engorrosas y caras en comparación con las soluciones de código abierto.
¿Es el almacenamiento de objetos privados una solución para usted?
Es posible que la nube pública no siempre sea la opción correcta para todas las cargas de trabajo o para almacenar todos sus datos. A pesar de que la nube pública está lista para usar, lo que la convierte en un excelente lugar para comenzar, puede volverse bastante rentable con el tiempo y a medida que su conjunto de datos crece. Por lo general, los costos de un proveedor de nube incluyen no solo las tarifas por almacenar datos, sino también por recuperarlos. De hecho, algunos proveedores cobran la cantidad de operaciones de API que solicita más el costo de transferencia de red.
Una solución alojada de forma privada puede proporcionar ahorros significativos si tiene requisitos de capacidad predecibles y puede administrar sus propios costos de tránsito, ya sea a una nube pública, a través de productos como Direct Connect o ExpressRoute, o de forma gratuita en su propio DC o Colo.
Un clúster de Ceph que sea compatible tanto con la API de AWS S3 como con la API de OpenStack Swift puede ser una forma económica de proporcionar almacenamiento de objetos a sus aplicaciones al combinar software de código abierto con hardware estándar. Si desea obtener más información sobre esta posibilidad, visite nuestro Ceph aquí o contáctenos!