Luiz - Fotolia
Comprendiendo el almacenamiento de objetos vs el almacenamiento de bloques para la nube
El uso del almacenamiento en bloque en la nube es cada vez más común. Vea en qué se diferencian el almacenamiento de bloques y el de objetos, y cuándo utilizar uno u otro cuando se trata de almacenamiento en la nube.
Los servicios de almacenamiento en la nube se han disparado en la última década, en gran parte debido a la proliferación de repositorios de bajo costo basados en objetos, que han demostrado ser ideales para muchas de las cargas de trabajo de hiperescala actuales. El almacenamiento en bloque, por el contrario, ha permanecido principalmente en las instalaciones, dando soporte a las cargas de trabajo de misión crítica y de uso intensivo de datos. Pero esto parece estar cambiando. Según dos estudios recientes del Grupo Taneja, las organizaciones están recurriendo cada vez más a la nube para el almacenamiento en bloque, ya que buscan formas más eficientes y flexibles de soportar sus cargas de trabajo.
Para muchos responsables de la toma de decisiones, la diferencia entre el almacenamiento de objetos en la nube y el almacenamiento en bloque y cuándo utilizar uno u otro no siempre está clara. Solo si comprende ambos enfoques podrá planificar una estrategia eficaz para adoptar el almacenamiento en la nube en su organización.
Conceptos básicos del almacenamiento en bloques
El almacenamiento en bloques es uno de los tipos de almacenamiento más antiguos y más utilizados, y sigue siendo compatible con muchas de las aplicaciones actuales. Aunque tradicionalmente se ha asociado a las SAN locales, el almacenamiento en bloque forma parte del paisaje de la nube, con más proveedores que nunca ofreciendo servicios basados en bloques.
En el modelo de almacenamiento por bloques, los datos se guardan en el soporte de almacenamiento en trozos de tamaño fijo, o bloques, de volúmenes de almacenamiento en bruto. Cada bloque se asocia a una dirección que lo identifica de forma exclusiva. Esta dirección constituye el único metadato asignado al bloque, y algunos expertos del sector ni siquiera consideran que estas direcciones sean metadatos.
Debido a la falta de metadatos, los bloques son delgados y eficientes, sin mucha sobrecarga que los lastre. Para gestionar el almacenamiento en bloques, un programa de software independiente del soporte de almacenamiento controla cómo se colocan y organizan los bloques en las unidades de almacenamiento. El software también se encarga de la recuperación de los datos, utilizando las direcciones para localizar los bloques y luego organizando los datos en archivos completos.
El almacenamiento en bloques ha sido durante mucho tiempo la solución preferida para el almacenamiento empresarial porque es rápido, eficiente y flexible, con una E/S de baja latencia y alta fiabilidad. Los dispositivos de almacenamiento en bloques pueden separarse y trasladarse fácilmente, y la tecnología que los sustenta es bien conocida y está muy implementada, lo que facilita la integración del almacenamiento en bloques en una variedad de flujos de trabajo de aplicaciones.
Dicho esto, al considerar la elección de almacenamiento de objetos frente a la de almacenamiento en bloques, es importante tener en cuenta los retos que presenta el almacenamiento en bloques. Entre ellos, la escalabilidad limitada y el aumento de la latencia, que puede producirse cuando la aplicación de control no está cerca de los dispositivos de almacenamiento. La falta de metadatos puede ser una desventaja, ya que hace que la aplicación de control tenga que adjuntar información adicional a cada bloque si es necesario. Además, el almacenamiento en bloques puede resultar caro y complejo de mantener y optimizar.
A pesar de estos retos, el almacenamiento de bloques es muy adecuado para varios casos de uso empresarial. Es ideal para aplicaciones de alto rendimiento y de misión crítica que requieren un rendimiento de E/S constante y una baja latencia, como los sistemas de bases de datos relacionales, las infraestructuras de escritorios virtuales y los servidores de correo electrónico. También se adapta bien a las matrices RAID y puede soportar el arranque del sistema desde el almacenamiento en red.
Dado que el almacenamiento en bloques desempeña un papel tan importante en tantas aplicaciones empresariales, no es de extrañar que los proveedores de la nube ofrezcan ahora servicios de almacenamiento en bloque, como AWS Elastic Block Storage, Google Cloud Persistent Disks y Rackspace Cloud Block Storage.
Conceptos básicos del almacenamiento de objetos
El almacenamiento de objetos es relativamente nuevo en comparación con el almacenamiento en bloques. Se desarrolló para hacer frente a los crecientes almacenes de datos no estructurados, como páginas web, fotos, videos, archivos de registro y datos de IoT.
Con el almacenamiento de objetos, los datos y sus metadatos se empaquetan en unidades discretas, u objetos, que se almacenan en un entorno de datos estructuralmente plano, que puede abarcar múltiples sistemas de red y fronteras geográficas. Para acceder a los datos, las aplicaciones solo tienen que utilizar las llamadas comunes de la API RESTful basadas en HTTP, como PUT, GET o POST, lo que simplifica el proceso de acceso y gestión de datos.
Los metadatos asociados a cada objeto incluyen un identificador único, y pueden incluir información personalizable que proporciona más contexto a los datos subyacentes. Por ejemplo, los metadatos pueden incluir detalles sobre la aplicación correspondiente, el nivel de protección de datos que se debe asignar al objeto u otra información que respalde las políticas de retención, enrutamiento y eliminación de datos. Unos metadatos eficaces también pueden ser fundamentales para realizar análisis avanzados.
La estructura plana del modelo de objetos y los metadatos personalizables simplifican el proceso de escalado de los repositorios de datos. Cuando necesite más almacenamiento, solo tendrá que desplegar nodos adicionales, incluso a través de las fronteras geográficas. Además, los metadatos personalizables facilitan la organización, la búsqueda y la recuperación de datos en distintas ubicaciones. Los servicios de almacenamiento de objetos tienden a ser menos costosos que otros servicios de almacenamiento porque el almacenamiento puede ejecutarse en hardware básico, es más fácil de gestionar y, en muchos casos, no se accede con tanta frecuencia.
Pero el almacenamiento de objetos tiene sus propios retos, sobre todo en cuanto a rendimiento. Los metadatos pueden suponer una sobrecarga, y las modificaciones de los datos pueden ser engorrosas. Incluso las operaciones de lectura pueden ser lentas debido a las latencias inherentes. Además, una organización que se pase al almacenamiento de objetos puede tener que actualizar sus aplicaciones para adaptarse a las llamadas HTTP.
Sin embargo, incluso con estos desafíos, el almacenamiento de objetos es una ventaja en muchos casos de uso. Por ejemplo, es adecuado para almacenar grandes volúmenes de datos no estructurados que se actualizan con poca frecuencia. El almacenamiento de objetos también es adecuado para realizar copias de seguridad o archivar datos, así como para realizar análisis a gran escala que puedan aprovechar los ricos metadatos. Además, muchas organizaciones utilizan el almacenamiento de objetos para aplicaciones y servicios web, que son naturalmente adecuados para utilizar las llamadas HTTP para acceder a los objetos almacenados.
Muchos proveedores de la nube ofrecen ahora servicios de almacenamiento de objetos, incluidos los que también proporcionan servicios en bloque. Amazon, Rackspace y Google ofrecen tanto servicios de almacenamiento de objetos como de almacenamiento en bloque en la nube.
Cómo elegir entre el almacenamiento de objetos y el almacenamiento en bloque
Tanto el almacenamiento en bloques como el de objetos tienen sus ventajas y desventajas, y la mayoría de los casos de uso caen en uno u otro campo. Es probable que no utilice el almacenamiento de objetos para respaldar sus bases de datos relacionales, pero sí para sus aplicaciones web globales o proyectos de análisis de grandes datos. Afortunadamente, la decisión entre el almacenamiento de objetos y el almacenamiento en bloques es cada vez más fácil, ya que los proveedores de la nube ofrecen ahora múltiples opciones para el almacenamiento de datos. Estas opciones facilitan el traslado de las cargas de trabajo empresariales a la nube, sin comprometer el rendimiento de las aplicaciones de misión crítica.