Tal y como te contaba en el artículo anterior, existen grandes dudas a la hora de plantear qué almacenamiento debemos utilizar según lo que queramos almacenar y según nuestros requisitos de seguridad y acceso. Esta semana, vamos a ver esta casuística desde la perspectiva de los objetos a almacenar.
4 tipos de Almacenamiento en Azure
Dentro de una misma cuenta de Almacenamiento, podemos disponer de diferentes tipos:
1. Blobs
Un blob puede ser un tipo cualquiera de datos binarios o texto, como un documento, un archivo multimedia o un instalador de aplicación. El Almacenamiento de blobs a veces se conoce como almacenamiento de objetos. Existen tres tipos:
- blobs en bloques. Optimizados para el streaming y para el almacenamiento de objetos en la nube, y constituyen una opción idónea para almacenar documentos, archivos multimedia y copias de seguridad.
- blobs en anexos. Similares a los blobs en bloques, pero están optimizados para anexar las operaciones. Un blob de anexos puede actualizarse solo al agregar un nuevo bloque al final. Los blob en anexos son una buena opción para escenarios como el registro, donde es necesario escribir solo al final del blob nuevos datos.
- blobs en páginas (discos): optimizados para representar discos IaaS y admitir la escritura aleatoria. Pueden tener un tamaño máximo de 1 TB. Un disco IaaS asociado a una red de máquinas virtuales de Azure es un VHD almacenado como blob en páginas.
2. Tablas
Almacena conjuntos de datos estructurados. Se trata de un almacén de datos de clave-atributo NoSQL, que permite el desarrollo rápido de grandes cantidades de datos y el acceso inmediato a los mismos. Este tipo de almacenamiento se basa en un almacén de clave-atributo, lo que significa que cada valor de una tabla se almacena con un nombre de propiedad tipado. El nombre de propiedad se puede usar para filtrar y especificar criterios de selección. Una colección de propiedades y sus valores, componen una entidad. Puesto que este tipo de almacenamiento no tiene esquema, dos entidades de una misma tabla pueden contener distintas colecciones de propiedades y dichas propiedades pueden ser de distintos tipos. Es accesible a través de REST, pero también a través de un subconjunto de oData, y los formatos JSON y AtomPub (ambos basados en XML)
3. Colas
Ofrece una solución de mensajería confiable para el procesamiento de flujos de trabajo y para la comunicación entre los componentes de los servicios en la nube. Además, este tipo de almacenamiento admite la administración de tareas asincrónicas y la creación de flujos de trabajo de procesos.
Una cuenta de almacenamiento puede contener un número cualquiera de colas y, a su vez, una cola puede contener un número cualquiera de mensajes, hasta alcanzar el límite de capacidad de este tipo de cuenta. Los mensajes individuales pueden tener un tamaño máximo de 64 KB.
4. Archivos
Ofrece almacenamiento compartido para aplicaciones heredadas que usan el protocolo SMB estándar. Las máquinas virtuales y los servicios en la nube de Azure pueden compartir datos de archivos entre componentes de aplicaciones a través de recursos compartidos montados, y las aplicaciones locales pueden tener acceso a datos de archivos de un recurso compartido a través de la API REST del servicio Archivo. Con Almacenamiento de archivos de Azure, las aplicaciones se ejecutan en máquinas virtuales de Azure o en servicios en la nube pueden montar un recurso compartido de archivos en la nube, igual que una aplicación de escritorio monta un recurso compartido SMB típico. Cualquier número de componentes de aplicación puede montar y acceder simultáneamente al recurso compartido de Almacenamiento de archivos. Puesto que un recurso compartido de Almacenamiento de archivos es un recurso compartido de archivos SMB estándar, las aplicaciones que se ejecutan en Azure (no así las locales) pueden obtener acceso a los datos del recurso compartido a través de API de E/S del sistema de archivos.
Cada cuenta de almacenamiento estándar puede contener hasta 500 TB de datos de blobs, colas, tablas y archivos combinados
Calculando mi coste
Existen varios puntos a tener en cuenta cuando calculamos un coste de almacenamiento:
- Los discos de máquinas en IaaS siempre irán sobre blobs en páginas, siendo un error muy común pensar que se almacenarán en blobs en bloque.
- El coste real tarificado será en función del espacio ocupado, por lo que aunque se monte un A3, que de forma estándar tiene provisionado un disco de 285 Gb, si solo se tienen ocupados 100 Gb se tarificarán solo estos.
- Esto no es así en caso de cuentas de almacenamiento Premium. Para estas cuentas, al ser unidades de tamaño prefijado (SSDs) de tipo P10, P20, P30 (128, 512 y 1024 Gb respectivamente), se paga por la unidad contratada de forma mensual, sin tomar en cuenta la ocupación real.
- No todas las opciones de distribución geográfica están disponibles para todos los tipos de almacenamiento.
Por tanto…
Espero que este artículo te haya servido para aclararte en el galimatías de siglas relativas al almacenamiento en Azure, y como siempre, si necesitas ayuda acerca del almacenamiento que necesitas según tus objetivos, ¡no dejes de contactarnos! 😉