Perspectiva del marco de trabajo bien diseñado de Azure en Azure Blob Storage

Azure Blob Storage es una solución de almacenamiento de objetos de Microsoft para la nube. Blob Storage está optimizado para almacenar grandes cantidades de datos no estructurados. Los datos no estructurados son datos que no cumplen un modelo de datos o definición concretos, como texto o datos binarios.

En este artículo se supone que, como arquitecto, ha revisado las opciones de almacenamiento y ha elegido Blob Storage como servicio de almacenamiento en el que ejecutar las cargas de trabajo. Las instrucciones de este artículo proporcionan recomendaciones arquitectónicas que se asignan a los principios de los pilares de Azure Well-Architected Framework.

Importante

Cómo usar esta guía

Cada sección tiene una lista de comprobación de diseño que presenta áreas arquitectónicas de interés junto con las estrategias de diseño.

También se incluyen recomendaciones sobre las funcionalidades tecnológicas que pueden ayudar a implementar esas estrategias. Las recomendaciones no representan una lista exhaustiva de todas las configuraciones disponibles para Blob Storage y sus dependencias. En su lugar, enumeran las recomendaciones clave asignadas a las perspectivas de diseño. Use las recomendaciones para compilar la prueba de concepto o optimizar los entornos existentes.

Confiabilidad

El propósito del pilar confiabilidad es proporcionar funcionalidad continua mediante la creación de una resistencia suficiente y la capacidad de recuperarse rápidamente de los errores.

Los principios de diseño de confiabilidad proporcionan una estrategia de diseño de alto nivel aplicada a componentes individuales, flujos del sistema y al sistema en su conjunto.

Diseño de una lista de comprobación

Inicie la estrategia de diseño en función de la lista de comprobación de revisión de diseño para confiabilidad.

  • Uso del análisis del modo de error: minimice los puntos de error teniendo en cuenta las dependencias internas, como la disponibilidad de redes virtuales, Azure Key Vault o Azure Content Delivery Network o los puntos de conexión de Azure Front Door. Los errores pueden producirse si las credenciales requeridas por las cargas de trabajo para acceder a Blob Storage faltan en Key Vault o si las cargas de trabajo usan un punto de conexión basado en una red de entrega de contenido que se ha quitado. En estos casos, es posible que las cargas de trabajo necesiten usar un punto de conexión alternativo para conectarse. Para obtener información general sobre el análisis del modo de error, consulte Recomendaciones para realizar el análisis del modo de error.

  • Definición de objetivos de confiabilidad y recuperación: revise los acuerdos de nivel de servicio (SLA) de Azure. Derive el objetivo de nivel de servicio (SLO) de la cuenta de almacenamiento. Por ejemplo, el SLO podría verse afectado por la configuración de redundancia que eligió. Considere el efecto de una interrupción regional, la posibilidad de pérdida de datos y el tiempo necesario para restaurar el acceso después de una interrupción. Tenga en cuenta también la disponibilidad de las dependencias internas que identificó como parte del análisis del modo de error.

  • Configurar la redundancia de datos: para obtener la máxima durabilidad, elija una configuración que copie los datos entre zonas de disponibilidad o regiones globales. Para obtener la máxima disponibilidad, elija una configuración que permita a los clientes leer datos de la región secundaria durante una interrupción de la región primaria.

  • Aplicaciones de diseño: diseñe aplicaciones para cambiar sin problemas a la lectura de datos de la región secundaria si la región primaria deja de estar disponible por cualquier motivo. Esto solo se aplica a las configuraciones de almacenamiento con redundancia geográfica (GRS) y almacenamiento con redundancia de zona geográfica (GZRS). El diseño de aplicaciones para controlar interrupciones reduce el tiempo de inactividad de los usuarios finales.

  • Explore las características que le ayudarán a cumplir los objetivos de recuperación: haga que los blobs se puedan restaurar para que se puedan recuperar si están dañados, editados o eliminados por error.

  • Crear un plan de recuperación: considere la posibilidad de tener en cuenta las características de protección de datos, las operaciones de copia de seguridad y restauración o los procedimientos de conmutación por error. Prepárese para posibles pérdidas de datos e incoherencias de datos y el tiempo y el costo de la conmutación por error. Para obtener más información, consulte Recomendaciones para diseñar una estrategia de recuperación ante desastres.

  • Supervisión de posibles problemas de disponibilidad: suscríbase al panel de Azure Service Health para supervisar posibles problemas de disponibilidad. Use métricas de almacenamiento en Azure Monitor y registros de diagnóstico para investigar alertas.

