开发者社区 问答 正文

使用RBS将文档从SQL Server上传/下载到Azure Blob存储

我有一个大型SQL Server数据库,其中的文档以二进制格式存储。我打算将文档移动到Azure Blob存储。是否可以使用Microsoft远程BLOB存储(RBS)从SQL Server(SQL代码)将文档上传/下载到Azure Blob存储。是否有任何第三方RBS API可用?

展开
收起
心有灵_夕 2019-12-06 19:25:43 636 分享 版权
阿里云 AI 助理回答

Microsoft Remote BLOB Storage (RBS) 是一种技术,允许将大型二进制对象(BLOBs)从SQL Server数据库中移出,存储在更经济高效的存储解决方案中,比如文件服务器或云存储服务。然而,RBS本身并不直接支持Azure Blob Storage作为存储目标。RBS主要设计用于与本地存储解决方案集成。

对于将SQL Server中的二进制数据迁移到Azure Blob Storage,虽然没有官方的RBS实现直接支持Azure,但你可以通过以下几种方式来实现这一需求:

  1. 自定义开发:编写自定义的T-SQL脚本或者使用.NET、Python等编程语言开发应用程序,遍历数据库中的二进制数据,然后使用Azure Storage SDK将这些数据上传到Azure Blob Storage。同时,你可以在数据库中保留Blob的URL或其他标识信息以便后续访问。

  2. 使用第三方工具:市场上有一些第三方工具和库能够帮助迁移数据到Azure Blob Storage,例如SQL Server Integration Services (SSIS) 结合Azure Feature Pack,或者一些专门针对数据库到云存储迁移的商业软件。这些工具通常提供图形界面或模板,简化迁移过程。

  3. Azure Data Factory:Azure Data Factory是一个云数据集成服务,可以用来安排和自动化数据的移动和转换。虽然它主要用于数据仓库场景,但也可以灵活配置以处理将SQL Server中的BLOB数据迁移到Azure Blob Storage的任务。

  4. SQL Server Stretch Database:虽然Stretch Database主要是为了将历史数据透明地迁移到Azure SQL Database,但它不适用于直接存储BLOB到Azure Blob Storage。不过,了解这个选项可以帮助评估是否可以通过其他方式间接达到目的。

综上所述,虽然直接使用RBS将SQL Server文档迁移到Azure Blob Storage不可行,但通过上述方法之一,你可以有效地完成这项任务。建议根据你的具体需求、技术能力以及预算选择最合适的方法。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答