una studio pricing parece nube gratis excepciones datos data create crear con comporta como algunas .net azure azure-storage

.net - studio - sql azure database se parece y se comporta como una base de datos local con algunas excepciones como



Almacenamiento de Microsoft Azure vs. Azure SQL Database (5)

Vi que había una pregunta similar hace varios meses, pero realmente no resolvió bien mi situación. Aquí va...

Estoy en el proceso de construir desde cero una aplicación .NET basada en la web que tiene el potencial de convertirse en un sitio de gran volumen (varios cientos de miles de visitas a la página al mes para comenzar) y estoy considerando seriamente usar Microsoft Azure para alojarlo . Aún no he construido nada y todavía estoy investigando mis diferentes opciones.

La aplicación en sí misma es, en esencia, una aplicación CRUD estándar que actúa sobre una serie de diferentes tipos de entidades (por ejemplo, usuario, orden, artículo, etc.). Probablemente se estén ejecutando algunos procesos en segundo plano y algunos cola de datos (para actualizaciones que no son en tiempo real, como obtener una insignia SO, por ejemplo), pero la mayoría de las interacciones con el usuario serán las acciones típicas de CRUD.

En cuanto a Azure, he leído una serie de artículos sobre el uso de almacenamiento de Microsoft Azure para almacenar datos transaccionales y estoy considerando hacerlo en lugar de usar SQL DB de Azure. Sin embargo, no he visto ni leído una serie de historias de éxito de personas reales o empresas reales que hacen eso. Así que pensé en contactar a la comunidad de SO para ver si alguien ha tenido alguna experiencia con el uso de Microsoft Azure Storage, qué tipo de suerte has tenido, cualquier problema que debería tener en cuenta y las mejores prácticas que hayas realizado. presentar.

He leído gran parte de la sección Microsoft Azure MSDN y la programación del documento API de Microsoft Azure Table de Microsoft. Estoy buscando consejos prácticos, lecciones aprendidas, mejores prácticas, etc. ¡Gracias de antemano!


Depende del tipo de datos de los que está hablando; en general, existe una tendencia a sobreestimar los requisitos de datos transaccionales. Una gran cantidad de datos realmente pueden encajar en un SQL Azure de 1 GB (somos un proveedor de SAAS y los datos transaccionales de casi 20 clientes pueden caber en ese espacio). Además, por alguna extraña razón, he visto que el consumo de espacio de SQL Azure parece ser algo menor que el tamaño de la base de datos que veo en las instalaciones (puede que tenga que ver con la forma en que manejan los registros, no estoy seguro). Y ahora 50 GB es el límite, lo que es francamente, ENORME.

Sin embargo, para esto, también debe considerar qué aumenta el uso del espacio: almacenar imágenes, videos u otros objetos grandes en la base de datos puede generar un aumento considerable en el consumo de espacio. Es mejor mantener este tipo de objetos en Windows Azure.

Respuesta tan breve: mantenga datos transaccionales en SQL Azure y datos no relacionales en Windows Azure. Trabajar con SQL Azure también mantendrá a los desarrolladores más productivos, ya que es bastante familiar en términos de programación. Trate Windows Azure de forma similar a cómo trataría el almacenamiento local de archivos de Windows con algunos beneficios adicionales (estructuras de tabla básicas compatibles).


El almacenamiento de Windows Azure es como cualquier almacenamiento NoSQL. Funciona en escenarios de alta escala para nosotros (bombea millones de registros por usuario). Sin embargo, el enfoque CRUD clásico es un poco difícil de escalar o adaptarse a esto.

Recomendaría comenzar a buscar el estilo de arquitecturas CQRS . Aquí hay algunas referencias que pueden ayudarlo a comenzar:


Otra cosa a considerar es la cantidad de transacciones que enviará / recibirá de la tienda. Lo bueno de SQL Azure es que es un costo / mes fijo y si está realizando las consultas dentro del mismo centro de datos (es decir, desde una función web de Windows Azure ubicada en el mismo centro de datos que su base de datos SQL Azure), entonces hay sin cargos adicionales

Aunque el costo de las transacciones en las tiendas de Windows Azure es bastante bajo, es algo que tiene el potencial de sumar si haces lo suficiente.


Otro lugar para encontrar información es salir de las opciones de Windows Azure y mirar AWS. Las opciones S3 y SimpleDB han sido examinadas durante un período de tiempo más largo y tienen muchas historias de éxito adicionales disponibles en la web. Sin embargo, S3 y SimpleDB son muy similares en funcionalidad a Windows Azure Storage Table y Blob Storage. Si está pensando en datos verdaderamente grandes, para los cuales son estas estructuras, definitivamente revise las opciones de AWS. Si solo fuera por un punto de referencia sobre soluciones existentes construidas alrededor de big data.

En cuanto a SQL Azure, es ideal para muchas transacciones, manteniendo bajos los costos de transacción y manteniendo relaciones e integridad general basadas en datos relacionales. Sin embargo, si va a tener volúmenes masivos de datos, simplemente siga adelante y apunte a las estructuras de big data, como Windows Azure Table o SimpleDB de Amazon.


También debe verificar su patrón de uso de datos antes de decidir utilizar Azure Storage o SQL storage. Dado que Azure Storage proporciona soluciones NoSQL, están más orientadas a los requisitos básicos que no informan. Aquí, informar no significa informes, pero implica que las capacidades de consulta del almacenamiento de Azure son limitadas y no optimizadas para varios escenarios de consulta. Con la arquitectura CQRS, las operaciones CRUD e Informes están desacopladas y, por lo tanto, se puede realizar una combinación mixta de Azure Storage y Azure SQL.