Recomendaciones

Recomendación Prestación
Configure la cuenta para la redundancia.

Para obtener la máxima disponibilidad y durabilidad, configure la cuenta mediante el almacenamiento con redundancia de zona (ZRS) o GZRS.
La redundancia protege los datos frente a errores inesperados. Las opciones de configuración de ZRS y GZRS se replican en diferentes zonas de disponibilidad y permiten que las aplicaciones sigan leyendo datos durante una interrupción. Para obtener más información, consulte Durabilidad y disponibilidad por escenario de interrupción y Parámetros de durabilidad y disponibilidad.
Antes de iniciar una conmutación por error o una conmutación por recuperación, evalúe la posibilidad de pérdida de datos comprobando el valor de la propiedad de hora de la última sincronización. Esta recomendación solo se aplica a las configuraciones GRS y GZRS. Esta propiedad le ayuda a calcular la cantidad de datos que podría perder iniciando una conmutación por error de cuenta.

Todos los datos y metadatos escritos antes de la última hora de sincronización están disponibles en la región secundaria, pero los datos y metadatos escritos después de la última hora de sincronización podrían perderse porque no se escriben en la región secundaria.
Como parte de la estrategia de copia de seguridad y recuperación, habilite la eliminación temporal del contenedor, la eliminación temporal de blobs, el control de versiones y las opciones de restauración a un momento dado. La opción de eliminación temporal permite que una cuenta de almacenamiento recupere los contenedores y blobs eliminados.

La opción de control de versiones realiza un seguimiento automático de los cambios realizados en los blobs. Esta opción le permite restaurar un blob a un estado anterior.

La opción de restauración a un momento dado protege contra la eliminación accidental de blobs o daños y permite restaurar datos de blobs en bloques a un estado anterior.

Para obtener más información,consulte Información general sobre la protección de datos.

Seguridad

El propósito del pilar seguridad es proporcionar garantías de confidencialidad, integridad y disponibilidad a la carga de trabajo.

Los principios de diseño de seguridad proporcionan una estrategia de diseño de alto nivel para lograr esos objetivos aplicando enfoques al diseño técnico de la configuración de Blob Storage.

Diseño de una lista de comprobación

Inicie la estrategia de diseño en función de la lista de comprobación de revisión de diseño para seguridad. Identifique vulnerabilidades y controles para mejorar la posición de seguridad. Amplíe la estrategia para incluir más enfoques según sea necesario.

  • Revise la línea de base de seguridad de Azure Storage: para empezar, revise primero la línea de base de seguridad de Storage.

  • Use controles de red para restringir el tráfico de entrada y salida: deshabilite todo el tráfico público a la cuenta de almacenamiento. Use controles de red de cuentas para conceder el nivel mínimo de acceso requerido por los usuarios y las aplicaciones. Para obtener más información, consulte Cómo abordar la seguridad de red para la cuenta de almacenamiento.

  • Reducir la superficie expuesta a ataques: impedir el acceso anónimo, el acceso a claves de cuenta o el acceso a través de conexiones no seguras (HTTP) puede reducir la superficie expuesta a ataques. Requerir que los clientes envíen y reciban datos mediante la versión más reciente del protocolo seguridad de la capa de transporte (TLS).

  • Autorización del acceso sin usar contraseñas o claves: El id. de Microsoft Entra proporciona mayor seguridad y facilidad de uso en comparación con las claves compartidas y las firmas de acceso compartido. Conceda a las entidades de seguridad solo los permisos necesarios para que realicen sus tareas.

  • Proteger la información confidencial: proteja la información confidencial, como las claves de cuenta y los tokens de firma de acceso compartido. Aunque normalmente no se recomiendan estas formas de autorización, debe asegurarse de rotar, expirar y almacenarlas de forma segura.

  • Habilite la opción de transferencia segura necesaria: habilitar esta configuración para todas las cuentas de almacenamiento garantiza que todas las solicitudes realizadas en la cuenta de almacenamiento deben realizarse a través de conexiones seguras. Todas las solicitudes realizadas a través de HTTP conmutan por error.

  • Proteger objetos críticos: aplique directivas de inmutabilidad para proteger los objetos críticos. Las directivas protegen los blobs que se almacenan para fines legales, de cumplimiento u otros fines empresariales de ser modificados o eliminados. Configure las suspensiones para períodos de tiempo establecidos o hasta que un administrador levante las restricciones.

  • Detectar amenazas: habilite Microsoft Defender para Storage para detectar amenazas. Las alertas de seguridad se desencadenan cuando se producen anomalías en una actividad. Las alertas notifican a los administradores de suscripciones por correo electrónico los detalles de la actividad sospechosa y las recomendaciones sobre cómo investigar y corregir amenazas.

