sql - Azure SQL 数据库与 Azure 移动服务

标签 sql azure azure-sql-database azure-mobile-services

我正在尝试将我的 Android 应用程序移植到基于云的应用程序中。我想要将数据存储在云中的地方。我是一名 .NET 人员,所以正在研究 Azure。我看到 Azure 移动服务允许我创建表并能够进行身份验证。我还研究了 Azure SQL 数据库。

我想知道这两种服务之间有什么区别,以及使用移动服务比使用 Azure SQL 数据库在哪些场景中更有值(value)

enter image description here

最佳答案

实际上,您在 Azure 移动服务中看到的表实际上是 Azure SQL 数据库实例中的表。移动服务在 SQL Server 中的表之上提供了一个抽象层。如果您使用当前的 JavaScript 后端移动服务,您将在管理门户中看到该表,它使用 JavaScript 的动态特性来提供类似于 NoSQL 的 Azure SQL DB 体验,您可以发送它无法识别的对象和属性将被添加到表架构中(在交付到生产环境时将其关闭:))。需要记住的重要一点是,数据库的本质是 Azure SQL DB,因此您应该可以通过 Azure 移动服务创建的数据库进行访问并执行任何操作,就像使用原始 Azure SQL DB 一样。

通过使用 Azure 移动服务,您可以获得一个 API 托管层,您可以使用它直接访问表(基于您暗示的权限),还可以使用自定义 API 功能来直接访问任何内容。

如果您选择绕过 Azure 移动服务,出于各种原因(安全性、数据位置的抽象等),您可能希望在 Android 应用程序和数据之间有一些 API 层。在这种情况下,您必须在某处编写并托管该 API 层。 Azure 中的其他选项包括 Azure 网站中的 Web API 站点、Azure 云服务中托管的 API 或一直到 Azure VM;然而,当你的规模上升时,你就会承担越来越多的责任和工作。

通过 Azure SQL DB 使用 Azure 移动服务的场景几乎就是您所拥有的场景。您不必维护自己的托管 API 层,只需维护 API 层执行的代码即可。您可以扩展必要的功能(实际上是非常大的规模),并且还可以获得推送通知和 Web 作业等功能(尽管如果您愿意,您也可以通过 Azure 中的其他服务执行这些操作)。将 Azure 移动服务视为对移动开发人员有帮助的更高级别的 Azure 服务分组。

关于sql - Azure SQL 数据库与 Azure 移动服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23226070/

相关文章:

mysql - 我无法弄清楚该SQL查询中的错误在哪里

azure - 从 Azure Active Directory 进行身份验证时获取用户信息

javascript - 在 App Insights 中收集 JavaScript 控制台消息

Azure函数执行存储过程速度缓慢

sql - 更新数据库中的sql位字段

mysql - 在mysql中使用group by选择最小值

sql - 在自引用表上编写递归 SQL 查询

python - 如何使用azureml中上传到pandas的数据集进行分析?

仅在某些实例上出现 Azure WebJob DB 连接错误

azure - SQL Azure 数据同步与标准异地复制