porta c# azure sql-server-2012 azure-storage-blobs

c# - porta - Cómo almacenar archivos en Azure



azure storage portal (2)

Uso el siguiente enfoque para sistemas múltiples.

  • Azure Storage para archivos. Puede crear varios contenedores y niveles de acceso si almacena información patentada.
  • Azure CDN para brindar contenido estático desde Azure Storage
  • Azure DB como motor de base de datos

En Azure DB, almaceno la ruta del archivo, con un procesamiento adicional en mis aplicaciones para saber cómo acceder al archivo y crear la URL final para servir el archivo. Esto se debe a que CDN no cuenta con soporte SSL en dominios personalizados.

Si necesita ejemplos o más información, házmelo saber. Estoy sentado en un aeropuerto, por lo que proporciono una respuesta un poco menos detallada.

Necesitamos almacenar ~ 50k archivos cada año. Cada archivo es 0.1-5mb que se traduce en un rango de 5gb - 250gb. Los archivos son: jpg, avi, pdf, docx, etc.

Solíamos almacenar archivos BLOB en el servidor sql, pero supongo que no es la mejor idea en este escenario porque la base de datos será enorme en 2 años.

¿Cuál sería la mejor manera de almacenar esos datos?

Veo muchas opciones diferentes allí y no puedo encontrar dónde comenzar: almacenamiento de Azure, SQL de Azure, etc. También hay algunas versiones híbridas en las nuevas versiones de SQL Server.


Como @Martin mencionó en su respuesta, Azure Storage es viable, específicamente porque:

  • El acceso es independiente de cualquier VM, servicio, base de datos, etc.
  • El almacenamiento es duradero , triplemente replicado dentro de una región, y opcionalmente geo-replicado
  • Los blobs individuales pueden tener hasta 200 GB, con una escala de almacenamiento de 500TB

Azure también proporciona File Service, que es esencialmente un recurso compartido de SMB que se encuentra en la parte superior de blobs.

Si bien hay servicios de bases de datos en Azure (SQL Database Service y DocumentDB), descubrirá que estos no están realmente optimizados para el almacenamiento de datos binarios grandes; están más optimizados para los metadatos. Ciertamente puede almacenar datos binarios en cada uno de ellos, pero deberá preocuparse por los límites de almacenamiento.

También puede activar su propia solución de base de datos a través de máquinas virtuales, junto con los discos conectados (de nuevo, respaldados por almacenamiento blob duradero). Las máquinas virtuales admiten hasta 32 discos de 1TB conectados a una máquina virtual determinada, ya sean blobs normales o blobs "premium" basados ​​en SSD (cada disco premium admite hasta 5000 IOPS). La solución de base de datos que elija depende completamente de usted; no hay una "mejor" solución.