Recomendaciones

Recomendación Prestación
Deshabilite el acceso de lectura anónimo a contenedores y blobs. Cuando se permite el acceso anónimo para una cuenta de almacenamiento, un usuario que tenga los permisos adecuados puede modificar la configuración de acceso anónimo de un contenedor para habilitar el acceso anónimo a los datos de ese contenedor.
Aplique un bloqueo de Azure Resource Manager en la cuenta de almacenamiento. Bloquear una cuenta impide que se elimine y que se pierdan datos.
Deshabilite el tráfico a los puntos de conexión públicos de la cuenta de almacenamiento. Cree puntos de conexión privados para los clientes que se ejecutan en Azure. Habilite el punto de conexión público solo si los clientes y servicios externos a Azure requieren acceso directo a la cuenta de almacenamiento. Habilite las reglas de firewall que limiten el acceso a redes virtuales específicas. Comience con cero acceso y, a continuación, autorice incrementalmente los niveles más bajos de acceso necesarios para que los clientes y servicios minimicen el riesgo de crear aperturas innecesarias para los atacantes.
Autorización del acceso mediante el control de acceso basado en rol (RBAC) de Azure. Con RBAC, no hay contraseñas ni claves que se puedan poner en peligro. Microsoft Entra ID autentica la entidad de seguridad (usuario, grupo, identidad administrada o entidad de servicio) para devolver un token de OAuth 2.0. El token se usa para autorizar una solicitud en el servicio Blob Storage.
No permitir la autorización de clave compartida. Esto deshabilita no solo el acceso a la clave de cuenta, sino también los tokens de firma de acceso compartido de cuenta y servicio porque se basan en claves de cuenta. Solo se permiten solicitudes protegidas autorizadas con el identificador de Entra de Microsoft.
Se recomienda no usar una clave de cuenta. Si debe usar claves de cuenta, almacénelas en Key Vault y asegúrese de regenerarlas periódicamente. Key Vault permite recuperar claves en tiempo de ejecución, en lugar de guardarlas mediante la aplicación. Key Vault también facilita la rotación de las claves sin interrupciones en las aplicaciones. La rotación de las claves de cuenta reduce periódicamente el riesgo de exponer los datos a ataques malintencionados.
Se recomienda no usar tokens de firma de acceso compartido. Evalúe si necesita tokens de firma de acceso compartido para proteger el acceso a los recursos de Blob Storage. Si debe crear uno, revise esta lista de procedimientos recomendados de firma de acceso compartido antes de crearlo y distribuirlo. Los procedimientos recomendados pueden ayudarle a evitar que se filtre un token de firma de acceso compartido y se recupere rápidamente si se produce una pérdida.
Configure la cuenta de almacenamiento para que los clientes puedan enviar y recibir datos mediante la versión mínima de TLS 1.2. TLS 1.2 es más seguro y más rápido que TLS 1.0 y 1.1, que no admiten algoritmos criptográficos modernos y conjuntos de cifrado.
Considere la posibilidad de usar su propia clave de cifrado para proteger los datos de la cuenta de almacenamiento. Para más información, consulte Claves administradas por el cliente para el cifrado de Azure Storage. Las claves administradas por el cliente proporcionan mayor flexibilidad y control. Por ejemplo, puede almacenar claves de cifrado en Key Vault y rotarlas automáticamente.

