【问题标题】:Save base64 image to Mobile Services SQL or Blob Storage?将 base64 图像保存到移动服务 SQL 或 Blob 存储?
【发布时间】:2016-08-22 10:11:00
【问题描述】:

这就是交易,我有一个 Ionic 应用程序,我正在使用带有 JavaScript 后端的 Azure 移动服务,我需要将图像保存到云中。 我有一个 SQL 数据库(在我创建移动服务时自动创建),其中只有一个表,该表将获取有关地点的一些用户信息,其中一个信息是图片。 我使用 Cordova 相机返回给我一个 base64 字符串以在应用程序上使用,但是当我保存它时,它在我的数据库中显示为空(因此它不保存图像)。

在互联网上,我看到人们谈论使用 blob 存储、在没有移动服务的情况下使用 blob 存储、将图像直接保存在 SQL 表上等等。

我想知道我应该做什么以及应该如何开始,因为我真的很困惑,每个教程彼此之间都有一点不同。我的应用只是为了演示,所以它不会一直有很多图像进出。

如果需要我的应用程序的某些代码,请提出,我会编辑我的问题。

谢谢。

【问题讨论】:

  • 使用 LONG TEXT 将 base64 字符串存储在 SQLite 数据库中,因为 base64 字符串很大。所以尝试这种方式。

标签: android azure ionic-framework azure-sql-database azure-mobile-services


【解决方案1】:

如果它只是一个演示应用程序,请尽可能简单。我不熟悉移动开发,但可能会将图像 base64 字符串放入数据库,然后在您的移动设备上检索和渲染,这可能是最简单的实现方式。

但如果是生产,我建议使用 blob,它比数据库(特别是 SQL 数据库)提供更多的好处。

  1. 博客存储比 SQL 数据库便宜得多。

  2. 支持 CDN。

  3. SQL Server 数据类型长度限制。如果您只是保存用户的头像,这可能不是问题。

  4. 更多带宽。检索图像和文件时不会使用 SQL 带宽。

  5. Blob 支持自动缩放,可以按容器横向扩展,按请求频率向上扩展。

希望这会有所帮助,

【讨论】:

  • 再补充一点,使用blob存储,对blob数据来说速度更快,成本更低。 SQL Azure 是为结构化数据而构建的,图像 blob 往往会使其陷入困境。
猜你喜欢
  • 1970-01-01
  • 2017-01-27
  • 1970-01-01
  • 2016-09-18
  • 2017-07-11
  • 1970-01-01
  • 2018-09-25
  • 2017-03-19
  • 1970-01-01
相关资源
最近更新 更多