tutorial framework examples delete mongodb azure azure-storage azure-table-storage nosql

framework - Azure Table Vs MongoDB en Azure



entity framework core azure table storage (7)

En Build 2016 se anunció que DocumentDB admitiría todos los controladores de MongoDB. Esto soluciona parte de la falta de problemas de herramientas con DocDB y también facilita la migración de las aplicaciones de Mongo.

Quiero usar una base de datos NoSQL en Windows Azure y el volumen de datos será muy grande. Si un almacenamiento Azure Table o una base de datos MongoDB ejecutándose con un rol Worker puede ofrecer un mejor rendimiento y escalabilidad? ¿Alguien ha usado MongoDB en Azure usando un rol de Trabajador? Comparta sus ideas sobre el uso de MongoDB en Azure en el almacenamiento de tablas de Azure.


He usado ambos.

Azure Tables: simple, rápido, muy difícil de escribir, incluso simples consultas.

Mongo: funciona bien, muchas funciones de consulta, requiere varias instancias para ser confiable.

En pocas palabras, si sus consultas son realmente simples (clave-> valor), debe ejecutar una comparación de costos (principalmente el número de transacciones con respecto al costo de almacenamiento de Mongo en Azure). Prefiero ir a la mesa de almacenamiento para ese. Si necesita consultas más elaboradas y no quiere ir a SQL Azure, es probable que Mongo sea su mejor opción.


Las respuestas anteriores son buenas, pero la respuesta real depende de cuáles sean sus requisitos. Debe comprender qué tamaño de datos está procesando, qué tipos de operaciones desea realizar sobre los datos y luego seleccionar la solución que satisfaga sus necesidades.


Me doy cuenta de que esta pregunta tiene fecha. Me gustaría agregar la siguiente información para quienes puedan encontrar esta pregunta en sus búsquedas.

Tenga en cuenta que ahora, MongoDB se ofrece como un servicio completamente administrado en Azure. (oficialmente en Beta a partir de Abr ''15)

Ver: http://www.mongodb.com/partners/cloud/microsoft o https://azure.microsoft.com/en-us/blog/announcing-new-mongodb-instances-on-microsoft-azure/

Ver (incluido el precio): https://azure.microsoft.com/en-us/marketplace/partners/mongolab/mongolab/


Mi primera opción es AzureTables porque el modelo SAAS y bajo costo y SLA 99.99%
http://alexandrebrisebois.wordpress.com/2013/07/09/what-if-20000-windows-azure-storage-transactions-per-second-isnt-enough/


algunos límites .. http://msdn.microsoft.com/en-us/library/windowsazure/jj553018.aspx


http://www.windowsazure.com/en-us/pricing/calculator/?scenario=data-management

o AzureSQL para pequeñas empresas

DocumentDB http://azure.microsoft.com/en-us/documentation/services/documentdb/ http://azure.microsoft.com/en-us/documentation/articles/documentdb-limits/


La segunda opción es que muchos proveedores de servicios en la nube, incluida Amazon, ofrecen S3.

o tablas de Google https://developers.google.com/bigquery/pricing


nTH elección administrar el SHOW por mi cuenta no tengo sueño MongoDB, así que voy a mirar de nuevo los dos primeros SAAS


Mi elección si estoy ejecutando "CLOUD" Iré por el modelo SAAS tanto como sea posible "RENT-IT" ...

La pregunta es qué necesita mi aplicación es AzureTables o DocumentDB o AzureSQL
Documentación de DocumentDB http://azure.microsoft.com/en-us/documentation/services/documentdb/

Cómo funciona el precio de Azure http://azure.microsoft.com/en-us/pricing/details/documentdb/

esto es divertido http://www.documentdb.com/sql/demo


Table Storage es una característica central de almacenamiento de Windows Azure, diseñada para ser escalable ( 100TB 200TB 500TB por cuenta), duradera (triplemente replicada en el centro de datos, opcionalmente georeplicada a otro centro de datos) y sin esquema (cada fila puede contener cualquier propiedad que querer). Una fila se encuentra mediante la tecla de partición + clave de fila, proporcionando una búsqueda muy rápida. Todo el acceso a Table Storage se realiza a través de una API REST bien definida que se puede utilizar a través de cualquier idioma (con SDK, construido sobre las API REST, ya implementadas para .NET, PHP, Java, Python y Ruby).

MongoDB es una base de datos orientada a documentos. Para ejecutarlo en Azure, debe instalar MongoDB en roles web / worker o Virtual Machine, apuntarlo a una unidad en la nube (proporcionando así una letra de unidad) o un disco adjunto (para máquinas virtuales Windows / Linux), opcionalmente activar el diario (que recomiendo) y, opcionalmente, defina un punto final externo para su uso (o acceda a él a través de una red virtual). La unidad Cloud Drive / disco adjunto, por cierto, en realidad se almacena en una burbuja azul, que le da la misma durabilidad y georeplicación que Azure Tables.

Al comparar los dos, recuerde que Table Storage es Storage-as-a-Service: simplemente tiene acceso a un punto final REST bien conocido. Con MongoDB, usted es responsable de mantener la base de datos (por ejemplo, cuando MongoDB Inc (anteriormente 10gen) lanza una nueva versión de MongoDB, deberá actualizar su servidor según corresponda).

Con respecto a la versión alfa de MongoDB Inc apuntada por jtoberon: si le das un vistazo, verás algunas cosas clave:

  • La configuración es para una instancia Standalone mongodb, sin réplicas de conjuntos o fragmentos. En cuanto a los conjuntos de réplicas, aún obtiene muchos beneficios al utilizar la versión Independiente, debido a la forma en que funciona el almacenamiento Blob.
  • Para proporcionar alta disponibilidad, puede ejecutar con múltiples instancias. En este caso, solo una instancia sirve a la base de datos, y una es una ''espera activa'' que inicia el proceso mongod tan pronto como falla la otra instancia (para reinicio de mantenimiento, falla de hardware, etc.).

Mientras que el envoltorio de Windows Azure de 10gen aún se considera ''alpha'', mongod.exe no lo es. Puede ejecutar el exe mongod tal como lo haría con cualquier otro exe de Windows. Es solo el código de administración alrededor del lanzamiento, y eso es lo que la implementación de alpa está demostrando.

EDITAR 2011-12-8: Esto ya no está en un estado alfa. here puede descargar el último proyecto de MongoDB + Windows Azure, que proporciona soporte para conjuntos de réplicas.

Para el rendimiento, creo que necesitarás hacer una evaluación comparativa. Habiendo dicho eso, considere lo siguiente:

  • Al acceder a Table Storage o MongoDB desde, por ejemplo, un rol web, todavía está llegando al sistema de almacenamiento de Windows Azure.
  • MongoDB usa mucha memoria para su propio caché. Por este motivo, muchos sistemas MongoDB de gran escala se implementan en tamaños de instancia más grandes. Para el acceso de Almacenamiento de tabla, no tendrá la misma consideración de tamaño de memoria.

EDITAR 7 de abril de 2015 Si desea utilizar una base de datos basada en documentos como servicio, Azure ahora ofrece DocumentDB.