Optimización de costos

La optimización de costos se centra en detectar patrones de gasto, priorizar las inversiones en áreas críticas y optimizar en otros usuarios para satisfacer los requisitos presupuestarios y empresariales de la organización.

Los principios de diseño de optimización de costos proporcionan una estrategia de diseño de alto nivel para lograr esos objetivos y hacer inconvenientes según sea necesario en el diseño técnico relacionado con Blob Storage y su entorno.

Diseño de una lista de comprobación

Inicie la estrategia de diseño en función de la lista de comprobación de revisión de diseño para la optimización de costos para las inversiones. Ajuste el diseño para que la carga de trabajo esté alineada con el presupuesto asignado para la carga de trabajo. El diseño debe usar las funcionalidades adecuadas de Azure, supervisar las inversiones y encontrar oportunidades para optimizar con el tiempo.

  • Identifique los medidores que se usan para calcular la factura: los medidores se usan para realizar un seguimiento de la cantidad de datos almacenados en la cuenta (capacidad de datos) y el número y el tipo de operaciones que se realizan para escribir y leer datos. También hay medidores asociados al uso de características opcionales, como etiquetas de índice de blobs, inventario de blobs, compatibilidad con fuentes de cambios, ámbitos de cifrado y compatibilidad con el Protocolo de transferencia de archivos SSH (SFTP). Para más información, consulte Cómo se le cobra por Blob Storage.

  • Comprender el precio de cada medidor: asegúrese de usar la página de precios adecuada y aplique la configuración adecuada en esa página. Para obtener más información, consulte Búsqueda del precio unitario de cada medidor. Tenga en cuenta el número de operaciones asociadas a cada precio. Por ejemplo, el precio asociado a las operaciones de escritura y lectura se aplica a 10 000 operaciones. Para determinar el precio de una operación individual, divida el precio enumerado en 10 000.

  • Calcular el costo de la capacidad y las operaciones: puede modelar los costos asociados con el almacenamiento de datos, la entrada y la salida mediante la calculadora de precios de Azure. Use campos para comparar el costo asociado a varias regiones, tipos de cuenta, tipos de espacio de nombres y configuraciones de redundancia. En determinados escenarios, puede usar cálculos de ejemplo y hojas de cálculo disponibles en la documentación de Microsoft. Por ejemplo, puede calcular el costo de archivar datos o calcular el costo de usar el comando AzCopy para transferir blobs.

  • Elegir un modelo de facturación para la capacidad: evalúe si el uso de un modelo basado en compromisos es más rentable que usar un modelo basado en el consumo. Si no está seguro de la cantidad de capacidad que necesita, puede empezar con un modelo basado en el consumo, supervisar las métricas de capacidad y, a continuación, evaluarlas más adelante.

  • Elija un tipo de cuenta, un nivel de redundancia y un nivel de acceso predeterminado: debe seleccionar un valor para cada una de estas opciones de configuración al crear una cuenta de almacenamiento. Todos los valores afectan a los cargos de transacción y a los cargos de capacidad. Todas estas opciones de configuración excepto el tipo de cuenta se pueden cambiar después de crear la cuenta.

  • Elija el nivel de acceso predeterminado más rentable: a menos que se especifique un nivel con cada carga de blobs, los blobs deducen su nivel de acceso desde la configuración del nivel de acceso predeterminado. Un cambio en la configuración del nivel de acceso predeterminado de una cuenta de almacenamiento se aplica a todos los blobs de la cuenta para la que no se ha establecido explícitamente un nivel de acceso. Este costo podría ser significativo si ha recopilado un gran número de blobs. Para más información sobre cómo un cambio de nivel afecta a cada blob existente, consulte Cambio del nivel de acceso de un blob.

  • Cargar datos directamente en el nivel de acceso más rentable: por ejemplo, si la configuración predeterminada del nivel de acceso de la cuenta es activa, pero está cargando archivos con fines de archivado, especifique un nivel más esporádico como archivo o un nivel inactivo como parte de la operación de carga. Después de cargar blobs, use directivas de administración del ciclo de vida para mover blobs a los niveles más rentables en función de las métricas de uso, como la hora de acceso por última vez. Elegir el nivel óptimo con antelación puede reducir los costos. Si cambia el nivel de un blob en bloques que ya cargó, paga el costo de escribir en el nivel inicial al cargar el blob por primera vez y, a continuación, paga el costo de escribir en el nivel deseado.

  • Tener un plan para administrar el ciclo de vida de los datos: optimice los costos de transacción y capacidad aprovechando los niveles de acceso y la administración del ciclo de vida. Los datos usados con menos frecuencia deben colocarse en niveles de acceso más esporádicos, mientras que los datos a los que se accede a menudo deben colocarse en niveles de acceso más cálidos.

  • Decida qué características necesita: algunas características, como el control de versiones y la eliminación temporal de blobs, incurren en costos adicionales de transacción y capacidad, así como otros cargos. Asegúrese de revisar las secciones de precios y facturación de los artículos que describen esas funcionalidades al elegir qué funcionalidades agregar a su cuenta.

    Por ejemplo, si habilita la característica de inventario de blobs, se le factura el número de objetos examinados. Si usa etiquetas de índice de blobs, se le factura el número de etiquetas de índice. Si habilita la compatibilidad con SFTP, se le factura un cargo por hora, incluso si no hay transferencias SFTP. Si decide usar una característica, confirme que la característica está deshabilitada porque algunas características se habilitan automáticamente al crear la cuenta.

  • Crear límites de protección: cree presupuestos basados en suscripciones y grupos de recursos. Use directivas de gobernanza para restringir los tipos de recursos, las configuraciones y las ubicaciones. Además, use RBAC para bloquear las acciones que pueden dar lugar a un exceso de gastos pendientes.

  • Supervisar los costos: asegúrese de que los costos permanecen dentro de los presupuestos, comparan los costos con los pronósticos y ven dónde se produce un exceso de tiempo. Puede usar el panel análisis de costos en Azure Portal para supervisar los costos. También puede exportar datos de costo a una cuenta de almacenamiento y analizar esos datos mediante Excel o Power BI.

  • Supervisión del uso: supervise continuamente los patrones de uso y detecte cuentas y contenedores no usados o infrautilizados. Use Información de Storage para identificar cuentas sin uso o con poca utilización. Habilite los informes de inventario de blobs y use herramientas como Azure Databricks o Azure Synapse Analytics y Power BI para analizar los datos de costos. Observe los aumentos inesperados de la capacidad, lo que podría indicar que está recopilando numerosos archivos de registro, versiones de blobs o blobs eliminados temporalmente. Desarrolle una estrategia para expirar o realizar la transición de objetos a niveles de acceso más rentables. Tener un plan para expirar objetos o mover objetos a niveles de acceso más asequibles.

Recomendaciones

Recomendación Prestación
Empaqueta archivos pequeños en archivos más grandes antes de moverlos a niveles más fríos. Puede usar formatos de archivo como TAR o ZIP. Los niveles más fríos tienen mayores costos de transferencia de datos. Al tener menos archivos grandes, puede reducir el número de operaciones necesarias para transferir datos.
Use la rehidratación de prioridad estándar al rehidratar blobs del almacenamiento de archivo. Use la rehidratación de alta prioridad solo para situaciones de restauración de datos de emergencia. Para más información, consulte Rehidratación de un blob archivado en un nivel en línea. La rehidratación de alta prioridad desde el nivel de archivo puede dar lugar a facturas superiores a las normales.
Reduzca el costo de usar los registros de recursos eligiendo la ubicación de almacenamiento de registros adecuada y administrando los períodos de retención de registros. Si solo planea consultar registros ocasionalmente (por ejemplo, consultar registros para la auditoría de cumplimiento), considere la posibilidad de enviar registros de recursos a una cuenta de almacenamiento en lugar de enviarlos a un área de trabajo registros de Azure Monitor. Puede usar una solución de consulta sin servidor, como Azure Synapse Analytics, para analizar los registros. Para obtener más información, consulte Optimización del costo de las consultas poco frecuentes. Use directivas de administración del ciclo de vida para eliminar o archivar registros. El almacenamiento de registros de recursos en una cuenta de almacenamiento para el análisis posterior puede ser una opción más económica. El uso de directivas de administración del ciclo de vida para administrar la retención de registros en una cuenta de almacenamiento evita un gran número de archivos de registros que se crean a lo largo del tiempo, lo que puede provocar cargos de capacidad innecesarios.
Si habilita el control de versiones, use una directiva de administración del ciclo de vida para eliminar automáticamente las versiones de blobs antiguas. Cada operación de escritura en un blob crea una nueva versión. Esto aumenta los costos de capacidad. Para mantener los costos en la comprobación, quite las versiones que ya no necesite.
Si habilita el control de versiones, coloque blobs que se sobrescriben con frecuencia en una cuenta que no tenga habilitado el control de versiones. Cada vez que se sobrescribe un blob, se agrega una nueva versión que conduce a un aumento de los cargos de capacidad de almacenamiento. Para reducir los cargos de capacidad, almacene datos sobrescritos con frecuencia en una cuenta de almacenamiento independiente con control de versiones deshabilitado.
Si habilita la eliminación temporal, coloque blobs que se sobrescriben con frecuencia en una cuenta que no tenga habilitada la eliminación temporal. Establecer períodos de retención. Considere la posibilidad de empezar con un breve período de retención para comprender mejor cómo afecta la característica a la factura. El período de retención mínimo recomendado de las copias de seguridad es siete días. Cada vez que se sobrescribe un blob, se crea una nueva instantánea. La causa del aumento de los cargos de capacidad puede ser difícil de acceder porque la creación de estas instantáneas no aparece en los registros. Para reducir los cargos de capacidad, almacene datos sobrescritos con frecuencia en una cuenta de almacenamiento independiente con eliminación temporal deshabilitada. Un período de retención evita que los blobs eliminados temporalmente se apilan y agreguen al costo de capacidad.
Habilite la compatibilidad con SFTP solo cuando se usa para transferir datos. La habilitación del punto de conexión SFTP tiene un costo por hora. Al deshabilitar cuidadosamente la compatibilidad con SFTP y, a continuación, habilitarla según sea necesario, puede evitar cargos pasivos de la acumulación en su cuenta.
Deshabilite los ámbitos de cifrado que no sean necesarios para evitar cargos innecesarios. Los ámbitos de cifrado incurren en un cargo por mes.

Excelencia operativa

La excelencia operativa se centra principalmente en los procedimientos para las prácticas de desarrollo, la observabilidad y la administración de versiones.

Los principios de diseño de excelencia operativa proporcionan una estrategia de diseño de alto nivel para lograr esos objetivos para los requisitos operativos de la carga de trabajo.

Diseño de una lista de comprobación

Inicie la estrategia de diseño en función de la lista de comprobación de revisión de diseño para la excelencia operativa para definir procesos de observabilidad, pruebas e implementación relacionados con la configuración de Blob Storage.

  • Crear planes de mantenimiento y recuperación de emergencia: considere las características de protección de datos, las operaciones de copia de seguridad y restauración y los procedimientos de conmutación por error. Prepárese para posibles pérdidas de datos e incoherencias de datos y el tiempo y el costo de la conmutación por error.

  • Supervisión del estado de la cuenta de almacenamiento: cree paneles de Información de Storage para supervisar las métricas de disponibilidad, rendimiento y resistencia. Configure alertas para identificar y solucionar problemas en el sistema antes de que los clientes los notifiquen. Use la configuración de diagnóstico para enrutar los registros de recursos a un área de trabajo registros de Azure Monitor. A continuación, puede consultar los registros para investigar las alertas más profundamente.

  • Habilitar informes de inventario de blobs: habilite los informes de inventario de blobs para revisar la retención, la suspensión legal o el estado de cifrado del contenido de la cuenta de almacenamiento. También puede usar informes de inventario de blobs para comprender el tamaño total de los datos, la antigüedad, la distribución de capas u otros atributos de los datos. Use herramientas como Azure Databricks o Azure Synapse Analytics y Power BI para visualizar mejor los datos de inventario y crear informes para las partes interesadas.

  • Configurar directivas que eliminen blobs o muévalas a niveles de acceso rentables: cree una directiva de administración del ciclo de vida con un conjunto inicial de condiciones. La directiva se ejecuta automáticamente para eliminar o establecer el nivel de acceso de los blobs en función de las condiciones que defina. Analice periódicamente el uso de contenedores mediante el uso de métricas de supervisión y informes de inventario de blobs para que pueda refinar las condiciones para optimizar la eficiencia de los costos.

Recomendaciones

Recomendación Prestación
Use la infraestructura como código (IaC) para definir los detalles de las cuentas de almacenamiento en plantillas de Azure Resource Manager (plantillas de ARM), Bicep o Terraform. Puede usar los procesos de DevOps existentes para implementar nuevas cuentas de almacenamiento y usar Azure Policy para aplicar su configuración.
Use Storage Insights para realizar un seguimiento del estado y el rendimiento de las cuentas de almacenamiento. Storage Insights proporciona una vista unificada de los errores, el rendimiento, la disponibilidad y la capacidad de todas las cuentas de almacenamiento. Puede realizar un seguimiento del estado y el funcionamiento de cada una de sus cuentas. Cree fácilmente paneles e informes que las partes interesadas pueden usar para realizar un seguimiento del estado de las cuentas de almacenamiento.

Eficiencia del rendimiento

La eficiencia del rendimiento consiste en mantener la experiencia del usuario incluso cuando hay un aumento de la carga mediante la administración de la capacidad. La estrategia incluye el escalado de recursos, la identificación y la optimización de posibles cuellos de botella y la optimización del rendimiento máximo.

Los principios de diseño de eficiencia del rendimiento proporcionan una estrategia de diseño de alto nivel para lograr esos objetivos de capacidad con respecto al uso esperado.

Diseño de una lista de comprobación

Inicie la estrategia de diseño en función de la lista de comprobación de revisión de diseño para la eficiencia del rendimiento. Defina una línea base basada en indicadores clave de rendimiento para la configuración de Blob Storage.

  • Planear la escala: comprenda los destinos de escalado de las cuentas de almacenamiento.

  • Elija el tipo de cuenta de almacenamiento óptimo: si la carga de trabajo requiere altas tasas de transacción, objetos más pequeños y una latencia de transacción constantemente baja, considere la posibilidad de usar cuentas de almacenamiento de blobs en bloques Premium. Una cuenta estándar de uso general v2 es más adecuada en la mayoría de los casos.

  • Reducir la distancia de desplazamiento entre el cliente y el servidor: coloque los datos en regiones más cercanas a los clientes conectados (idealmente en la misma región). Optimice para clientes en regiones lejos mediante la replicación de objetos o una red de entrega de contenido. Las configuraciones de red predeterminadas proporcionan el mejor rendimiento. Modifique la configuración de red solo para mejorar la seguridad. En general, la configuración de red no reduce la distancia de desplazamiento y no mejora el rendimiento.

  • Elija un esquema de nomenclatura eficaz: reduzca la latencia de las operaciones de enumeración, lista, consulta y lectura mediante prefijos de etiqueta hash más próximos al principio de la clave de partición de blobs (cuenta, contenedor, directorio virtual o nombre de blob). Este esquema beneficia principalmente a las cuentas que tienen un espacio de nombres plano.

  • Optimizar el rendimiento de los clientes de datos: elija una herramienta de transferencia de datos más adecuada para el tamaño de los datos, la frecuencia de transferencia y el ancho de banda de las cargas de trabajo. Algunas herramientas como AzCopy están optimizadas para el rendimiento y requieren poca intervención. Tenga en cuenta los factores que influyen en la latencia y ajuste el rendimiento revisando las instrucciones de optimización del rendimiento publicadas con cada herramienta.

  • Optimizar el rendimiento del código personalizado: considere la posibilidad de usar sdk de almacenamiento en lugar de crear sus propios contenedores para las operaciones REST de blobs. Los SDK de Azure están optimizados para el rendimiento y proporcionan mecanismos para ajustar el rendimiento. Antes de crear una aplicación, revise la lista de comprobación de rendimiento y escalabilidad de Blob Storage. Considere la posibilidad de usar la aceleración de consultas para filtrar los datos no deseados durante la solicitud de almacenamiento y evitar que los clientes transfieran datos de forma innecesaria a través de la red.

  • Recopilar datos de rendimiento: supervise la cuenta de almacenamiento para identificar los cuellos de botella de rendimiento que se producen a partir de la limitación. Para más información, consulte Supervisión del servicio de almacenamiento con Monitor Storage Insights. Use las métricas y los registros. Las métricas proporcionan números como errores de limitación. Los registros describen la actividad. Si ve métricas de limitación, puede usar registros para identificar qué clientes reciben errores de limitación. Para obtener más información, consulte Auditoría de las operaciones del plano de datos.

Recomendaciones

Recomendación Prestación
Aprovisione cuentas de almacenamiento en la misma región donde se colocan los recursos dependientes. En el caso de las aplicaciones que no están hospedadas en Azure, como aplicaciones de dispositivos móviles o servicios empresariales locales, busque la cuenta de almacenamiento en una región más cercana a esos clientes. Para obtener más información, consulte Zonas geográficas de Azure.

Si los clientes de otra región no requieren los mismos datos, cree una cuenta independiente en cada región.

Si los clientes de otra región requieren solo algunos datos, considere la posibilidad de usar una directiva de replicación de objetos para copiar de forma asincrónica los objetos pertinentes en una cuenta de almacenamiento de la otra región.
Reducir la distancia física entre la cuenta de almacenamiento y las máquinas virtuales, los servicios y los clientes locales pueden mejorar el rendimiento y reducir la latencia de red. La reducción de la distancia física también reduce el costo de las aplicaciones hospedadas en Azure porque el uso de ancho de banda dentro de una sola región es gratuito.
Para un amplio consumo por parte de los clientes web (streaming de contenido de vídeo, audio o sitio web estático), considere la posibilidad de usar una red de entrega de contenido a través de Azure Front Door. El contenido se entrega a los clientes más rápido porque usa la red perimetral global de Microsoft con cientos de puntos de presencia globales y locales en todo el mundo.
Agregue una secuencia de caracteres hash (como tres dígitos) lo antes posible en la clave de partición de un blob. La clave de partición es el nombre de cuenta, el nombre del contenedor, el nombre del directorio virtual y el nombre del blob. Si tiene previsto usar marcas de tiempo en nombres, considere la posibilidad de agregar un valor de segundos al principio de esa marca. Para obtener más información, consulte Creación de particiones. El uso de un código hash o un valor de segundos más cercano al principio de una clave de partición reduce el tiempo necesario para enumerar las consultas y leer blobs.
Al cargar blobs o bloques, use un tamaño de blob o bloque mayor que 256 KiB. Los tamaños de blob o bloque superiores a 256 KiB aprovechan las mejoras de rendimiento de la plataforma realizadas específicamente para tamaños de blobs y bloques más grandes.

Directivas de Azure

Azure proporciona un amplio conjunto de directivas integradas relacionadas con Blob Storage y sus dependencias. Algunas de las recomendaciones anteriores se pueden auditar mediante directivas de Azure. Por ejemplo, puede comprobar si:

  • El acceso de lectura público anónimo a contenedores y blobs no está habilitado.
  • La configuración de diagnóstico de Blob Storage se establece para transmitir registros de recursos a un área de trabajo registros de Azure Monitor.
  • Solo se aceptan solicitudes de conexiones seguras (HTTPS).
  • Se habilita una directiva de expiración de firma de acceso compartido.
  • La replicación de objetos entre inquilinos está deshabilitada.
  • La autorización de clave compartida está deshabilitada.
  • Las reglas de firewall de red se aplican a la cuenta.

Para una gobernanza completa, revise las definiciones integradas de Azure Policy para Storage y otras directivas que podrían afectar a la seguridad de la capa de proceso.

Recomendaciones de Azure Advisor

Azure Advisor es un consultor en la nube personalizado que ayuda a seguir los procedimientos recomendados para optimizar las implementaciones de Azure. Estas son algunas recomendaciones que pueden ayudarle a mejorar la confiabilidad, la seguridad, la rentabilidad, el rendimiento y la excelencia operativa de Blob Storage.

Paso siguiente

Para más información sobre Blob Storage, consulte la documentación de Blob Storage.